登陆注册
8925700000034

第34章 物流信息系统的实施(3)

3.人工测试

人工测试又称代码复审,主要有代码复查、代码走查和代码会审三种方法。

代码复查是指源程序编写完毕后,直接由程序员自己进行检查。由于程序员心理上对自己编写的程序有偏爱,所以一些习惯性的错误自己不易发现。此外,对功能理解的错误也不易发现,所以,代码复查是针对小规模程序常用的方法,效率不是很高。此外,代码复查也是源程序进行测试的第一步。

代码走查一般由三至五人组成测试小组,在预先阅读过该软件资料和源程序的前提下,由测试人员扮演计算机的角色,用人工方法将测试数据输入被测程序,并在纸上跟踪监视程序的执行情况,让人代替机器沿着程序的逻辑走一遍,发现程序中的错误。测试小组成员应是从未介入过该系统设计实施的有经验的程序设计人员。由于人工运行速度很慢,因此代码走查只能使用少量简单的测试用例。

代码会审的人员构成和代码走查类似。在会审时,要求程序作者逐个阅读和讲解程序,测试人员逐个审查、提问、讨论可能产生的错误。代码会审要对程序的功能、结构和风格等进行审定。

6.4.4 系统测试用例设计

1.测试用例在物流信息系统测试中的作用

测试用例被看做是有效发现软件缺陷的最小测试执行单元,也被视为软件的测试规格说明书。在测试工作中,测试用例的设计是非常重要的,是测试执行的正确性、有效性的基础。如何有效地设计测试用例,一直是测试人员所关注的问题;设计好测试用例,也是保证测试工作的最关键的因素之一。

物流信息系统测试工作中处于重中之重的测试用例不但构成了设计和制定测试过程的基础,而且测试的深度与测试用例的数量成正比。一般来讲,判断测试是否完全的一个主要方法是基于需求的覆盖,而这又是以确定、实施和(或)执行的测试用例的数量为依据的;测试工作量与测试用例的数量成比例;测试设计和开发的类型以及所需的资源主要受控于测试用例。这些都使得测试用例在整个物流信息系统开发过程中处于更加重要的地位。

测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。测试用例应该包含软件或者项目名称、所服务的范围、背景、作者、编写时间等文档类信息;根据测试用例的定义和目的,测试用例的内容应该有:标题和用例编号、版本号、修改记录,针对目标和假设前提可能发现的错误、输入数据或代码、测试步骤、预期输出和错误发现方法。

对于每个测试需求,在测试用例中需要考虑在正面测试和负面测试条件下的测试,或者通过确定两个测试用例来实现:一个测试用例代表预期的条件,它可用于核实行为是否正确或符合预期(正面测试);另一个测试用例则代表不可接受的、异常的或意外的条件,它可用于核实测试需求是否未以非预期方式执行(负面测试)。

在一般情况下,对于测试的每个需求来说,至少要有一个正面测试用例和为数较多的负面测试用例,以此来检查在异常情况下系统能否正常处理,或者用户进行了错误的操作时的友好提示等等。

测试用例已被确定用来执行测试目标中所有的产品需求行为,包括(视情况而定):

功能、数据确认、业务规则实施、测试目标工作流程或控制、数据流、对象状态、性能(包括工作量、配置和强度)、安全性可访问性、兼容性。每个测试用例都说明或者代表一个唯一的输入集或事件顺序,它能够产生唯一的测试目标行为,复审那些产生相同行为的测试用例并判定它们是否等同,即它们是否都执行测试目标中的路径。

2.测试用例的设计方法

根据动态测试的方法分为黑盒测试和白盒测试,相应的测试用例的设计方法也可以分为针对黑盒测试的用例设计和针对白盒测试的用例设计。针对白盒测试的测试用例设计方法有语句覆盖、判断覆盖、条件覆盖、判断/条件覆盖、条件组合覆盖等;黑盒测试的测试用例设计方法主要有等价类划分、边界值分析、因果图法和错误推测法等。

(1)白盒测试的测试用例设计方法

1)语句覆盖

由于程序中有分支语句,程序的某次执行一般并不能执行到其中的每一条语句。因此,如果某语句中含有一个错误,而它在测试中没执行,这个错误就不可能被发现。为了提高发现错误的可能性,应该在测试时执行程序中的每一个语句。

语句覆盖是一个比较弱的测试标准,其含义是选择足够的测试用例,使得程序中每条语句至少都被执行一次,以此尽可能多地发现程序中的错误。

2)判断覆盖

判断覆盖又称分支覆盖,其含义是选择足够多的测试用例,使得程序中每条判断语句至少获得一次“真”值和“假”值,也就是每个判断语句的每个分支都至少被执行一次。

3)条件覆盖

条件覆盖的含义是执行足够多的用例,使得判断语句中的每个条件均获得各种可能的结果,它比判断覆盖测试能力要强。

4)判断/条件覆盖

判断/条件覆盖的含义是指执行足够多的测试用例,使得判断表达式中每个条件都取到各种可能的值,并且使每个判断表达式也都取到各种可能的结果。

5)条件组合覆盖

条件组合覆盖是一种更强的逻辑覆盖标准,它要求选取足够多的测试用例,使得判断表达式中所有条件的各种可能组合都至少出现一次。凡是满足这种覆盖的用例,一定满足判断覆盖、条件覆盖和判断/条件覆盖。

6)路径覆盖

路径覆盖的含义是选取足够多的测试数据,使程序的每条可能路径都至少执行一次(如果有循环,则要求每个循环至少经过一次)。

路径覆盖是相当强的标准,它保证程序中每条可能的路径都至少执行一次,因此这样的测试数据更有代表性,暴露错误的能力也比较强。但是,为了做到路径覆盖只需考虑每个判断表达式的取值,并没有检验表达式中条件的各种可能组合情况。如果把路径覆盖和条件组合覆盖结合起来,可以设计出检错能力更强的测试数据。

(2)黑盒测试的测试用例设计方法

1)等价类划分

按照黑盒测试思想,输入所有可能的数据来测试某个程序是不可行的。所以,只能在可能的输入数据中选取一个最具代表性的有限子集,作为测试用数据,期望用较小的代价暴露程序中的较多错误。

等价类划分方法的基本思想是设想用一组有限的数据去代表近似无限的数据,就是基于对输入或输出数据的评估将数据划分为两个或更多子集(如有效的和无效的数据集),从每个等价类中选择一定的代表值进行测试,来代表整个数据集的输入/输出。

等价类划分是将输入数据的可能值分成有效等价类(符合要求的输入)和无效等价类(非法输入)两种,每一类以一个代表性的测试数据进行测试,这个数据就等价于这一类中的任意其他数据。

例如,输入的数据范围是1~999,我们可以划分一个有效等价类(大于等于1且小于等于999的数)和两个无效等价类(小于1的数,以及大于999的数)。

等价类测试的关键是划分等价类。要做好这一点,一是要注意积累经验,二是要正确分析被测程序的功能。例如,某程序的功能是求解一元二次方程ax2+bx+c=0。

那么,根据功能可划分出如下的等价类:

满足a≠0,且b=0,c=0的输入数据;满足a≠0,且b=0,c≠0的输入数据;满足a≠0,且b≠0,c=0的输入数据;满足a=0,且b≠0,c≠0的输入数据;a=0,b=0,c≠0的输入数据,非法方程;a=0,b=0,c=0的输入数据,不是方程。

其中,前四个等价类为有效等价类,后两个为无效等价类。因此,测试用例数据就可分别从这些等价类中选取六组测试用数据。

2)边界值分析

在编写程序时,人们往往只注意正常情况,忽视了边界状态。边界值分析法就是在某个变量范围的边界上,验证独立的输入/输出是否正确的测试方法。因为实践证明,程序往往在输入/输出数据边界更容易发生错误,所以检查边界情况的测试用例是比较高效的,可以更快地查出错误。

采用边界值分析的基础也是划分等价类,是对等价类划分方法的补充。不同的是,对每一等价类所选取的测试数据应在其边缘值附近,而不是选取每个等价类的典型值或任意值作为测试用例。

例如,输入数据的值的范围是-1.0~1.0,则可选-1.0、1.0、-1.001和1.001等数据作为测试数据。

3)错误推测法

人们可以通过经验和直觉推测程序中可能存在的各种错误,从而针对性地设计测试用例。这种方法没有确定的步骤,在很大程度上是凭经验进行的。

例如,输入数据为0,或者输入数据为“空”;输入的学生成绩超过100分或为负值;输入一些不存在的数据等。

同类推荐
  • 传统企业电商之道

    传统企业电商之道

    本书是作者二十多年传统营销经验和多年电商实践经验的总结,旨在为传统企业展现一条清晰的电商发展思路,扫清发展上的障碍。全书从传统企业启动电子商务应从战略规划开始,以实战的角度,阐述如何定位,如何建立电商管理体系,如何做营销管理和分销等一系列内容。相信本书能成为传统企业开展电商业务的行动指南。
  • 管理者每天读点《论语》(论语管理日志)

    管理者每天读点《论语》(论语管理日志)

    本书内涵丰富、思想深刻,是儒家至高无上的经典。宋代宰相赵普以“半部《论语》治天下”对其高度赞赏。本书系统、全面地对《论语》的文本进行了梳理并作出了管理学的解读,涉及决策、组织、领层、控制,以及沟通、协调、用人、团队建设等企业管理问题,使读者能从中领悟管理工作中那些非凡的东方智慧。本书内容全面,体例新颖,以精干务实的日志形式把管理精华融入读者每天的生活当中,选择精妙的“论语箴言”、具体的“案例引导”并辅以高度概括的“管理智慧”和操作性极强的“行动指导”,分析企业管理的成败得失,总结最实际的管理策略,为企业的管理者提供参考,使之能够更清晰、更透彻地领悟企业管理思想。
  • 给你一个商品,看你怎么卖

    给你一个商品,看你怎么卖

    摊位的卖主、卖场的营业员和商业经理人埋怨生意不好做,其实缺的是热销的商品,缺的是卖商品的智慧,读一读《给你一个商品,看你怎么卖》这本书,相信在品读中能够给你开拓卖的思路,为你找寻卖的办法,让你收获卖的学问,让你能够把所有的商品都能变成热销品。
  • 公共关系学

    公共关系学

    本书共分为理论篇和实务篇两大部分。前者以“社会—公众—传播”三要素为重点来阐述和回答诸如公共关系的性质、职能、类型等方面的问题;后者以“信息—传播—效果”的方法论为立足点,进而对涉及言语、文字、实像、网络等媒介的“公关”实务操作作以详证,分门别类,自成一体。全书取例丰富,具有一定的可读性,既适合作为大专院校的教材,也可供企事业单位专职干部、专业人员阅读。
  • 秒杀订单

    秒杀订单

    本书是为在销售工作中停滞不前、渴望有进一步提升的销售人员和初人销售行业、不知如何拓展自己业务的新手们量身打造的。全书包含如何掌握秒杀订单的策略、如何透析客户肢体语言背后的信息、如何利用成交术促使秒杀成功等八章内容,循序渐进地为读者作出分析和详细解答,并提供了极具参考价值的方法和建议,教你如何用更小的成本获得更大的销售额,用更短的时间获得更多的订单,让你一天一天向销售冠军的目标快速靠近。如果你正奋战在销售第一线,本书会解答你的销售困惑,让你准确把握秒杀订单的秘诀,从一名销售新人成为一名成绩斐然的销售冠军!
热门推荐
  • 艺术心理治疗的理论与实践

    艺术心理治疗的理论与实践

    本书分文学篇、音乐篇及美术篇三部分,主要内容包括:文学治疗概述;阅读爱好对人格影响的研究;大学生阅读爱好类型与人格特质的相关性研究;女大学生阅读爱好与恋爱观、自我效能感的关系等。
  • 封凡

    封凡

    千年前,九霄五域受秘力牵引坠入凡尘。天族共主莫名迷失心智,在凡界造下无边杀孽。后各隐世秘地掌教携至宝出世,配合五域天族镇下这场腥风血雨。此后四域天族重回九霄,南域消失。凡界历此战江河改道,丘崩峦摧,各族几乎断绝传承,损失惨重,大族气运全销。五十春秋翻手间过,凡族回复些许生息。各地突现异族,多兽体而强绝,食人,屠戮无数,称妖魔。各密地联合推举凡界最强十人为十圣,十圣巡游天下斩灭强魔,把天下分为七国与多处未知之地,施教化,立礼制,选国君,稳疆域。同时派族中天纵行走各地,退灭妖魔,后传法天下,开宗立派,人族渐兴。故事从千年后始……
  • 星痕九天

    星痕九天

    一次英勇的行为,造就了一个新世纪的开启,这里只有星魂之力,没有其他怪异奇特的力量。一个普普通通的宅男,莫名的来到了这个弱肉强食的世界,他,该如何成为一代强者呢……
  • 情何以衎

    情何以衎

    初次想见,他从马蹄之下将她救起,然而她看他的目光却是如此的陌生,因为她是从现代穿越而来,脑海中早已没有了他们之间的记忆。再次相见,他对她说,只要她愿意,他有办法让她不必入宫。然而命运弄人,她的未婚夫在车祸中一同穿越,成为森焰国的皇帝,她为了能陪伴在未婚夫身边,毅然入宫为后。他暗自心伤,却仍旧默默守护她。然而在至高无上的权利面前,她的未婚夫对她产生了猜忌,将她步步逼入了地狱…她为复仇从地狱里重生,他则为她纠结几十万兵马,准备血染皇城,即使满手鲜血也在所不惜…
  • 福妻驾到

    福妻驾到

    现代饭店彪悍老板娘魂穿古代。不分是非的极品婆婆?三年未归生死不明的丈夫?心狠手辣的阴毒亲戚?贪婪而好色的地主老财?吃上顿没下顿的贫困宭境?不怕不怕,神仙相助,一技在手,天下我有!且看现代张悦娘,如何身带福气玩转古代,开面馆、收小弟、左纳财富,右傍美男,共绘幸福生活大好蓝图!!!!快本新书《天媒地聘》已经上架开始销售,只要3.99元即可将整本书抱回家,你还等什么哪,赶紧点击下面的直通车,享受乐乐精心为您准备的美食盛宴吧!)
  • 克鲁索孤岛学院

    克鲁索孤岛学院

    酷暑下迎来的却是一场无趣的考试,冥冥中注定那‘无趣’的一天会成为死亡的舞台,“我们无处可逃,却无法停下脚步,在末世的人间地狱徘徊”他们的目标是什么?死去的亡魂,最终的栖息之所又是哪里?
  • 风迷

    风迷

    风迷在一次战队中死了,复活到了另一个人类的身上,开始了一段神奇的历程
  • 情僧录

    情僧录

    试问禅关,参求无数,往往到头虚老。磨砖作镜,积雪为粮,迷了几多年少?毛吞大海,芥纳须弥,金色头陀微笑。悟时超十地三乘,凝滞了四生六道。谁听得绝想崖前,无阴树下,杜宇一声春晓?
  • 绝世道主

    绝世道主

    本是落难少年,机缘巧合之下,学会了两个字。‘衍’‘赋’两个代表着‘推衍’和‘赋予’能力的字。‘衍’可知过去,可推未来,可问凶吉,可断前程,可推衍出高级功法,可算出何地有天材地宝,面对阴谋,他不屑一笑,谈笑间,敌手灰飞烟灭。‘赋’可让妖兽提前有灵智,可点化千年枯木,可让江河湖海有灵,可让山川大泽有智。万物皆可点化,‘天’亦是万物。当他点化‘天’的时候,终于悟出了第三字……
  • 他为世界而来:成吉思汗和他的草原帝国

    他为世界而来:成吉思汗和他的草原帝国

    要想征服脚下的版图,就必须先征服人心。以小说笔法,参考史料,还原一个真实有料的成吉思汗。9岁,父亲被塔塔儿人毒死,众叛亲离;18岁,被仇敌蔑儿乞惕部抢走妻子,兴师动众;22岁,遭到结拜兄弟札木合的忌恨,挚友变仇敌;45岁,联合各部,统一蒙古,建大蒙古国,被推举为成吉思汗;以3万兵马起家,用43年时间统一蒙古草原,横扫欧亚大陆,征服720多个部族。从铁木真到成吉思汗,一路狂飙突进,出生入死,传奇不灭,征服不止。成吉思汗,一个用力量谱写历史的征服者。