测试用例设计的八大要素及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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux aria2配置(linux下安装windows)

    系统要求CentOS7+/Debian6+/Ubuntu14.04+推荐Debian7x64,这个是我一直使用的系统,我的脚本在这个系统上面出错率最低。注意:本脚本只是安装Aria2后端,安装后默认会启动,但是还需要前端面板配合使用,如Aria2WebUI或AriaNG,教程看这里:https://doub.bid/all-one/#BT、磁力链接下载相关教程注意…

    2022年4月14日
  • BP神经网络算法学习及代码实现(含Python源码)[通俗易懂]

    BP神经网络算法学习及代码实现(含Python源码)[通俗易懂]目录1.写在前面2.BP神经网络推导2.1前向传播2.2反向传播2.2.1求解梯度矩阵2.2.2梯度下降法2.2.3反向传播公式推导输出层误差推导隐藏层误差参数变化率参数更新3.代码实现3.1过程解释3.1.1导入库3.1.2定义sigmoid函数3.1.3导入数据集3.1.4初始化权重和偏倚3.1.5开始训练3.2完整代码3.3预测结果1.写在前面BP神经网络算法作为作为机器学习最基础的算法,非常适合入门。透彻掌握其原理将对于今后的机器学习有很大的帮助。2.BP神经网络推导2.1前向传播前向传播

    2022年9月11日
  • 邮件服务器的架设方法「建议收藏」

    用Win2003架设邮件服务器很多企业局域网内都架设了邮件服务器,用于进行公文发送和工作交流。但使用专业的企业邮件系统软件需要大量的资金投入,这对于很多企业来说是无法承受的。其实我们可以通过WindowsServer2003提供的POP3服务和SMTP服务架设小型邮件服务器来满足我们的需要。一、安装POP3和SMTP服务组件WindowsServer2003…

    2022年4月8日
  • java.util.scanner sc_Java的Scanner sc=new Scanner(System.in)是什么意思「建议收藏」

    java.util.scanner sc_Java的Scanner sc=new Scanner(System.in)是什么意思「建议收藏」展开全部当通过newScanner(System.in)创建一个Scanner,控制台会一直等待输入,62616964757a686964616fe58685e5aeb931333433653935直到敲回车键结束,把所输入的内容传给Scanner,作为扫描对象。如果要获取输入的内容,则只需要调用Scanner的nextLine()方法即可。例:importjava.util.Scanner;…

    2022年7月20日
  • 7月13一个不平凡的日子

    7月13一个不平凡的日子7月13一个不平凡的日子,3点起床去海淀医院吊瓶,7点到家补觉。全天共接到10电话(其中1个是骚扰)。13点到单位办请假手续,15点去乐成产品部参观并开会,里面样衣样鞋真多,真想拿几件走。…

    2022年7月16日
  • System setProperty(property,value)方法

    System setProperty(property,value)方法通常JDKd的运行参数设置为#forlinuxexportJAVA_OPTS=”$JAVA_OPTS-Dcode=BeiJing”#forwinsetJAVA_OPTS=%JAVA_OPTS% -Dcode=BeiJing相当于Java代码里面实现System.setProperty(“code”,”BeiJing”);同时,获取code的值则可以用下列

    2022年7月12日

发表回复

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

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