作者:京东物流 王莹莹
一、测试用例为什么存在
1.1 定义
测试用例 (Test Case) 是指对特定的软件产品进行测试工作的形容,体现测试计划、办法、技术和策略。测试用例内容包含测试指标、测试环境、输出数据、测试步骤、预期后果、测试脚本等,最终造成文档类的输入。简而言之,测试用例是为某个指标而设计的一组测试输出、执行条件以及预期后果,用于核实是否满足某个软件需要。
1.2 作用
①领导测试(开发)的执行
测试用例作为各个测试阶段工作基准领导测试人员依照按用例我的项目和测试步骤施行测试。另外,测试工作左移时,测试同学提前输入的测试用例也能够领导开发人员的开发工作。
②测试物料的筹备
• 数据:依照测试用例配套筹备一组或若干组测试所需的原始数据。
• 测试脚本:自动化测试脚本的设计根据。
③测试工作进度把控
•测试工作量评估
•进步测试工作组织效率
④测试后果的度量基准
测试实现后须要撰写测试报告,判断测试是否实现、掂量测试品质量化的后果更加精确、无效。例:测试覆盖率是多少、测试合格率是多少、重要测试合格率是多少,等等。
⑤剖析缺点
通过测试用例和缺点数据库比照,剖析缺点起因与类型。
二、测试用例设计根本准则
①正确性:测试用例必须是正确的,需通过测试用例评审。
②代表性:测试用例不可能是“穷举”的,冀望在无限的测试工夫内进行无效的测试,用例必须具备代表性的。
③可判定性:用例的测试后果必须可量化,这样测试实现之后能力将测试后果与预期后果进行比拟,断定是否存在 BUG。
④可重现性:测试用例执行可复现性保障问题定位的准确性。
⑤可操作性:具体、精确和清晰的步骤是测试用例执行的必要条件,也是测试用例可重现的根底。
三、对于测试用例设计的喋喋不休
3.1 地基:罕用测试用例设计办法(黑盒测试)
等价类划分与边界值剖析
•等价类划分
将测试的范畴划分成几个互不相交的子集,他们的并集是选集,从每个子集选出若干个有代表性的值作为测试用例。
•边界值剖析
边界值分析法就是对输出或输入的边界值进行测试的一种办法,通常是作为对等价类划分法的补充,这种状况下,其测试用例来自等价类的边界。
场景法
场景法是通过场景形容用例执行的门路,从用例开始到完结遍历这条门路上所有根本流和备选流。场景法适宜测试业务流程清晰的零碎或性能,从零碎整个业务流程的全副角度对系统进行测试。
举例:京东商城购买商品,APP-> 抉择商品 -> 点击购买 -> 确认购买信息 -> 领取,这里的每个环节不同的后果联合起来都是一条不一样的用例。
谬误揣测法
谬误猜想次要是一项依赖教训和直觉的非正规的工程办法,根本思维是列举程序可能呈现的谬误或者容易产生谬误的测试点,而后依据测试点来编写测试用例。
举例:京东商城 APP 搜寻输入框特殊字符的查看。
因果图与断定表
用图解的办法示意各种组合关系,写出断定表,从而设计相应的测试用例。相似于数学知识中的布尔逻辑运算,将各种输出条件的组合起来。每种组合条件就是“因”,它有一个输入的后果,这就是“果”。
举例:
正交实验法
正交试验设计是应用曾经造好的正交表格进行数据分析,从中挑选出局部具备代表性的点进行试验,这些代表性的点具备了“平均扩散,参差可比”的特点,是一种绝对高效、疾速的用例设计办法。
举例:
3.2 盖房子:理论工作中的测试用例设计
理论工作中,很多时候咱们无奈遵循实践上的测试用例设计办法那样,编写大而全的用例去执行所有大大小小需要的测试。更多状况下,用例设计时应该恪守精益测试策略,不能一味的谋求测试覆盖率,无效的测试更有价值。利用测试四象限等信息领导的精益测试,谋求以业务价值为指标,以尽量少的老本交付高质量的软件,做到无效笼罩,缩小节约。不论是手工测试还是自动化测试,都要先搞清楚业务价值和品质指标,测试用例设计和执行过程都须要做出绝对应的考量(如测试用例的优先级)。
框架搭建
用例设计之前,咱们应该相熟需要的业务背景与技术架构,从而勾画出测试用例整体框架。而后,应用【横向扩大】+【纵向分层】的组合模式下来针对每个需要实现用例拆解笼罩。
•横向业务扩大:指从业务角度平铺来看,总共有哪些业务场景,提供了哪些能力,即产品最上层的性能全景。
•纵向架构分层:是指从技术架构层面来剖析,以后产品能够宏观上分为几层,以便于在用例验证是从不同档次上进行验证和用例笼罩。
举例:
添砖加瓦
测试框架搭建实现之后,就须要欠缺测试范畴梳理,确认性能点的细节信息。例如,个别状况下须要进行回归测试、异样测试,再有可能须要进行并发测试、平安测试和性能测试等。从测试类型登程,联合惯例用例设计办法进行用例设计与编写。
举例:
站在房子里面:像用户一样去测试
怎么像用户一样测试,是否做到还原实在用户的应用场景,还原用户在应用产品时的实在心理。说起来有点玄,但其实思路很简略。第一步设想本人就是用户,如果是我会有多少奇奇怪怪的操作或需要;第二步是补救测试人员和用户之间的断层,用户和测试信息对齐,领导用户更好的应用软件,领导测试更有同理心。
小妙招
•用户画像:咱们大概率能晓得用户群体是谁,他的典型画像是什么样的,这也是咱们进行换位思考的根底。
•不信赖上下游:咱们不能保障上下游给我的信息或者性能肯定是完满的,联合本身零碎定位和业务确认不同场景下咱们应该做出什么样的反馈。
3.3 拓展:房子的保护,测试用例治理
测试用例是咱们测试人员贵重的财产,在测试工作中测试用例是其最为重要的根底。所以,一个良好的测试用例除了能够帮忙测试人员浏览,了解,批改之外,也要不便咱们去治理它,从而进步测试工作的品质和效率。不同的业务条线或者团队能够依据本人须要制订一些规定,让大家在进行测试用例设计恪守。