本文节选自霍格沃兹测试学院内部教材
测试用例(Test Case)是为特定的目的而设计的一组测试输入、执行条件和预期结果的文档。它的作用其实就是为了测试是否满足某个特定需求。测试用例是指导测试工作进行的依据。
测试用例的组成
标准的测试用例通常由以下几个模块组成:
-
用例编号:测试用例的唯一标识。
-
模块:标明被测需求具体属于哪个模块,主要为了更好识别以及维护用例。
-
用例标题:又称之为测试点,就是用一句话来描述测试用例的关注点。每一条用例对应一个测试目的。
-
优先级:根据需求的优先级别来定义。高优先级要覆盖核心业务,重要特性以及使用频率比较高的部分。
-
前提条件:用例在执行之前需要满足的一些条件,否则测试用例无法执行。比如一些测试环境,或者需要提前执行的操作。
-
测试数据:在执行测试时,需要输入一些外部数据来完成测试。这些数据根据测试用例的据统计情况来确定,有参数、文件或者数据库记录等等。
-
测试步骤:测试用例的步骤描述,执行人员可以根据测试步骤完成测试的执行。
-
期望结果:是测试用例中最重要的部分,主要用来判断被测对象是否正常。要根据需求来描述用户的期望
-
实际结果:PASS 通过,FAIL 失败,N/A 未执行。
测试用例优先级
在工作中,测试用例根据系统需求会划分成不同的等级:
- P0:核心功能测试用例(冒烟测试),确定此版本是否可测的测试用例。此部分测试用例如果 FAIL,其他测试用例就可以不用执行了,需要打回去给开发重新提测。
- P1:高优先级测试用例,最常执行用来保证功能是稳定的。包含基本功能测试和重要的错误、边界测试。
- P2:中优先级测试用例,更全面的验证功能的各个方面,包含异常测试、边界、中断、网络、容错、UI 等测试用例。
- P3:低优先级测试用例,不常常被执行,一般包含性能、压力、兼容性、安全、可用性等等。
在不同的公司,可能测试用例的等级划分有所差异,但是基本大同小异。
测试用例的作用
写测试用例能带来哪些好处呢?
首先,有用例就可以做到心中有数,不会一个测试点重复测好多次,就有思路,避免漏掉测试点。而且在测试用例中可以将测试数据提前准备好,这样就不会漏掉一些重要的数据了。
测试用例的执行结果也是评估测试结果的度量基准。如果设计全面覆盖需求的用例,测试用例都执行通过,发现的问题全部修改,即可放心交付给客户使用。
测试用例也是分析缺陷的标准。因为测试用例中会详细描述期望结果,这个期望结果其实就是分析是不是有 Bug 的一个标准。和预期结果一致的,就是没有 Bug。反之,和预期结果不一致,就是存在 Bug,需要研发修复。
测试用例设计工具
在写用例的时候,可以使用思维导图去把模块和用例的设计思路理清楚。思维导图完成之后就可以评审。评审完毕后,有需要修改的地方可以在思维导图直接修改。
如果要求要用表格的方式去写测试用例的话,可以再把思维导图中的测试思路转化成为表格形式。
后面我们会给大家介绍测试用例的具体设计方法哦~敬请期待!
** _
来霍格沃兹测试开发学社,学习更多软件测试与测试开发的进阶技术,知识点涵盖web自动化测试 app自动化测试、接口自动化测试、测试框架、性能测试、安全测试、持续集成/持续交付/DevOps,测试左移、测试右移、精准测试、测试平台开发、测试管理等内容,课程技术涵盖bash、pytest、junit、selenium、appium、postman、requests、httprunner、jmeter、jenkins、docker、k8s、elk、sonarqube、jacoco、jvm-sandbox等相关技术,全面提升测试开发工程师的技术实力