文档详情

[黑盒测试基本方]之等价类与边界值.docx

发布:2018-12-31约6.64千字共10页下载文档
文本预览下载声明
测试用例设计方法之等价类划分与边界值分析 等价类划分 前言 我们知道软件测试是根据软件开发各个阶段的规格说明和程序的内部结构而精心设计一批测试用例,并利用这些测试用例运行软件,以发现软件错误的过程。但在设计测试用例时,往往程序的输入是不可能穷举的。因此,我们在测试某个程序时就被限制在从所有的输入条件中挑选某个小的子集来设计测试用例。选择这个子集的前提是必须保证子集是正确的,保证子集尽可能的发现最多的错误,保证子集能代表其他大部分的测试用例,保证子集的数量是最为合理的。 定义 在前言中提到的“子集”,因为他们一个个具有代表性的集合,我们将这个“子集”称为等价类。等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某个等价类的代表值就等于对这一类其他值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。 等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。 方法应用 使用等价类划分方法来做测试,主要分两个步骤:确定等价类,生成测试用例。 确定等价类 确定等价类的过程是根据规格说明选取每一个输入条件将其划分为两个或更多的组。一般将等价类分为两类,有效等价类和无效等价类。有效等价类代表对程序的有效输入。无效等价类代表的则是其他任何可能的不正确的输入。遵循“有效”,“无效”这个两个原则我们可以设计一个等价类表,确定等价类的结果就是生成一个等价类表。 等价类表格式: 输入 有效等价类 无效等价类 生成测试用例 根据第一步的等价类表来生成测试用例,其过程如下: 为每一个等价类设置一个不同的编号 编写新的测试用例,尽可能多地覆盖那些尚未被覆盖的有效等价类,直到所有的有效等价类都被测试用例所覆盖。也就可理解为一个测试用用例可以涵盖多个有效等价类。 编写新的测试用例,覆盖一个且一个尚未被覆盖的无效等价类,直到所有的无效等价类都被测试用例所覆盖。也就可以理解为一个测试用例只能涵盖一个无效等价类。 生成一个测试用例表: 测试用例编号 用例描述 覆盖有效等价类 覆盖无效等价类 一个范例 需求规格说明 在各种输入条件下,测试程序的登录对话框功能。 用户名和密码的规则如下: 用户名长度为6至10位(含6位和10位) 用户名由字符(a-z、A-Z)和数字(0-9)组成 不能为空、空格和特殊字符 密码规则同用户名规则 根据规格说明生成等价类表 这里做用户名输入的测试,因为密码输入和它一样(照样再做一套测试用例就可) 输入 有效等价类 无效等价类 用户名长度 6~10位 小于6位, 或大于10位 用户名组成 字符(a~z或A~Z)和数字(0~9) 非英文字符和数字 不为空 空 无空格 空格 无特殊字符 特殊字符 为每一个等价类设置一个不同的编号 输入 有效等价类 无效等价类 用户名长度 6~10位 ① 小于6位,⑥ 或大于10位 ⑦ 用户名组成 字符(a~z或A~Z)和数字(0~9) ② 非英文字符和数字 ⑧ 不为空 不空 ③ 空 ⑨ 无空格 无空格 ④ 有空格 ⑩ 无特殊字符 无特殊字符 ⑤ 有特殊字符 eq \o\ac(○,11) 设计测试用例 测试用例编号 用例描述 覆盖有效等价类 覆盖无效等价类 1 AgdcAF12 eq \o\ac(○,1)②③④⑤ 2 AGdfg1343affg ⑦ 3 afa ⑥ 4 !@?、\/ ⑧ 5 ⑨ 6 Agaf re54 ⑩ 7 Agafre54#% eq \o\ac(○,11) 等价类划分小结测试题 填空题: 等价类划分法中等价类一般分为_____ eq \o\ac(○,1)_______和_____ eq \o\ac(○,2)_______两个分类,对于_____ eq \o\ac(○,1)_______可以一个测试用例覆盖多个等价类,对于_____ eq \o\ac(○,2)_______则一个测试用例只能覆盖一个等价类。 使用等价类划分的过程一般是先根据规格说明确定 eq \o\ac(○,3) 再根据 eq \o\ac(○,3) 设计出 eq \o\ac(○,4) 设计题: 保险费率计算 某保险公司承担人寿保险,该公司保费计算方式为投保额*保险率,保险率又依点数不同而有别,10点以上费率为0.6 %,10点以下费率为0.1% : 输入数据说明。 年龄 20~39岁 6点 40~59岁 4点 60岁以上20岁以下 2点 性别 MALE 5点 FEMALE 3点 婚姻 已婚 3点 未婚 5点 抚养人数 一人扣0.5
显示全部
相似文档