理解测试用例

1. 测试用例的设计需要遵守

  (1)制定测试用例的策略和思想,在测试计划中描述出来

  (2)设计测试用例的框架,也就是测试用例的结构

  (3)细化结构,逐步设计出具体的测试用例

  (4)通过测试用例的评审,不断优化测试用例

 

2. 为什么需要测试用例,简述以下几方面

  (1)测试用例是测试人员在测试过程中的重要参考依据

  (2)测试用例可以帮助实施有效的测试

  (3)良好的测试用例不断地被重复使用,使得测试过程事半功倍

  (4)测试用例是一个知识积累的过程

 

3. 测试用例的元素(5W1H)

  (1)测试目标Why,为什么而测?功能、性能、可用性、容错性、兼容性、安全性等

  (2)测试对象What,测什么?被测试的项目,如对象、函数、类、菜单、按钮、表格、接口、整个系统等

  (3)测试环境Where,在哪儿测?测试用例的运行环境,包括系统配置、设定、操作系统、浏览器、通讯协议等

  (4)测试前提When,什么时候开始测?测试用例运行时的前提或条件

  (5)输入数据Which,哪些数据?在操作时,系统所接受的各种可变化的数据

  (6)操作步骤How,如何测?执行软件和程序的先后次序步骤等

 

4. 功能测试用例设计时,一般操作流程

  (1)模块划分

  (2)确定哪些模块适合手工测试,哪些模块适合自动化测试

  (3)根据功能结构及其关系,抓住测试点

  (4)首先设计最上层的测试用例,然后再向下逐层推进

  (5)测试用例的评审

 

5. 功能测试可以从以下几个方面进行测试

  (1)界面测试:整体布局的合理性,是否清晰、美观等

  (2)数据测试:接受正确的数据输入,并对异常数据的输入有提示和容错处理

  (3)操作测试:内容包括所有菜单、按钮的设计须符合操作习惯,能对操作有正确的响应,而且操作灵活、符合用户的习惯等

  (4)逻辑测试:是否逻辑合理、清楚、流程不复杂

  (5)接口测试:让接口能配合多种硬件周边设备

 

6. 软件测试用例的设计方法

  (1)等价类划分法

  (2)边界值分析方法

  (3)因果图

  (4)功能图

  (5)错误推测方法

 

7. 等价类划分法

  (1)把所有可能的输入数据,即程序的输入数据集合划分成若干个子类(即等价类),然后从每一个等价类中选取少数具有代表性的数据作为测试用例

  (2)有效等价类:输入完全满足程序输入的规格说明,可以检验程序是否满足规格说明所规定的功能和性能

  (3)无效等价类:不满足程序输入需要或者由无效输入数据构成的集合

 

8. 边界值分析法

  (1)开发人员往往忽视边界条件

  (2)只有边界值确定下来,才能划分出有效等价类和无效等价类

  (3)不仅要选取边界值作为测试数据,还要选取刚刚大于和刚刚小于边界值的数据作为测试数据

 

9. 因果图法

  (1)等价类划分法和边界值分析法,主要针对单个输入数据来设计测试用例的,没有考虑多种输入数据的组合情况

  (2)因果图法,利用图解法分析软件输入和输出条件之间的关系,以设计测试用例方法

  (3)因果图法适合于检查程序输入条件的多种情况的组合,最终生成判定表

 

10. 错误推测法

  (1)根据经验,尽量列举程序中所有可能出现的错误和值得怀疑的地方,从中做出选择,以设计测试用例

 

11. 如何保证测试用例的质量

  (1)对用户需求、服务质量要求、产品特性有深刻且全面的理解

  (2)采取正确、恰当的方法进行用例设计

  (3)按照测试用例的标准格式或规范的模板来书写测试用例

  (4)对测试用例进行检查、评审

 

12. 好的测试用例

  (1)测试范围覆盖率高

  (2)测试用例设计能反向思维,有效地发现缺陷

  (3)易用性

  (4)易读性,前提条件、步骤和期望结果等描述清楚、准确

  (5)易维护性

 

13. 测试用例从正、反两方面进行检查。正面测试用例要求全面,反面测试用例要有创造性

  (1)设计正面测试用例,应参照需求规格说明书。基本事件的测试用例应包含所有需要实现的需求功能,覆盖率达100%

  (2)设计反面测试用例,需要考虑错误输入或异常输入

 

14. 若以下回答都为“是”,则意味着测试用例通过了评审

  (1)在设计测试用例前,是否先画好UML时序图、状态图或数据流程图等?

  (2)是否有常见错误表供编写测试用例使用?

  (3) 测试用例的设计思路合理吗?与产品设计、技术设计吻合吗?

  (4)测试用例的结构层次清晰、合理吗?

  (5) 软件需求的所有功能点是否都有正常功能用例对应?

  (6)是否每个正常用例都有对应的异常用例?

  (7) 测试用例是否覆盖了所有的已知边界值,如特殊字符、最大值、最小值?

  (8)测试用例是否覆盖了已知的无效值,如空值、垃圾数据和错误操作等?

  (9)测试用例是否覆盖了输入条件的各种组合情况?

  (10) 测试用例是否覆盖了各种安全性问题?

  (11) 测试用例是否覆盖了负载平衡和故障转移等方面的可用性问题?

  (12)是否考虑了兼容性测试用例?如是否测试了新版本同以前版本的数据、接口的兼容性?

  (13)是否考虑了关联功能的测试用例?如用户修改了自己的邮箱地址,那么提醒、报告等是否会发送到新的地址?

  (14)是否所有的接口数据都有对应的测试用例?

  (15) 测试用例的前提条件、操作步骤描述是否明确、详尽?

  (16) 当前测试是否最小程度地依赖于先前测试或步骤生成的数据和条件?

  (17)测试用例检查点描述是否明确、完备?

  (18) 是否重用了以前的测试用例?

posted on 2017-12-28 16:00  一个不会coding的girl  阅读(1241)  评论(0编辑  收藏  举报

导航