软件测试用例_第1页
软件测试用例_第2页
软件测试用例_第3页
软件测试用例_第4页
软件测试用例_第5页
已阅读5页,还剩99页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、王雯佳软件测试用例本节内容1.1.了解了解用例的粒度用例的粒度2.2.不同不同类型测试的用例要怎么写?类型测试的用例要怎么写?3.3.什么是测试用例及为什么要做用例什么是测试用例及为什么要做用例4.4.优质测试用例应具备的特性优质测试用例应具备的特性5.5.测试用例设计方法测试用例设计方法6.6.测试用例数据选取方法测试用例数据选取方法7.7.测试用例书写标准测试用例书写标准8.8.一些测试用例的例子一些测试用例的例子测试需求的粒度一个样例一个样例及其简单需要正确输入需要正确输入QQ号码和口令号码和口令简单检查检查QQ号的各种情况号的各种情况检查口令的各种情况检查口令的各种情况详细1、检查检查

2、QQ号码号码大于允许最大长度大于允许最大长度包含特殊字符包含特殊字符全部为数字全部为数字为空为空空格空格错误的错误的QQ号号正确的正确的QQ号号详细(续)2、检查口令检查口令大于允许最大长度大于允许最大长度包含特殊字符包含特殊字符全部为数字全部为数字 各种字符的组合各种字符的组合为空为空空格空格错误的口令错误的口令正确的口令正确的口令系统功能需求根据系统架构,从高到低逐级细分关注具体的系统功能及功能的不同处理情形粒度以到不同的处理情形为宜正常与异常处理情形都要考虑问题:测试需求的粒度跟哪些因素相关?界面需求 界面功能 根据界面划分 考虑控件对各种输入的响应 界面元素 考虑元素各种属性(位置、大

3、小、颜色、显示等) 先整体后局部 局部按界面划分 考虑内容正确性安装需求缺省安装配置优先按照安装配置结构划分考虑所有安装配置考虑安装过程中的异常行为业务需求根据业务结构和分类,从上至下逐级细分关注具体业务粒度以到不同业务场景为宜考虑正常与异常业务场景 性能/压力需求先结构后类型先列举后细分细述指标和要求安全性需求先列举后细分详述各项内容兼容性需求先硬件后软件先系统后应用详述环境组合测试范围在测试项目中,我们需要进行开发生命周期中哪些阶段测试 单元测试 集成测试 系统测试 验收测试例如: 在为A公司(某软件开发公司)提供的一个测试服务项目中,测试的范围包括集成测试和系统测试。 在为B公司(某行业

4、用户企业)提供的一个测试服务项目中,测试的范围只包括验收测试。 项目的测试目标 系统的哪些特性需要被测试以保证这些特性的质量。 系统特性包括:功能、性能、易用性、安全性、兼容性 测试目标要根据系统的特点进行分解细化,分解到一个可测试的粒度,即单项具体的特性。 未经分解细化,笼统的、整体或者概括性的特性不利于测试工作的开展。 测试需求注意事项作为测试项目的基础,测试需求有5个需 要依据的准则:完整性无歧义性一致性可跟踪性可测试性18测试用例概述 测试用例是测试工作的指导,是软件测试必须遵守的准则。更是软件测试质量稳定的根本保障。 测试用例的内容是一系列情景和步骤的描述,并对每个步骤中必须列出依靠

5、输入的数据,预计输出结果。将这一过程整理成测试文档,称为测试用例。 测试用例就是将软件测试的行为活动,做一个科学化的组织归纳。 是思想活动的集合。19为什么需要测试用例根据测试用例的多少和执行难度,估算测试工作量,便于测试项目的时间和资源管理与跟踪;减少回归测试的复杂程度在软件版本更新后只需修正少量的测试用例便可展开测试工作,降低工作强度、缩短项目周期;根据测试用例的操作步骤和执行结果,可以方便地书写软件测试缺陷报告;可以根据测试用例的执行等级,实施不同级别的测试;总结:软件测试是有组织性、步骤性和计划性的,为了能将软件测试的行为转换为可管理的、具体量化的模式,20优质测试用例应具备的特性.1

6、21优质测试用例应具备的特性.222测试用例设计思路测试用例的设计是一种思路,可以从如下角度分析:(1)根据被测软件的功能和特性设计测试用例 - 根据被测试功能点设计测试用例 - 根据软件性能指标设计测试用例 - 根据软件的兼容性要求设计测试用例 - 根据软件的国际化用户要求设计国际化测试用例(2)根据软件的组成元素设计测试用例 - 根据模块设计用例 - 设计联机帮助和文档手册的设计用例 - 设计软件的模版等数据文件的测试用例(3)根据软件的开发阶段(里程碑)设计测试用例 - 单元测试设计用例 - 集成测试设计用例 - 系统测试设计用例 - 验收测试设计用例23测试用例设计思路(续)(5)根据

7、被测的最小目标,确定测试用例的测试目标(6)根据用户使用环境确定测试环境(7)根据以下因素确定测试用例的步骤 用户使用软件的步骤或者特定场景,确定测试执行步 骤地具体内容 执行者对产品的熟悉程度确定步骤的详细或粗略程度 被测特性的复杂性也决定步骤的详细或粗略程度 测试用例的执行方法(手工测试或自动化测试)确定 步骤地内容表示 自动测试用例要编写和调试测试脚本,手工测试给出 执行步骤 根据设计规格说明书确定期望的测试用例执行结果24测试用例设计方法25等价类划分.126等价类划分.227划分等价类的原则.128划分等价类的原则.229划分等价类的原则.330划分等价类的原则.431划分等价类的原

8、则.5 (5) (5) 在规定了输入数据必须遵守的规则情况下,在规定了输入数据必须遵守的规则情况下,可确立一个有效等价类可确立一个有效等价类( (符合规则符合规则) )和若干个无效和若干个无效等价类等价类( (从不同角度违反规则从不同角度违反规则) )。32根据等价类划分选取用例/数据33划分等价类的实例.134划分等价类的实例.2某工厂公开招工,在报名系统年龄输入框中规定报名者年龄应在某工厂公开招工,在报名系统年龄输入框中规定报名者年龄应在1967年年02月月1986年年03月之间。月之间。即出生年月不在上述范围内,将拒绝接受,并显示即出生年月不在上述范围内,将拒绝接受,并显示“年龄不合年龄

9、不合格格”等出错信息。等出错信息。 35输入数据有效等价类无效等价类出生年月6位数字字符 有非数字字符 少于6个数字符 多于6个数字符对应数值 在196702198603之间198603月份对应数值在112之间等于“0” 12划分等价类的实例.336一个很重要的例子.1根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。“一个程序读入一个程序读入3个整数,把这三个数值看作一个三角形的个整数,把这三个数值看作一个三角形的3条边的长度值。这条边的长度值。这个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边

10、的。个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。” 37一个很重要的例子.2我们可以设三角形的我们可以设三角形的3条边分别为条边分别为A,B,C。如果它们能够构成三角形的。如果它们能够构成三角形的3条边,条边,必须满足:必须满足:A0,B0,C0且且A+BC,B+CA,A+CB。如果是等腰的,还要判断如果是等腰的,还要判断A=B,或,或B=C,或,或A=C。如果是等边的,则需判断是否如果是等边的,则需判断是否A=B,且,且B=C,且,且A=C。38一个很重要的例子.3输入条件输入条件有效等价类有效等价类无效等价类无效等价类 是否是否三边都大三边都大于于0 0(A0) a

11、nd (B0)and (C0) (1)(A0) and (B0)and (C0) (1)(A0)(A0), (2)(2)(B0)(B0), (3)(3)(C0)(C0), (4)(4) 是否是否两边之和两边之和大大于第三边于第三边(A+BC)and(B+CA)and(A+CB) (5)(A+BC)and(B+CA)and(A+CB) (5)(A+BC)(A+BC), (6)(6)(B+CA)(B+CA), (7)(7)(A+CB)(A+CB), (8)(8) 是否是否等腰三角等腰三角形形(A=B)(A=B), (9)(9)(B=C)(B=C), (10)(10)(C=A)(C=A), (11)

12、(11)(AB)and (12)(AB)and (12)(BC)and(BC)and(CA)(CA) 是否是否等边三角等边三角形形(A=B)and(B=C)and(C=A) (13)(A=B)and(B=C)and(C=A) (13)(AB)(AB), (14)(14)(BC)(BC), (15)(15)(CA)(CA), (16)(16)39一个很重要的例子.4序号序号【A,B,C】覆盖等价类覆盖等价类输出输出1【3 3,4 4,5 5】(1 1),(),(5 5)一般三角形一般三角形2【0 0,1 1,2 2】(2 2)不能构成三角形不能构成三角形3【1 1,0 0,2 2】(3 3)4【

13、1 1,2 2,0 0】(4 4)5【1 1,2 2,3 3】(1 1),(),(6 6)6【1 1,3 3,2 2】(1 1),(),(7 7)7【3 3,1 1,2 2】(1 1),(),(8 8)8【3 3,3 3,4 4】(1 1),(),(5 5),(),(9 9)等腰三角形等腰三角形9【3 3,4 4,4 4】(1 1),(),(5 5),(),(1010)10【3 3,4 4,3 3】(1 1),(),(5 5),(),(1111)11【3 3,4 4,5 5】(1 1),(),(5 5),(),(1212)非等腰三角形非等腰三角形12【3 3,3 3,3 3】(1 1),(),

14、(5 5),(),(1313)是等边三角形是等边三角形13【3 3,4 4,4 4】(1 1),(),(5 5),(),(1010),(),(1414)非等边三角形非等边三角形14【3 3,4 4,3 3】(1 1),(),(5 5),(),(1111),(),(1515)15【3 3,3 3,4 4】(1 1),(),(5 5),(),(9 9),), (1616)40因果图因果图42因果图43因果图44因果图 - 基本符号.1若a1则b1若a1则b045因果图 - 基本符号.2若a或b或c1则d1 若ab1则c146因果图 - 约束条件.147因果图 - 约束条件.248因果图 - 约束条

15、件.349因果图 - 约束条件.450因果图 - 约束条件.551因果图示例.152因果图示例.253因果图示例.354因果图示例.4已投币已按钮55因果图示例.512345678输入投入1元111100000投入5角200011100按下橙汁310010010按下啤酒401001001中间节点已投币1111111100已按钮1211011011输出退还5角2111000000送出橙汁2210010000送出啤酒2301001000因果图法测试举例u奖金计算软件员工分为普通员工和管理人员员工表现分为普通,优秀和特出贡献(普通和优秀员工都可能有特殊贡献,普通员工表现为普通、优秀和管理人员表现为普

16、通、优秀的奖金是不同的,特殊贡献的奖金是一样的)奖金分为1类,2类解题步骤:(1)分析程序的规格说明,列出原因和结果。(2)找出原因与结果之间的因果关系、原因与原因之间的约束关系,画出因果图。(3)将因果图转换成决策表。(4)根据(3)中的决策表,设计测试用例的输入数据和预期输出。因果图法测试举例(续)(1)分析程序规格说明中的原因和结果:原因原因结果结果普通员工普通员工 1类奖金类奖金管理人员管理人员 2类奖金类奖金表现普通表现普通 3类奖金类奖金表现优秀表现优秀 4类奖金类奖金特殊贡献特殊贡献 5类奖金类奖金因果图法测试举例(续)(2)画出因果图(编号为10的中间结点是导出结果的进一步原因

17、):c1c2c3e1e2e3Ec4c5e4e5e6CI表示原因,EI表示结果。E11v因果图法测试举例(续)(3)将因果图转换成如下所示的决策表:因果图法测试举例(续)(4)根据决策表中的每一列设计测试用例:测试用例编号测试用例编号输入数据输入数据预期输出预期输出1普通员工,表现普通普通员工,表现普通1类奖金类奖金2普通员工,表现优秀普通员工,表现优秀2类奖金类奖金3普通员工,表现普通,特殊普通员工,表现普通,特殊贡献贡献3类奖金类奖金4普通员工,表现优秀,特殊普通员工,表现优秀,特殊贡献贡献4类奖金类奖金.61判定表驱动分析方法.1 判定表又称为决策表。判定表又称为决策表。当模块中包含当模块

18、中包含复杂的条件组合复杂的条件组合,并要根据这些条件,并要根据这些条件选择动作选择动作时,使用判定表能时,使用判定表能清晰地表示出复杂的条件组合与各种动作之间的对应关系。清晰地表示出复杂的条件组合与各种动作之间的对应关系。判定表举例 规则取值12345678问题觉得疲倦YYYYNNNN感兴趣吗YYNNYYNN糊涂吗?YNYNYNYN建议重读继续跳下一章休息条件桩动作桩条件项动作项63判定表驱动分析方法.2 一张判定表的田字型结构:条件桩、条件项、动作一张判定表的田字型结构:条件桩、条件项、动作项、动作桩规则。项、动作桩规则。 决策表的读表方法:顺时针方向。决策表的读表方法:顺时针方向。 条件桩

19、 条件项 (条件的组合) 动作桩 动作项64判定表驱动分析方法.3 条件桩:列出了问题的所有条件。通常认为列出的条件的次序无关紧要。 动作桩:列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。 条件项:列出针对它所列条件的取值,在所有可能情况下的真假值。 动作项:列出在条件项的各种取值情况下应该采取的动作。65判定表驱动分析方法.4判定表的绘制步骤:判定表的绘制步骤:判定表中列出多少组条件取值,也就有多少条规则,条件项和动作项就有多判定表中列出多少组条件取值,也就有多少条规则,条件项和动作项就有多少列。少列。 确定规则的个数。假如有确定规则的个数。假如有n n个条件,每个条个条件,每个

20、条件有两面个取值件有两面个取值(0,1)(0,1),故有,故有2n2n种规则。种规则。 列出所有的条件桩和动作桩列出所有的条件桩和动作桩 填入条件项填入条件项 填入动作项。制定判定表填入动作项。制定判定表 简化。合并相似规则或者相同动作。简化。合并相似规则或者相同动作。66判定表驱动分析方法.2 举例举例 问题说明:问题说明:“某货运站收费标准如下:如果收件地点在某货运站收费标准如下:如果收件地点在本省,则快件每公斤本省,则快件每公斤5 5元,慢件每公斤元,慢件每公斤3 3元;如果收件地元;如果收件地点在外省,则在点在外省,则在2020公斤以内(含公斤以内(含2020公斤)快件每公斤公斤)快件

21、每公斤7 7元,元,慢件每公斤慢件每公斤5 5元,而超过元,而超过2020公斤时,快件每公斤公斤时,快件每公斤9 9元,慢元,慢件每公斤件每公斤7 7元。元。” 67判定表驱动分析方法.5条件取值分析表条件取值分析表 条件取值含义收件地址在本省?Y是N否邮件重量20公斤?Y是N否快慢件?Y快件N慢件68判定表驱动分析方法.6判定表判定表12345678条件桩收件地址在本省?YYYYNNNN条件项邮件重量20公斤?YYNNYYNN快慢件?YNYNYNYN动作桩3元/公斤XX动作项5元/公斤XXX7元/公斤XX9元/公斤X69判定表驱动分析方法.7YYN NYN*Y-N*p 简化判定表简化判定表7

22、0判定表驱动分析方法.8 化简后的判定表化简后的判定表 123456条件桩收件地址在本省?YYNNNN条件项邮件重量500Y是是N否否过期过期Y是是N否否1234条件桩条件桩500YYNN过期过期YNYN动作桩动作桩发出批发出批准单准单XXX发出提发出提货单货单XXX发出通发出通知单知单Xv 判定表123条件桩条件桩500Y-N过期过期YNY动作桩动作桩发出批发出批准单准单XX发出提发出提货单货单XX发出通发出通知单知单Xv 简化判定表v 设计测试用例v 以上判定表里,右部的每一列(条件项和对应的动作项)都是一条规则。每一条规则都可以转化为测试用例。测试用例测试用例编号编号ORDER_ST_C

23、HECK_001测试项目测试项目 订购单的检查订购单的检查测试标题测试标题 状态为未过期状态为未过期重要级别重要级别 高高预置条件预置条件 无无输入输入499操作步骤操作步骤 1.输入金额:输入金额:4992.选择未过期选择未过期3.点击确定点击确定预期输出预期输出 发出批准单和提货单发出批准单和提货单77错误推测法.178错误推测法.279错误推测法.3Sql注入式攻击注入式攻击是指利用设计上的漏洞,在服务器上运行Sql 命令以达到的攻击目的 Select * from 用户表 where 姓名=name and 密码=password Select * from 用户表 where 姓名=

24、111 or 1=1 and 密码=aaaa80用例数据选取-边界值分析.181边界值分析.2 1:依据边界值分析法确定测试用例依据边界值分析法确定测试用例 Id 110个字母 地址 010个汉字 邮编 6个数字82边界值分析.383边界值分析.484测试用例书写标准.185测试用例书写标准.286一个简单的例子87一个简单的例子.1字段字段名称名称描述描述标示符TextEditProject-File-0007测试项记事本,“文件”菜单栏中“文件”|”退出”命令的功能测试文档拥有者版本编号YLXVer 1.0.0.0 CreateData 2007年12月01日测试环境WindowsXP 中

25、文版测试动作描述打开windows记事本程序,鼠标单击“文件”|”退出”命令88一个简单的例子.2字段名称描述测试用例测试用例项项(1)打开windows记事本程序,不输入任何字符,鼠标单击“文件”|”退出”命令(2)打开windows记事本程序,输入一些字符,不保存文件,鼠标单击“文件”|”退出”命令(3)打开windows记事本程序,输入一些字符,保存文件,鼠标单击“文件”|”退出”命令(4)打开一个windows记事本文件(扩展名txt),不做任何修改,鼠标单击“文件”|”退出”命令(5)打开一个windows记事本文件(扩展名txt),修改后不做任何保存,鼠标单击“文件”|”退出”命令

26、(6)打开一个windows记事本文件(扩展名txt),修改后保存,鼠标单击“文件”|”退出”命令89一个简单的例子.3预期值(1)正确退出,无任何提示信息(2)提示“某文件内容已经改变,想保存文件吗?”提示框,单击“是”按钮,文件保存后退出(3)正确退出,无任何提示信息(4)正确退出,无任何提示信息(5)提示“某文件内容已经改变,想保存文件吗?”提示框,单击“是”按钮,文件保存退出(6)正确退出,无任何提示信息90一个简单的例子.3字段名称字段名称描述描述测试数据(1)无(2)!#¥%*()哎呀哎呀哎呀1234567890(3) !#¥%*()哎呀哎呀哎呀1234567890 (4)无(5)

27、 !#¥%*()哎呀哎呀哎呀1234567890(6) !#¥%*()哎呀哎呀哎呀1234567890测试用例间关联TextEditProject-File-0009快捷键测试用例91测试用户登录对话框的功能 测试场景:测试场景: 在各种输入条件下,测试程序的登录对话框功能 用户名和密码的规则如下:用户名和密码的规则如下: 用户名长度为6至10位(含6位和10位) 用户名由字符(a-z、A-Z)和数字(0-9)组成 不能为空、空格和特殊字符 密码规则同用户名规则 92登录对话框的功能(续1)操作步骤操作步骤预期结果预期结果输入正确的用户名和口令(均为6位),点击OK按钮进入系统输入正确的用户名

28、和口令(均为10位) ,点击OK按钮进入系统输入正确的用户名和口令(均为6至8位之间),进入系统用户名为空,提示输入用户名不能进入系统用户名为空格,提示无效用户名不能进入系统用户名小于6位,提示用户名太短不能进入系统93登录对话框的功能(续2)“用户名用户名”“口令口令”“预期结果预期结果”说明说明“user10”“pass10”进入系统正确的用户名和口令(6位)“user789”“pass789”进入系统正确的用户名和口令(7-9位)“user000010”“pass000010”进入系统正确的用户名和口令(10位)“”“pass”提示输入用户名不能进入系统用户名为空“空格”“pass”提示

29、无效用户名不能进入系统用户名为空格“user”“userpass”提示用户名太短不能进入系统用户名小于6位“user0000011”“userpass”提示用户名太长不能进入系统用户名大于10位94数据驱动测试(DATA DRIVEN)概要概要 是一种成熟的自动化测试技术是一种成熟的自动化测试技术 强调测试逻辑与测试数据分离强调测试逻辑与测试数据分离 对于手工测试也是很好的方法对于手工测试也是很好的方法 适用于需要用不同数据进行重复测试的适用于需要用不同数据进行重复测试的情形情形 通过测试数据调整测试覆盖率通过测试数据调整测试覆盖率95原理1.以参数代替测试步骤中原始数据以参数代替测试步骤中原

30、始数据2.测试数据依参数保存在数据文件中(测试数据依参数保存在数据文件中(Excel)3.测试步骤和测试数据相对分离测试步骤和测试数据相对分离4.执行时将测试数据按参数代入测试步骤执行执行时将测试数据按参数代入测试步骤执行96举例普通测试在用户名输入框输入“张三”在口令输入框输入“123456”点击“登录”按钮结果:进入论坛数据驱动测试在用户名输入框输入在口令输入框输入点击“登录”按钮结果:用户名口令结果张三123456进入论坛张三234561提示密码错误,不能进入论坛97优点大大简化了测试步骤大大简化了测试步骤通过分离测试逻辑和测试数据,使设计测试逻辑和数据时分别关注于使用各自通过分离测试逻

31、辑和测试数据,使设计测试逻辑和数据时分别关注于使用各自的设计方法的设计方法有利于测试分工的细化有利于测试分工的细化测试逻辑更加简洁易懂测试逻辑更加简洁易懂很容易转化成自动测试脚本很容易转化成自动测试脚本98样例一个简单的转账业务:一个简单的转账业务:1. 用户输入信息:用户输入信息:转出账户的账号和密码、转入账号、金转出账户的账号和密码、转入账号、金额以及备注信息额以及备注信息2. 点击转账按钮进行转账点击转账按钮进行转账3. 检查提示信息是否正确检查提示信息是否正确99样例:普通测试用例Action:Simple Transfer DemoAuthor:YANGLINXIDate:2007.

32、6.21Type:Normal TestingNo.Test Step1Enter 1000000001 in Source Acc Edit Box2Enter 123456 in Password Pass Box3Enter 1000000002 in Target ACC Edit Box4Enter 1000 in Amount Edit Box5Enter some comments in Remark Edit Box6Click Transfer button7Transfer Success should be showed in Message MsgBox100样例:数据驱动测试用例.1Action:Simple Transfer DemoAuthor:yanglinxiDate:2007.6.21Type:Data Driven TestingNo.TestStep1Enter in Source Acc Edit Box2Enter in Password Pass Box3Enter in Target ACC Edit Box4Enter in “Amount” Edit Box5Enter some comments in Remark Edit Box6Click Tr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论