如何编写测试用例

测试的存在是为了辅助开发出更高质量的软件,基于这个根本需求,要想编写好测试用例,就必须了解开发流程。

一、根据开发流程的不同设计,演变出了三种开发模型

  1. 瀑布模型

该模型的流程为:问题定义->可行性研究->需求分析->软件设计->编码->测试->维护。

特点:每个流程都由各自的一份文档来驱动实现,流程之间的执行方向不可以改变,像瀑布一样由上 至下,不可逆流。

  1. 增量模型

该模型的流程为:规格说明->设计->实现和集成->交付客户

特点:整个项目的开发拆为多条流程并行开发,出现一条新的需求,增加一条新的开发流程,解决了瀑布模型中开发方向不可逆的短板,适用于需求容易变动的情况。

  1. 快速原型

该模型的流程为:规格说明->设计模型->实现和集成->交付客户

特点:快速根据开发的项目制作出一个基本的整体模型,交付给客户体验,并根据客户的反馈进行修 改设计。重复多次这个过程,直到整个项目完全实现。适用于需求分析还不太明确的情况。

二、依附于开发的流程,常用的测试模型有两种

  1. V模型

该模型的流程为:需求分析->概要设计->详细设计->编码->单元测试->集成测试->系统测试->验 收测试

特点:在完成开发流程中的编码后,测试才开始,适用于小软件的开发

  1. W模型

该模型的流程为:需求分析&验收/系统测试设计->概要设计&集成测试设计->详细设计&单元测试 设计->编码&单元测试->集成&集成测试->实施&系统测试->交付&验收测试

特点:开发流程与测试流程同时进行,不用等待编码完后才开始测试,适用于复杂软件的开发

三、在了解完开发模型和测试模型后,就可以开始正式的学习如何编写测试用例了

  1. 什么是测试用例?

测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。

  1. 测试用例有哪些特性?

有五个特性

(1)有效性:可以被使用 ,不同测试人员使用的测试结果一致

(2)可复用性:可以重复使用,如回归测试

(3)易组织性:可以被分门别类的提供给测试人员使用

(4)可评估性:可以通过测试用例的通过性作为软件质量好坏的标准

(5)可管理性:可以通过测试用例的通过性作为软件质量好坏的标准

  1. 测试用例由哪些元素组成?

有8大基本要素

(1)测试用例编号:字符和数字组合成的字符串,具有唯一性

(2)测试模块:测试的项目属于哪个项目或者被测试的需求,检测的模块,被检测的单元等

(3)前提条件:执行测试用例前需要的条件,若不被满足则会影响到预期测试结果

(4)测试输入:测试用例执行时需要加工的外部信息如瘦狗输入、数据库等

(5)预期输出:预期输出结果包括放回值的内容,界面响应结果等

(6)操作步骤:执行测试用例要经过的操作步骤

(7)测试用例标题:概括测试目的

(8)级别:普通、重要

  1. 编写测试用例要遵循哪些原则?

遵循三大原则

(1)明确性:尽量避免测试用例的含糊性,测试结果唯一性

(2)代表性:尽量将功能相似的测试用例合并

(3)简洁性:可读性好、目的明确、结果唯一

  1. 编写测试用例有哪些方法

(1)类型划分

有效等价类:对于程序规格来说是合理的,有意义的输入数据构成的集合,可以建议程序是否实现了规 格说明中的功能和性能。

无效等价类:无意义的输入数据构成的集合,对于具体的问题,至少包含一个无效等价类,可以检验程序对无效数据的处理能力,容错力。

(2)边界值法:等价类划分的补充,利用等价类的边界值来测试,长期经验,大量的错误是发现在输入或输出范围的边界上,针对边界设计用例可以查出更多的错误。

(3)判定表法:针对不同逻辑条件的组合值,分别执行不太的操作。适用于有多个输入和对应的多个输出的组合关系。

(4)正交表法:使用最小的测试过程集合获得最大的测试覆盖率

(5)场景法:从起点,通过一系列操作步骤,达成某一种结果,到终点的过程测试。

(6)流程分析法:针对场景测试下的子项进行设计,写用例,覆盖所有路径分支。

(7)错误推断法:基于经验和直觉推测程序中所有可能存在的各种错误,从而针对性的设计测试用例。

  1. 测试用例的力度

分为三个程度

(1)简单:只包含测试的纲要,只包含测试内容。

(2)复杂:包含具体的输入项、每一个步骤、期待的结果。

(3)中庸:过于简单会有疏漏,过于复杂,效率太低,维护成本高。

  1. 设计测试用例方法总结

(1)测试用例的本质:基于需求。

(2)原则:根据程序的重要性和一旦发生故障带来的损失,确定测试重点。

(3)方法选取

  1. 先关注主要功能,业务流程、业务逻辑是否正确,考虑场景法。

  1. 需要输入数据的地方,考虑等价划分。

  1. 任何情况都是用边界值法。

  1. 包含输入条件的组合情况,选因果图和判定表法。

  1. 对于配置软件,需要考虑参数的组合情况,考虑正交排列法。

  1. 对照程序逻辑,如果发现没有达到要求的覆盖标准,适当补充更多的测试用例。

  1. 采用错误推断法,追加其他测试用例。

8.评审

  1. 同行评审

  1. 用户评审

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值