备考第12天——测试用例的编写

archer-xin archer-xin     2023-04-13     273

关键词:

测试设计说明

        为了更好地进行测试,我们需要为单个软件特性定义具体的测试方法,这就是测试设计说明。ANSSI/IEEE 829中对测试设计说明的解释是:测试设计说明就是在测试计划中提炼测试方法,要明确指出设计包含的特性以及相关的测试用例和测试程序,并指定判断特性通过/失败的规则。
        测试设计说明的目的是组织和描述针对具体特性需要进行的测试。然而,它并不给出具体的测试用例或者执行测试的步骤。以下内容来自于ANSSI/IEEE 829标准,应该作为测试设计说明的部分内容。
  • 标识符:用于引用和定位测试设计说明的唯一标识符。
  • 要测试的特性:对测试设计说明所包含的软件特性的描述。例如“计算器程序的加法功能”。该部分还将明确指出要间接测试的特性,它通常作为主特性的辅助特性。例如,文件打开对话框的用户界面虽然不在测试设计说明中重点指出,但是测试读写功能的过程中要间接测试。
  • 方法:描述测试的通用方法。如果方法在测试计划中列出,就应该在此详细描述要使用的技术,并给出如何验证测试结果的方法。例如,我们这样描述一种方法,开发一种测试工具,顺序读写不同大小的数据文件,数据文件的数目和大小及包含的内容由程序员提供的示例来确定。用文件比较工具比较输出的文件和源文件,如果相同,则认为通过;如果不同,则认为失败。
  • 测试用例信息:用于描述所引用的测试用例的相关信息。应该列出所选的等价区间,给出测试用例的引用信息以及用于执行测试用例的测试程序说明。例如:“检查最大值  测试用例ID#15326”,在这部分不定义实际测试用例。
  • 通过/失败规则:描述用什么规则来判定某项特性的测试结果是通过还是失败。这种描述有可能非常简单和明确,例如“通过是指当执行全部测试用例时没有发现软件缺陷”。也有可能不是非常明确,例如“失败是指10%以上的测试用例没有通过”。

测试用例说明

        如何记录和记载创建的测试用例?如果你已经开始进行一些软件测试了,就可能采用过一些用例描述格式。ANSSI/IEEE 829标准称测试用例说明为编写用于输入输出的实际数值和预期结果,同时还明确指出,使用具体测试用例产生的测试程序的限制。一个测试用例的编写可参考下表:
技术图片技术图片
        测试用例应该解释要向软件发送什么值或者条件,以及预期结果。一个测试用例说明可以由多个测试用例说明来引用,也可以引用多个测试程序。ANSSI/IEEE 829标准还列出了一些应该包含在内的重要信息,如下:
  • 标识符:由测试设计过程说明和测试程序说明引用的唯一标识符。
  • 测试项:描述被测试的详细特性、代码模块等,应该比测试设计说明中所列的特性更加具体。如果测试设计说明提到“计算器程序的加法功能”,那么测试用例说明就会相应地提到“加法运算的上限溢出处理”。它还要指出引用的产品说明书或者测试用例所依据的其他设计文档。
  • 输入说明:该说明列举执行测试用例的所有输入内容或者条件。如果测试计算器程序,输入说明可能简单到“1+1”。如果测试蜂窝电话交换软件,输入说明可能是成百上千种输入条件。如果测试基于文件的产品,输入说明可能是文件名和内容的描述。
  • 输出说明:描述进行测试用例预期的结果。例如,1+1等于2吗?在蜂窝软件中上千的输出变量设置正确吗?读取文件的全部内容和预想的一样吗?
  • 环境要求:是指执行测试用例必要的特殊要求。测试写字板程序也许不需要任何特殊条件,但是测试一些特殊的软件(如核电站软件)就有特殊要求。
  • 用例之间的依赖性:如果一个测试用例依赖于其他用例,或者受其他用例的影响,就应该在此注明。
        如果按照这里推荐的文档格式,对于每一个测试用例至少都要写上一页的描述文字,数千个测试用例可能要形成千页文档。所以我们经常把ANSSI/IEEE 829标准当作规范而不是标准使用(除非必须这样做,许多政府项目和某些行业要求按照此规格编写测试用例,但是在大多数情况下可以采用简便方法)。
        采用简便方法并不是说放弃或者忽视重要的信息,而是意在找出一个更有效的方法对这些信息进行精简,例如,没有必要刻意要求不能用书面段落形式表述测试用例。如表5-15给出了一个打印机兼容性简单列表的例子。
技术图片技术图片
        表中的每一行是一个测试用例,有自己的标识符。伴随测试用例的所有其他信息,例如测试项、输入说明、输出说明、环境要求、特殊要求和依赖性等对所有这些用例都必须有,可以一并编写,附加到表格中。审查测试用例的人可以快速看完测试用例信息,然后审查表格,检查其范围。

测试程序说明

        编写完测试设计和测试用例之后,就要说明执行测试用例的程序。什么是测试程序呢?ANSSI/IEEE 829标准把测试程序定义为“明确指出为实现相关测试设计而执行具体测试用例和操作软件系统的全部步骤”。
        测试程序,有时也叫“测试脚本说明”,详细定义了执行测试用例的每一步操作。以下是需要定义的内容。
  • 标识符:用来把测试程序与相关测试用例和测试设计相联系的唯一标识。
  • 目的:本程序描述的目的以及将要执行的测试用例的引用信息。
  • 特殊要求:执行测试所需的其他程序、特殊测试技术或特殊设备。
  • 程序步骤:执行测试用例的详细描述。它包含以下内容。
    ①日志:指出用什么方法记录测试结果和想象。
    ②设置:说明如何准备测试。
    ③启动:说明启动测试的步骤。
    ④程序:描述运行测试的步骤。
    ⑤衡量标准:描述如何判断结果。
    ⑥关闭:描述因意外原因而推迟测试的步骤。
    ⑦终止:描述正常停止测试的步骤。
    ⑧重置:说明如何把环境恢复到测试前的状态。
    ⑨偶然事件:说明如何处理计划之外的情况。
        如果我们把测试程序只理解成“尝试执行所有的测试用例并报告发现的问题”是不够的。这虽然简单、容易,但是无法告诉新加入的测试员如何进行测试,不能重复而且无法证明哪些步骤执行了。使用详细的程序说明,则把要测试什么、如果测试等问题都表述得一目了然。如图5-12所示是“windows计算器”的测试程序说明的例子片断。
技术图片技术图片

测试用例细节探讨

        俗话说“做什么都要适可而止”,测试用例计划也一样。测试用例计划包含四个目标,即组织性、重复性、跟踪和测试证实。开发测试用例的软件测试工程师要力争实现这些目标,但是其实现程度取决于行业、公司、项目和测试组的具体情况,通常也不太可能按照最细致的程度去编写测试用例。
        我们设计的测试用例计划要力求达到最佳的详细程度,比如,在一个测试程序中要求在PC机上安装windows2000来执行测试,测试程序在其部分声明需要windows2000,但是为声明windows2000的那个版本。那么一两年内出现新版本会怎么样?测试程序需要升级来反映这个变化吗?为了避免这个问题,可以省略具体的版本,而用“可用的最新版本”这样的说明来代替。
        无比详细的测试用例说明减少了测试的随机性,使测试可以很好地重复,使得无经验的测试人员按照测试用例说明也能执行测试。但是编写如此细致的测试用例说明要花费相当多的时间和精力,并且由于细节繁多,也会阻滞测试工作,造成测试执行时间变长。
        开始编写测试用例时,最好是采用当前项目的标准,同时需要根据ANSSI/IEEE 829标准定义的格式,看什么符合项目要求,并可以做适当的调整。不同的测试工程师设计的测试用例也会有所不同。通常有经验的测试工程师设计出的测试用例,在深度及广度上会比经验少的测试工程师要完整,这也是所谓的测试经验值。举例来讲,客户反映前一版V1.3的软件在windows98的环境下运行时,在屏幕保护程序激活后会产生问题,开发工程师将这问题解决并且已提交修改正版本供客户网络下载,并且目前开发工程师所开发的软件最新版本为V1.5版,软件测试工程师就必须在V1.5版的测试用例内,加入屏幕保护程序激活测试用例,甚至将这个用例增加至其他的测试平台。
 
 

测试用例的编写

一、测试用例的概念  测试用例是为特定目标而开发测一组测试输入、执行条件和预期结果,其目标可以是测试某个程序路径或核实是否满足某个特定的需求。二、测试用例的编写    1、测试用例文档的编写    编... 查看详情

测试用例的编写

在这里和大家聊聊测试用例编写的问题。做一名测试人员,最基本的就是测试用例的编写。文档功底一定要有。我们来说说用例的编写需要的东西。首先,用例的模板网上有很多。这些都是根据个人习惯的,但是再变,其核心内... 查看详情

测试2:编写测试用例的方法(代码片段)

2.编写测试用例的方法==7种==测试常用的方法:codereview+代码静态分析、CI/CDCI--持续集成--开发成员经常集成它们的工作,尽快发现集成错误CD--持续部署--将集成后的代码部署到更贴近真实运行的环境2.1测试用例的描述:用例编号... 查看详情

测试用例的设计步骤

测试用例的设计步骤作为测试新人,如何实现测试用例的设计一直是我的一个疑惑,在工作中写过几个项目的测试用例,尝试总结一个测试用例的设计步骤。前提:编写测试用例之前我们需要对项目的需求有清晰的了解,对要测... 查看详情

测试用例——从认识到编写

目录一、为什么需要测试用例二、测试用例的概念三、测试用例的编写流程四、测试用例的内容五、测试用例编写方式六、测试用例编写实战七、小小的建议一、为什么需要测试用例在了解测试用例的编写技巧前,我们需要... 查看详情

selenium测试用例的编写(代码片段)

开头用配置好的selenium进行一个简单的测试用例的编写,可以参考allure的美化这一遍博文https://www.cnblogs.com/c-keke/p/14837766.html代码编写新建一个测试用例test_02.py,开启一个远程selenium调试,编写如下代码#!/usr/bin/envpython#-*-encoding:utf-8... 查看详情

测试用例——从认识到编写

目录一、为什么需要测试用例二、测试用例的概念三、测试用例的编写流程四、测试用例的内容五、测试用例编写方式六、测试用例编写实战七、小小的建议一、为什么需要测试用例在了解测试用例的编写技巧前,我们需要... 查看详情

软件测试复习----测试用例的编写

软件测试的编写有这几大不可缺少的元素测试目标测试环境输入数据步骤期望结果看例题:根据如下登录界面设计两个测试用例设计两个测试用例,我们可以从正反两面设计。设计一个正确成功登录的用例、再设计一个... 查看详情

软件测试用例的设计和编写

一、为什么要写测试用例  写测试用例可以让测试的需求覆盖更加全面,让测试工作进行得条理有序,且方便移交和交流好的测试用例要做到:结构设置和理,case覆盖全面,且具有可执行性,可重复等特点。二、软件测试文... 查看详情

前端面试,备考第12天-原型与原型链

前言⭐️⭐️⭐️本文首发自前端修罗场(点击即可加入社区),一个专注Web技术、问题答疑、面试辅导、职业发展的社区。 查看详情

如何编写测试用例

如何编写测试用例用例的五个构成元素:用例标题前置条件测试步骤期望结果后置条件下面从这五个元素的角度,去剖析如何编写测试用例用例标题用例标题就是测试点名称。用例标题是用来说明这个用例的测试目的的,好的用... 查看详情

测试用例编写思路

  测试用例的编写可不简单呢,写一份专业的测试用例,是所有测试工作者考虑的内容,其实用例的编写是可以通过一些思路来进行,不少比较成熟的公司为了提升用例的专业性,就会有自己的用例库,包括流程、关注点... 查看详情

测试用例库的积累

  测试用例的积累主要涉及如何编写测试用例,测试用例的重点以及测试方式的划分以及测试用例如何积累三个问题,下面我主要从这三个方式进行说明:  一、如何编写测试用例   许多测试类书籍中都... 查看详情

cypress系列(12)-cypress编写和组织测试用例篇之断言(代码片段)

...https://www.cnblogs.com/poloyy/category/1768839.html 前言断言是测试用例的必要组成部分没有断言,咱们就不知道测试用例的有效性,到底通过没通过Cypress的断言基于Chai断言库,并且增加了对Sinon-Chai、Chai-jQuery断言库的支持,其中就包... 查看详情

七分钟教会你如何编写一个合格的测试用例(代码片段)

1、测试用例编写依据测试用例编写应严格根据PRD(产品说明书)没有PRD应根据与客户的沟通和确认结果编写开发的技术文档和流程图2、测试用例的组成元素【用例编号】测试用例的编号。【用例等级】测试用例的重要级... 查看详情

编写测试用例的方法

...数据输入的地方,就可以使用等价类划分法。如:输入框测试思想:从大量数据中划分范围(等价类),然后从每个范围中挑选代表数据,这些代表数据要能反应这个范围内数据的测试结果。概念:有效等价类:对程序来说,有... 查看详情

第二周学习总结

软件测试部分1.测试用例的概念  2.测试用例的属性、特征  属性:用例ID、用例名称、测试目的、测试级别、参考信息、测试环境、前提条件、测试步骤、预期结果、编写人员、测试结论  特征:最有可能抓住错误的、不... 查看详情

测试用例的编写

1.白盒测试语句覆盖判定覆盖条件覆盖判定/条件覆盖多重条件覆盖 语句覆盖:通常没什么用判定覆盖:使得每一个判断至少有一个为真和为假的结果条件覆盖:确保将一个判断中的每个条件的所有可能的结构至少执行一次判... 查看详情