一, 搜索功能测试
1. 功能实现:
(1)如果支持模糊查询,搜索名称中任意一个字符是否能搜索到。
(2)比较长的名称是否能查到。
(3)输入系统中不存在的与之匹配的条件。
(4)用户进行查询操作时,一般情况是不进行查询条件的清空,除非需求特殊说明。
2. 组合测试:
(1)不同查询条件之间来回选择,是否出现页面错误(单选框和多选框最容易出错)。
(2)测试多个查询条件时,要注意查询条件的组合测试,可能不同组合的测试会报错。
(3)查询结果的分页,一直点击到最后一页,查看是否有重复数据(可能会出现虚数据的情况)。
3.历史搜索记录:
常见于页面中保存最近的历史搜索记录时,输入过长(或导致换行时)的记录显示错位。
二、 输入框测试
1. 字符型输入框:
(1)字符型输入框:英文全半角、数字、空或者空格、特殊字符“~!@#¥%……&*?[]{}”特别要注意单引号和&符号。禁止直接输入特殊字符时,使用“粘贴、拷贝”功能尝试输入。
(2)长度检查:最小长度、最大长度、最小长度-1、最大长度+1、输入超长字符比如把整个文章拷贝过去。
(3)空格检查:输入的字符间有空格、字符前有空格、字符后有空格、字符前后有空格。
(4)多行文本框输入:允许回车换行、保存后再显示能够保存输入的格式、仅输入回车换行,检查能否正确保存(若能,检查保存结果,若不能,查看是否有正常提示)。
2. 数值型输入框:
(1)边界值:最大值、最小值、最大值+1、最小值-1。
(2)位数:最小位数、最大位数、最小位数-1、最大位数+1、输入超长值、输入整数。
(3)异常值、特殊字符:输入空白(NULL)、空格或"~!@#$%等可能导致系统错误的字符、禁止直接输入特殊字符时,尝试使用粘贴拷贝查看是否能正常提交。输入负整数、负小数、分数、输入字母或汉字、小数、科学计数法是否支持1.0E2、全角数字与半角数字、数字与字母混合。
(4)安全性检查:不能直接输入就copy、SQL注入。
(5)对于必填项,先录入再删除是否可以提交成功;或者先录入错误数据再改为正确数据是否可提交成功 。
(6)录入小数然后全选,直接录入新值,是否可正常录入;(可能出现小数全选后无法直接填写新值)。
3. 日期型输入框:
(1)合法性检查:输入0月,13月,32日等,闰年2月的处理方式等。
(2) 异常值、特殊字符:输入空格或空、输入~!@#¥%……&*(){}[]等可能导致系统错误的字符。
(3)安全性检查:不能直接输入,就copy,是否数据检验出错。
(4.) 信息重复:在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理.。
三、 添加/修改功能
1. 特殊键:
(1)是否支持Tab键。
(2)是否支持回车键。
2. 提示信息:
(1)不符合要求的地方是否有错误提示。
3. 唯一性:字段唯一的,是否可以重复添加,添加后是否能修改为已存在的字段(字段包括区分大小写以及在输入的内容前后输入空格,保存后,数据是否真的插入到数据库中,注意保存后数据的正确性)。
4.数据正确性:
(1)对编辑页的每个编辑项进行修改,点击保存,是否可以保存成功,检查想关联的数据是否得到更新。
(2)进行必填项检查。
(3)在编辑的时候,注意编辑项的长度限制,有时在添加的时候有,在编辑的时候却没有(注意要添加和修改规则是否一致)。
(4)提交数据时,连续多次点击,查看系统会不会连续增加几条相同的数据或报错。
四、 删除功能
1.特殊键:
(1)是否支持Tab键。
(2)是否支持回车键。
2.提示信息:
(1)不选择任何信息,直接点击删除按钮,是否有提示。
(2)删除某条信息时,应有确认提示。
3.数据实现:
(1)删除一条记录时,是否可以删除成功。
(2)如系统支持批量删除,注意删除的信息是否正确。
(3)删除数据时,要注意相应查询页面的数据是否及时更新。
(4)如删除的数据与其他业务数据关联,要注意其关联性。
五、 上传图片功能测试
(1)文件类型正确、大小合适,查看能否上传成功。
(2)文件类型正确,大小不合适,查看是否给出提示。
(3)文件类型错误,大小合适,查看是否给出提示。
(4)文件类型大小都合适,手动输入存在的图片地址来上传。
(5)文件类型和大小都合适,输入不存在的图片地址来上传。
(6)不选择文件直接点击上传,查看是否给出提示。
(7)连续多次选择不同的文件,查看是否上传最后一次选择的文件。
(8)文件名校验,文件名内容(如含特殊字符,大小写混合,数字,汉字) ,文件名长度。
(9)文件名后缀大写, 是否作处理。
(10)对于有图片数量限制的批量上传是否控制。
(11)批量上传过程中有传输失败的图片如何处理,是直接删除还是提示上传失败。
(12)图片选择一些较特殊的图片,设计出高分辨率或过小的图片。
(13)图片加载失败、或中途退出上传时提示友好。
(14)鼠标悬停在图片上时是显示的文本正确。
(15)支持图片移动和裁切的功能时,可以正确执行。
六、 查询结果列表
(1)列表、列宽是否合理。
(2)列表数据太宽有没有提供横向滚动。
(3)列表的列名有没有与内容对应。
(4)列表的每列的列名是否描述的清晰。
(5)列表是否把不必要的列都显示出来。
七、 返回键检查
(1): 一条已经成功提交的记录,返回后再提交,是否做了处理。
(2):检查多次使用返回键的情况,在有返回键的地方,返回到原来的页面多次,查看是否会出错。
八、 回车键检查在输入内容后,直接按回车键,系统如何响应,是否会报错。
九、 刷新键检查Web页面中,使用F5,查看系统响应,是否会有错误或异常。(如:切换到非默认tab,然后刷新页面,页面会切换到默认tab,但tab下的内容仍是上个tab的内容)对于增加了统计功能的页面,是否刷新会增加统计次数。(如浏览量、阅读量等)
十、 直接URL链接检查(盗链问题)在Web系统中,在地址栏直接输入各个功能页面的URL地址,看系统如何处理,是否能够直接链接查看(匿名查看),是否有权限控制,是否直接执行,并返回相应结果页。
十一、并发问题
(1):同一个用户操作:同一个用户分别登录两个浏览器,在一个浏览器中作提交后,在另一个浏览器中是否仍可提交成功 ,是否有权限控制,是否有合理提示(如状态变化等)。
(2): 不同用户操作无序提交时是否有合理提示。
十二、 业务流程测试业务流程一般会涉及到多个模块的数据,所以在对业务流程测试时,首先要保证单个模块功能的正确性,其次就要对各个模块间传递的数据进行测试,这往往是容易出现问题的地方,测试时一定要设计尽量全面覆盖的数据进行测试。
十三、 界面和易用性测试备注:界面一般由UI来测试,某些特殊流程需要由测试给出页面或数据,让UI确认是否符合当初设计理念。需要注意的是,前端经常对某些行间距、字体及Hover效果不能很好把握。
(1): 风格、样式、颜色是否协调。
(2):界面布局是否整齐、协调。
(3):界面操作、标题描述是否恰当。
(4):操作是否符合人们的常规习惯。
(5):界面中各个控件是否对齐。
(6): 日期控件是否可编辑。
(7): 信息比较长的文本,文本框有没有提供自动垂直滚动条。
(8): 是否支持Tab键,跳转顺序是否条理。
(9): 用滚动条移动页面时,页面的控件是否显示正常。
(10):页面是否有多余按钮或标签。
(11):执行风险操作时,是否有确认提示,如删除、移除、注销确认。
(12):页面分辨率检查,在各种分辨率下浏览系统检查系统界面友好性。
十四、兼容性测试针对不同浏览器内核,相同输入导致不同的输出。
十五、其它。
(1):JavaScript加载的漏洞,通常因网络加载缓慢导致JavaScript未加载完成但可以继续进行后续操作
(2):多次连续快速点击同一个按钮
(3):页面跳转
(4):异常场景的设计覆盖(有些需求说明书可能只描述了当前阶段需要的业务流程,需要测试人员深度挖掘测试需求。关于测试需求分析后续有相关文章)
(5):涉及到自动发送短信息、邮件需要考虑到用户群体的地域性(合理设置好发送时间)以上均是一些行业中通用的功能测试点,但具体执行测试时还需要依据需求规格来判断并灵活运用其中的规则,特别是银行、保险、医疗、电商等等系统,设计用例时要注意覆盖全面。很多功能测试专家也都是从参与、经历的各个项目中获取的丰富经验,多总结多运用即可在后续的每个项目中看到不同层次的东西。