测试用例设计的八大要素及ANSI/IEEE 829标准和编写示例[通俗易懂]

测试用例设计的八大要素及ANSI/IEEE 829标准和编写示例[通俗易懂]1、测试用例的八大要素1.用例编号和其他编号一样,测试用例编号是用来唯一识别测试用例的编号,要求具有易识别和易维护性,用户可以很容易根据用例编号获取到相应用例的目的和作用,在系统测试用例中,编号的一般格式为A-B-C-D这几部分的作用分别如下:A:产品或项目类型,如CMS(内容管理系统)、CRM(客户关系管理系统)B:一般用来说明用例的属性,如ST(系统测试)、IT(集成测试)、UT(单元测试)C:测试需求的表示,说明该用例针对的需求点,可包括测试项和测试子项等,如文档管理、客户投诉信息管理

大家好,又见面了,我是你们的朋友全栈君。

1、测试用例的八大要素

1. 用例编号

和其他编号一样,测试用例编号是用来唯一识别测试用例的编号,要求具有易识别和易维护性,用户可以很容易根据用例编号获取到相应用例的目的和作用,在系统测试用例中,编号的一般格式为A-B-C-D
这几部分的作用分别如下:

  1. A:产品或项目类型,如CMS(内容管理系统)、CRM(客户关系管理系统)
  2. B:一般用来说明用例的属性,如ST(系统测试)、IT(集成测试)、UT(单元测试)
  3. C:测试需求的表示,说明该用例针对的需求点,可包括测试项和测试子项等,如文档管理、客户投诉信息管理等。通常可以根据实际情况将格式调整为C-C1的格式,如客户管理-新增客户,其中客户管理为测试项C,新增客户为测试子项C1。
  4. D:通常用数字表示,并且一般用三位顺序性数字编号表示,如001、002等。

用例编号示例:CRM-ST-客户管理-新增客户-001

2. 测试项

测试项即是测试用例对应的功能模块,其包含了测试项、测试子项,以及该用例所属的功能模块。以上述的客户管理-新增客户为例,往往一个测试项下会包含若干测试子项或测试用例,因此测试项一般可定义到测试子项级别,这样更便于识别测试用例所属模块及维护用例。

3. 标题

测试标题是用来概括描述本条测试用例的关注点,原则上标题不可重复,每条测试用例对应一个测试目的。例如,输入包含特殊符号'的客户名称,提交新增信息,验证单引号SQL注入是否屏蔽。

4. 重要级别

重要级别是测试用例重要性的体现,可以根据测试用例的重要级别决定测试用例的执行顺序,一般将测试用例划分为高、中、低三个等级。具体的级别可以根据需求的优先级来确定,在一个测试项中,级别为高的测试用例数量往往控制在一个左右,通常从功能风险、功能使用频率、功能关键性等几个因素来考虑用例重要级别设置,高级别的用例越多,预测试项目就越多,就越不利于测试的执行,这样设置重要级别也就没有意义了。

5. 预置条件

预置条件就是执行该条用例的先决条件,也就是说如果预置条件不满足,则根本无法执行本条测试用例。预置条件在实际确定的过程中,往往选择与当前用例有直接因果关系的条件,例如当某个功能A或流程的输出直接影响下一个功能或流程的工作时,可称A是下一功能或流程的预置条件。
预置条件选择的正确与否,可能会影响测试覆盖率、通过率的计算,从而影响停测标准的执行。

6. 测试输入

测试执行时,往往需要一些外部数据、文件、记录驱动等,例如,新增客户信息时,需要客户姓名、联系电话、通信地址等,这些内容构造的测试数据即被称为测试输入。

7. 操作步骤

根据需求规格说明书中的功能需求,设计用例执行步骤。操作步骤描述执行人员执行用例时,应遵循的输入操作动作,编写操作步骤时,需明确给出每个步骤的详细描述。

8. 预期结果

预期结果来源于需求规格说明书,说明用户显性期望或隐性需求。预期结果作为测试用例最重要的一部分,需明确定义。在编写预期结果时,可以考虑从以下两个方面考虑:

  1. 预期的界面表现
    执行相关操作后,被测对象会根据测试输入做出相应,并将结果展现在软件界面上,用例预期结果中可包括此部分的描述。
  2. 预期的功能表现
    通常从数据记录、流程响应等几个方面关注预期功能表现,如输入正确数据格式的用户信息,单击“新增”按钮,数据库插入相关记录,并且在用户列表中正确显示该用户概要信息。
    需要注意的是,被测对象根据输入所做出的响应,一定要描述清晰。通常情况下,一条测试用例,仅描述一个预期结果或主题明确的相关结果,不要一条用例描述若干事情,期望若干结果。

2、ANSI/IEEE 829标准

ANSI/IEEE 829标准测试用例说明用于输入输出的实际数值和预期结果,同时还指出了使用具体测试用例产生的测试程序的限制。下面是ANSI/IEEE 829中对测试用例的描述:
在这里插入图片描述

如果按照上述标准来写,将非常浪费时间,所以一般将上述标准一般作为规范,然后在其基础上进行修改、简化,下面是一个测试用例的实例。

3、测试用例编写实例

以上面的新增客户测试项为例,可以编写如下的测试用例:

在这里插入图片描述
不过,根据实际的情况,我们还可以再此基础上增加新的要素,例如用例属性(指该用例的用途,如功能用例、性能、可靠性、安全性、兼容性用例等,这样可以先确定用例属性,然后再选择相应的测试用例/测试数据,比如安全性测试就选择安全性测试用例)、实际结果(刚开始时为空白,执行测试用例后,如果实际结果与预期结果不一致,将实际执行结果写入此处),执行人(执行此条测试用例的人员)等。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154029.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 图片懒加载原理及实现(java懒加载原理)

    一,前置知识1,为什么要图片懒加载懒加载是一种对网页性能优化的方式,比如当访问一个页面的时候,优先显示可视区域的图片而不是一次性加载所有图片,当需要显示时,再发送图片请求,避免打开网页时加载过多资源。当一个网站的加载图片过多时就需要懒加载的协助,页面图片多时,在首次载入时一次性加载会耗费时间长,使用懒加载可以使页面加载速度快、减轻服务器的压力、节省流量。如下图:随着滚轮滚动,底部的图片会被不断地加载,从而显示在页面上,也就是说懒加载其实就是按需加载,当页面需要显示图片的时候才进行加载,否则不加载

    2022年4月16日
    67
  • 大数据科研解决方案「建议收藏」

    大数据科研解决方案「建议收藏」第一章建设背景1.1国家政策2017年1月工业和信息化部正式发布了《大数据产业发展规划(2016-2020年)》,明确了“十三五”时期大数据产业的发展思路、原则和目标,将引导大数据产业持续健康发展,有力支撑制造强国和网络强国建设。2018年9月工信部公示“2018年大数据产业发展试点示范项目名单”,公布了包括大数据存储管理、大数据分析挖掘、大数据安全保障、产业创新大数据应用、…

    2022年5月30日
    54
  • 女朋友让我深夜十二点催她睡觉,我有Python我就不干

    用Python的pyautogui库自动操作电脑,并用apscheduler设置定时任务,实现定时发送微信功能。

    2022年4月15日
    55
  • mybatis log 激活码【2021.7最新】「建议收藏」

    (mybatis log 激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~ML…

    2022年3月21日
    397
  • Java线程(二):线程同步synchronized和volatile

    Java线程(二):线程同步synchronized和volatile要说明线程同步问题首先要说明Java线程的两个特性,可见性和有序性。多个线程之间是不能直接传递数据交互的,它们之间的交互只能通过共享变量来实现。拿上篇博文中的例子来说明,在多个线程之间共享了Count类的一个对象,这个对象是被创建在主内存(堆内存)中,每个线程都有自己的工作内存(线程栈),工作内存存储了主内存Count对象的一个副本,当线程操作Count对象时,首先从主内存复制Co…

    2022年7月15日
    16
  • qt tcpsocket_qt的socket通信

    qt tcpsocket_qt的socket通信QTcpSocket类的方法connectToHost会泄露内存,即使把调用这个方法的QTcpSocket实例delete掉,内存也不会释放!反复connectToHost会导致段错误,十分危险。必须控制connectToHost的使用次数!连接服务器m_tcpSocket->connectToHost(“127.0.0.1”,9877);connected=m_tcpSocket-

    2022年9月10日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号