测试用例编写规范

  1. 云栖社区>
  2. seven的测试人生>
  3. 博客>
  4. 正文

测试用例编写规范

寒凝雪 2017-07-03 11:29:00 浏览818
展开阅读全文

以前在这里看到一篇文章说,要积累各个常用模块的测试点,然后到需要测试的时候就根据这些测试点设计测试用例,我觉得这是一个好方法,就决定总结一下。我的实际经验不多,根据我在论坛中学到的零散的东西和自己的想象,总结出以下几点,欢迎各位继续补充。

  1、登陆
2、添加
3、查询
4、删除

  1、登陆
① 用户名和密码都符合要求(格式上的要求)
② 用户名和密码都不符合要求(格式上的要求)
③ 用户名符合要求,密码不符合要求(格式上的要求)
④ 密码符合要求,用户名不符合要求(格式上的要求)
⑤ 用户名或密码为空
⑥ 数据库中不存在的用户名,不存在的密码
⑦ 数据库中存在的用户名,错误的密码
⑧ 数据库中不存在的用户名,存在的密码
⑨ 输入的数据前存在空格
⑩ 输入正确的用户名密码以后按[enter]是否能登陆

  2、添加
① 要添加的数据项均合理,检查数据库中是否添加了相应的数据
② 留出一个必填数据为空
③ 按照边界值等价类设计测试用例的原则设计其他输入项的测试用例
④ 不符合要求的地方要有错误提示
⑤ 是否支持table键
⑥ 按enter是否能保存
⑦ 若提示不能保存,也要察看数据库里是否多了一条数据

  3、删除
① 删除一个数据库中存在的数据,然后查看数据库中是否删除
② 删除一个数据库中并不存在的数据,看书否有错误提示,并且数据库中没有数据被删除
③ 输入一个格式错误的数据,看是否有错误提示,并且数据库中没有数据被删除。
④ 输入的正确数据前加空格,看是否能正确删除数据
⑤ 什么也不输入
⑥ 是否指出table键
⑦ 是否支持enter键

  4、查询
精确查询:
① 输入的查询条件为数据库中存在的数据,看是否能正确地查出相应得数据
② 输入正确的查询条件以前加上空格,看是否能正确地查出相应的数据
③ 输入格式或范围不符合要求的数据,看是否有错误提示
④ 输入数据库中不存在的数据
⑤ 不输入任何数据
⑥ 是否支持table键
⑦ 是否支持enter键
模糊查询:
在精确查询的基础上加上以下一点
① 输入一些字符,看是否能查出数据库中所有的相关信息

  设计功能和界面测试用例

  1.1 文本框、按钮等控件测试

  1.1.1 文本框的测试
如何对文本框进行测试
a,输入正常的字母或数字。
b,输入已存在的文件的名称;
c,输入超长字符。例如在“名称”框中输入超过允许边界个数的字符,假设最多255个字符,尝试输入 256个字符,检查程序能否正确处理;
d,输入默认值,空白,空格;
e,若只允许输入字母,尝试输入数字;反之;尝试输入字母;
f,利用复制,粘贴等操作强制输入程序不允许的输入数据;
g,输入特殊字符集,例如,NUL及\n等;
h,输入超过文本框长度的字符或文本,检查所输入的内容是否正常显示;
i,输入不符合格式的数据,检查程序是否正常校验,如,程序要求输入年月日格式为yy/mm/dd,实际输入yyyy/mm/dd,程序应该给出错误提示

 

  在测试过程中所用到的测试方法:
1,输入非法数据;
2,输入默认值;
3,输入特殊字符集;
4,输入使缓冲区溢出的数据;
5,输入相同的文件名;

  命令按钮控件的测试
测试方法:
a,点击按钮正确响应操作。如,单击确定,正确执行操作;单击取消,退出窗口;
b,对非法的输入或操作给出足够的提示说明,如,输入月工作天数为32时,单击”确定“后系统应提示:天数不能大于31;
c,对可能造成数据无法恢复的操作必须给出确认信息,给用户放弃选择的机会;

  单选按钮控件的测试
测试方法:
a,一组单选按钮不能同时选中,只能选中一个。
b,逐一执行每个单选按钮的功能。分别选择了“男”“女”后,保存到数据库的数据应该相应的分别为“男”“女”;
c,一组执行同一功能的单选按钮在初始状态时必须有一个被默认选中,不能同时为空;

  控件文本框的测试
测试方法:
a,直接输入数字或用上下箭头控制,如,在“数目”中直接输入10,或者单击向上的箭头,使数目变为10;
b,利用上下箭头控制数字的自动循环,如,当最多数字为253时,单击向上箭头,数目自动变为1;反之亦适用;
c,直接输入超边界值,系统应该提示重新输入;
d,输入默认值,空白。如,“插入”数目为默认值,点击“确定”;或,删除默认值,使内容为空,单击“确定”进行测试;
e,输入字符。此时系统应提示输入有误。

  组合列表框的测试
测试方法:
a,条目内容正确,其详细条目内容可以根据需求说明确定;
b,逐一执行列表框中每个条目的功能;
c,检查能否向组合列表框输入数据;

  复选框的测试
测试方法:
a,多个复选框可以被同时选中;
b,多个复选框可以被部分选中;
c,多个复选框可以都不被选中;
d,逐一执行每个复选框的功能;

  列表框控件的测试
测试方法:
a,条目内容正确;同组合列表框类似,根据需求说明书确定列表的各项内容正确,没有丢失或错误;
b,列表框的内容较多时要使用滚动条;
c,列表框允许多选时,要分别检查shift选中条目,按ctrl选中条目和直接用鼠标选中多项条目的情况;

  滚动条控件的测试
要注意一下几点:
a,滚动条的长度根据显示信息的长度或宽度及时变换,这样有利于用户了解显示信息的位置和百分比,如,word中浏览100页文档,浏览到50页时,滚动条位置应处于中间;
b,拖动滚动条,检查屏幕刷新情况,并查看是否有乱码;
c,单击滚动条;
d,用滚轮控制滚动条;
e,滚动条的上下按钮。

  各种控件在窗体中混和使用时的测试
a,控件间的相互作用;
b,tab键的顺序,一般是从上到下,从左到右;
c,热键的使用,逐一测试;
d,enter键和esc键的使用;

  在测试中,应遵循由简入繁的原则,先进行单个控件功能的测试,确保实现无误后,再进行多个控件的的功能组合的测试。

  ps:密码输入框测试时要特别注意进行字母大写输入的测试。

  查找替换操作

  案例演示:打开word中的"替换"对话框

  测试本功能有通过测试和失败测试两种情况

  通过测试:
1,输入内容直接查找,或查找全部
2,在组合框中寻找已经查找过的内容,再次查找并确认文档的内容正确,如,已经查找过"测试用例",再次进入不用重新输入查找内容,直接在文档中搜寻就可以。

  失败测试:
1,输入过长或过短的查询字符串.如,假设查询的字符串长度为1到255,那么输入0,1,2,256,255和254进行测试;
2,输入特殊字符集,如,在word中.^g代表图片,^代表分栏符,可以输入这类特殊字符测试;

  替换测试大体相同。

  关于编辑操作窗口的功能测试的用例:
1,关闭查找替换窗口.不执行任何操作,直接退出;
2,附件和选项测试.假如,设定"精确搜寻","向后"搜索等附件选项等等来测试;
3,控件间的相互作用.如,搜寻内容为空时,按钮"搜寻全部","搜寻","全部替换","替换"都为灰色。
4,热键, Tab键.回车键的使用。

  插入操作

  1,插入文件
测试的情况
a,插入文件;
b,插入图像;
c,在文档中插入文档本身;
d,移除插入的源文件;
e,更换插入的源文件的内容;

  2,链接文件
测试方法:
a,插入链接文件;
b,在文档中链接文档本身;
c,移除插入的源文件;
d,更换插入的源文件的内容。

  3,插入对象
要测试的内容
a,插入程序允许的对象,如,在word中插入excel工作表;
b,修改所插入对象的内容.插入的对象仍能正确显示;
c,卸载生成插入对象的程序,如,在word中插入excel工作表后卸载excel,工作表仍正常使用。

  编辑操作

  编辑操作包括剪切,复制,粘贴操作。

  测试剪切操作的方法
a,对文本,文本框,图文框进行剪切;
b,剪切图像
c,文本图像混合剪切

  复制操作方法与剪切类似。

  测试时,主要是对粘贴操作的测试,方法是:
a,粘贴剪切的文本,文本框及图文框;
b,粘贴所剪切的图像;
c,剪切后,在不同的程序中粘贴;
d,多次粘贴同一内容,如,剪切后,在程序中连续粘贴3次;
e,利用粘贴操作强制输入程序所不允许输入的数据。

  界面测试用例的设计方法

  1,窗体
测试窗体的方法:
a,窗体大小,大小要合适,控件布局合理;
b,移动窗体.快速或慢速移动窗体,背景及窗体本身刷新必须正确;
c,缩放窗体,窗体上的控件应随窗体的大小变化而变化;
d,显示分辨率.必须在不同的分辨率的情况下测试程序的显示是否正常;

  进行测试时还要注意状态栏是否显示正确;工具栏的图标执行操作是否有效,是否与菜单懒中图标显示一致;错误信息内容是否正确,无错别字,且明确等等;

  2,控件
测试方法:
a,窗体或控件的字体和大小要一致;
b,注意全角,半角混合
c,无中英文混合

  菜单
进行测试时要注意
a,选择菜单是否可以正常工作,并与实际执行内容一致;
b,是否有错别字:
c,快捷键是否重复;
d,热键是否重复;
e,快捷键与热键操作是否有效
f,是否存在中英文混合
g,菜单要与语境相关,如,不同权限的用户登陆一个应用程序,不同级别的用户可以看到不同级别的菜单并使用不同级别的功能;
h,鼠标右键快捷菜单

  特殊属性
1,安装界面应有公司介绍或产品介绍,有公司的图标
2,主界面及大多数界面最好有公司图标
3,选择"帮助"->"关于"命令,应 看见相关版权和产品信息

  实际中经常用到的几个用例

  login
1、链接地址是否正确。
2、产生输入/输出错误时,系统是否进行检测并处理.
3、密码输入框是否按掩码的方式显示。

  menu:
1、各模块链接地址是否正确。
2、鼠标无规则点击时是否会产生无法预料的结果。

  browse:
1、浏览信息是否存在文字书写错误和语法错误。
2、浏览信息是否和数据库中对应的字段及信息相一致。
3、浏览页面中的链接按钮是否可以正确链接并显示。
4、其他功能按钮按下后,数据是否按既定规约处理。

  add,modify:
1、产生输入/输出错误时,系统是否进行检测并处理。
2、列表框是否能够进行选择。
3、单选组内是否有且只有一个单选钮可选。
4、多选组内是否能够进行多数据项选择。
5、多项列表框是否能够进行多数据项选择。
6、控件是否存在默认输入值,若存在,默认值是否得到显示和提交。
7、Cancel之类的按钮按下后,控件中的数据是否清空复原或按既定规约处理。
8、Submit之类的按钮按下后,数据是否得到提交或按既定规约处理。
9、其他页面按钮按下后,数据是否按既定规约处理。
10、异常信息表述是否正确。

  search:
1、输入信息中是否存在和代码中的字符产生冲突的字符,系统是否进行检测并处理。
2、异常信息表述是否正确。
3、查询的结果是否正确。
4、列表框是否能够进行选择。
5、单选组内是否有且只有一个单选钮可选。
6、多选组内是否能够进行多数据项选择。
7、多项列表框是否能够进行多数据项选择。
8、Submit之类的按钮按下后,数据是否得到提交或按既定规约处理。

  Statistic:
1、产生的文件和数据表的计算结果是否正确。
2、图表结果数据显示是否正确。
3、浏览页面中的链接按钮是否可以正确链接并显示。
4、其他功能按钮按下后,数据是否按既定规约处理。
5、产生输入/输出错误时,系统是否进行检测并处理。
6、列表框是否能够进行选择。
7、单选组内是否有且只有一个单选钮可选。
8、多选组内是否能够进行多数据项选择。
9、多项列表框是否能够进行多数据项选择。


本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/

网友评论

登录后评论
0/500
评论
寒凝雪
+ 关注
所属云栖号: seven的测试人生