测试最重要的是测试思路、测试策略和测试计划,只有这些前期工作做足,后面的测试执行才能针对整体的产品测试起到事半功倍的效果!
1.web测试中关于登录的测试
快捷键的使用是否正常:
(1)Tab键的使用是否正确
(2)上下左右键的使用是否正确
(3)若界面支持ESC键,是否能正常工作
(4)Enter键的使用是否正确;切换时是否正常
布局美感:
(1)界面的布局是否符合人的审美标准
输入框的功能:
(1)输入合法的用户名和密码,登录成功
(2)输入合法的用户名和不合法的密码,登录失败,并给出合理提示
(3)输入不合法的用户名和合法的密码,登录失败,并给出合理提示
(4)输入不合法的用户名和不合法的密码,登录失败,并给出合理提示
备注:
(1)不合法的用户名:错误的用户名、使用字符大于用户名的限制的用户名、正常用户名不允许的特殊字符、空用户名(2)不合法的密码:错误的密码,空密码、字符大于密码的限制、正常密码不允许的特殊字符
界面链接:
若界面有链接,需测试界面上的所有链接都正常或给出合理的提示
其它补充:
(1)输入框是否支持:复制、粘贴和剪切
(2)密码框使用暗文显示字符
(3)验证用户名前有空格是否可登录(一般可登录)
(4)验证用户名是否区分大小写
(5)验证必填项为空是否允许登录
(6)验证登录的次数是否有限制
2.搜索功能测试用例设计
(1)分解测试点,设计测试场景
场景编号场景描述预期结果
场景一页面检查正确
场景二默认条件搜索查询结果正确
场景三修改可选条件搜索查询结果正确
场景四修改输入条件搜索查询结果正确
场景五修改区间条件搜索查询结果正确
场景六组合可选、输入条件搜索查询结果正确
场景七操作后检查搜索条件及查询结果查询结果正确
场景八错误、空记录搜索查询结果为空
(2)测试步骤描述:根据测试场景,描述测试步骤
场景一:
步骤编号描述
1进入搜索页面
2界面共性测试
3退出
场景二:
步骤编号描述
1进入搜索页面
2点击搜索按钮,显示查询结果列表
3检查查询结果列表,每页显示记录条数正确、文字折行显示正确、界面布局美观
4检查查询结果列表,列标题项、列显示内容、排序方式符合需求
5检查查询结果列表,符合默认查询条件结果集
6点击查询结果列表链接、复选框、全选框响应正确
7退出
场景三:
步骤编号描述
1进入搜索页面
2逐一选择各个查询条件可选项,如:全部、类别1,搜索,查询结果正确
3组合各个查询条件可选项,如:价格+产品,搜索,查询结果正确
4退出
场景四:
步骤编号描述
1进入搜索页面
2逐一输入文本域条件,模糊查询,搜索,查询结果正确
3逐一输入文本域条件,完全匹配,搜索,查询结果正确
4逐一输入文本域条件,中文值,搜索,查询结果正确
5逐一输入文本域条件,字母大小写值,搜索,查询结果正确
6逐一输入文本域条件,数字类型值,搜索,查询结果正确
7逐一输入文本域条件,全角、半角值,搜索,查询结果正确
8组合各个文本域查询条件,搜索,查询结果正确
9退出
场景五:
场景六:
场景七:
场景八:
3、翻页功能测试用例
翻页功能,通常有以下几个功能:
(1)首页、上一页、下一页、尾页
(2)总页数、当前页数
(3)指定跳转页
(4)设定每页显示条数
功能及其测试点:
编号功能测试点
1首页、上一页、下一页、尾页(1)有无数据时,控件的显示情况
(2)在首页时,首页和上一页是否可点击
(3)在尾页时,尾页和下一页是否可点击
(4)在非首页和尾页时,四个按钮功能是否正确
(5)翻页后,列表中的记录是否按照指定的排序列进行了排序
2总页数、当前页(1)总页数是否等于总记录条数/指定每页条数
(2)当前页面是否正确
3指定跳转页(1)是否能正常跳转到指定的页数
(2)输入的跳转页数非法时的处理
4设定每页显示条数(1)是否有默认的指定每页显示条数
(2)设定每页显示条数后,列表每页显示的记录数,页数是否正确
(3)输入的每页非法时的处理
根据测试点,设计测试用例
用例1:
编号用例标题步骤
1列表中无记录(1)列表中有相应的无数据提示信息
(2)四个翻页控件灰色不可点击
(3)不可指定页数
(4)不可指定跳转页
(5)总页数显示0
(6)当前页数显示0
用例2:
编号用例标题步骤
2列表中记录数<=指定每页显示条数(1)四个翻页控件灰色不可点击
(2)总页数显示1
(3)当前页数显示1
用例3:
编号用例标题步骤
3列表中记录数>指定每页显示条数(1)默认在首页,当前页为1
(2)列表中记录按照指定的排序列正确排序
(3)记录数与数据库相符
(4)总页数=总记录数/指定的每页显示条数
用例4:
编号用例标题步骤
4列表中记录数>指定每页显示条数,在首页(1)首页控件灰色不可点击
(2)上一页控件灰色不可点击
(3)下一页控件可点击,从(每页指定条数+1)条记录开始显示。当前页数+1
(4)尾页可点击,显示最后页的记录
用例5:
编号用例标题步骤
5列表中记录数>指定每页显示条数,在中间的某页(1)首页控件可点击,显示1到指定每页条数的记录
(2)上一页控件可点击,显示上一页的记录
(3)下一页控件可点击,显示后一页的记录
(4)尾页可点击,显示最后页的记录
(5)列表中记录按照指定的排序列进行排序
(6)当前页数为所在页
用例6:
编号用例标题步骤
6列表中记录数>指定每页显示条数,在尾页(1)首页控件可点击,显示1到指定每页条数的记录
(2)上一页控件可点击,显示上一页的记录
(3)下一页控件灰色不可点击
(4)尾页灰色不可点击
(5)列表中记录按照指定的排序列进行排序
(6)当前页数为最后一页的页数
用例7:
编号用例标题步骤
7输入每页显示条数为正整数(1)每页显示条数更新成指定的条数
(2)超过指定的条数分页显示
(3)总页数更新成总记录数/每页显示条
用例8:
编号用例标题步骤
8输入每页显示条数为0(1)提示:每页显示条数必须为大于1的整数
(2)提示后,每页显示条数恢复为上次生效的条数
用例9:
编号用例标题步骤
9输入每页显示条数为负数(1)提示:每页显示条数必须为大于1的整数
(2)提示后,每页显示条数恢复为上次生效的条数
用例10:
编号用例标题步骤
10输入每页显示条数长度超过数据库指定的长度(1)提示:每页显示条数不能超过位
(2)提示后,每页显示条数恢复为上次生效的条数
用例11:
编号用例标题步骤
11输入每页显示条数为字符串(如中文翻页数)(1)提示:每页显示条数必须为大于1的整数
(2)提示后,每页显示条数恢复为上次生效的条数
用例12:
编号用例标题步骤
12输入每页显示条数为特殊字符(如@)(1)提示:每页显示条数必须为大于1的整数
(2)提示后,每页显示条数恢复为上次生效的条数
用例13:
编号用例标题步骤
13输入每页显示条数为html字符(如
)(1)提示:每页显示条数必须为大于1的整数
(2)提示后,每页显示条数恢复为上次生效的条数
用例14:
编号用例标题步骤
14输入每页显示条数为存在的页数(1)正确跳转至指定的页数
用例15:
编号用例标题步骤
15输入每页显示条数不存在或非法值(1)跳转的页数置为1,显示第一页的数据
4.输入框的测试
输入框的测试,总的情况有以下几个方面:
(1)验证输入与输出的信息是否一致
(2)输入框之前的标题是否正确
(3)对特殊字符的处理情况,尤其输入信息需要发送到数据库的。
(4)输入框输入超过限定字符的处理(一般非特殊的没有做出限制的在255byte左右)
(5)输入框本身的大小、长度
(6)不同内码的字符的输入
(7)对空格、Tab字符的处理机制
(8)字符本身显示的颜色
(9)密码输入框转换成暗文形式显示
(10)密码输入框对其信息进行加密,防止破解
(11)按下ctrl和alt键对输入框的影响
(12)对于新增、修改、注册时的输入框,有限制的,输入时作出提示,指出不允许或标出允许的
(13)对于有约束条件要求的输入框应在条件满足时输入框的状态发生相应的改变。如:选择某些条件后,一些输入框会关闭或转为只读状态
(14)输入类型:根据前栏标题判断该输入框该输入哪些内容合理
(15)输入长度:数据库字段有长度定义,当输入超过长度时,提交数据是否会出错
(16)输入状态:当处于某种状态下,输入框是否处于可写或非可写状态。(如:编号栏作为唯一标识,当再次处于编辑状态下,编号输入框处于不可编辑状态。若可编辑,可能造成数据重复引用冲突等)
(17)输入类型 输入长度,是否允许复制粘贴,为空的情况,空格的考虑,半角全角测试,输入错误时给出提示信息或提示信息是否正确
(18)若会进行数据库操作的输入框,可考虑输入SQl中的一些特殊符号(如单引号),有时会有意想不到的错误
(19)关键字:有大小写混合的情况
(20)关键字:含有一个或多个空格的情况,包括前空格、中空格、后空格
(21)关键字:是否支持通配符
(22)关键字:长度(边界值考虑)
(23)关键字:是valid,但是没有匹配搜索结果的情况
(24)输入html标签会出现什么情况,如:输入<,html>
安全测试方面:
特别的关键字,如or 1=1,这样的关键字若不被处理就直接用到数据库查询中去,造成严重后果。
5.web测试常用的检查点
(1)页面连接检查:检查每一个连接是否都有对应的页面,并且页面之间切换正确
(2)相关性检查:删除/增加一项是否对其他项产生影响,若产生影响,其影响是否正确
(3)检查按钮的功能是否正确,如update,cancel,delete,save功能是否正确
(4)字符串长度检查:输入超过需要说明的字符串长度,系统是否检查字符串长度,是否出错
(5)字符串类型检查
(6)标点符号检查输入内容,包括各种标点符号,空格、各种引号、回车键,系统是否处理正确
(7)中文字符处理:在可输入中文的系统输入中文(简体、繁体),看是否会出现乱码或出错
(8)检查带出信息的完整性:在查看信息或update信息时,查看说填写的信息是否全部带出,带出的信息和添加的是否一致
(9)信息重复性检查:如:输入重复的名字或ID,看是否报错或给出提示信息;重名是否区分大小写;在输入内容的前后输入空格,系统是否作出正确处理
(10)检查删除功能:在可批量删除的地方,不选择任何信息,删除,看系统如何处理,是否报错;然后选择一个或多个信息,删除,系统是否正确处理
(11)检查添加和修改的一致:检查添加和修改的要求是否一致
(12)检查修改重名:修改时把不能重名的项修改为已存在的内容,是否处理,是否把已重名的错
(13)检查重复提交表单:一条已成功提交的记录,back后在提交,系统如何处理
(14)检查多次使用back键:在有back的地方,back,回到原来的页面,在back,重复几次,系统是否报错
(15)search检查:输入存在的内容或不存在的内容,检查serch结果是否正确;同时输入多个search条件,合理的和不合理的,系统处理是否正确
(16)输入信息位置:在光标停留的地方输入信息时,光标和所输入的信息是否会跳到别的地方去
(17)上传和下载文件检查:上传和下载文件功能是否实现;上传是否能打开;对上传文件的格式有什么规定,系统是否有解释信息,并检查系统是否能做到
(18)必填项检查:必填项为空,系统是否做了处理,对必填项是否提示信息,如在必填项前加*
(19)快捷键检查:是否支持常用快捷键,如:ctrl+c,ctrl+v,backspace等;对一些不允许输入信息的字段,对快捷是否做了限制
(20)回车检查:输入结束后直接按回车键,系统如何处理,是否保存
性能测试:
1、连接速度测试:可借助抓包工具进行响应时间统计;
2、负载测试:为了测量web系统在某一负载级别上的性能,以保证web系统在需求范围内正常工作。负载级别,第一某个时间同时访问web系统的用户数量;第二在线数据处理的数量。如:web系统能允许多少个用户同时在线,若超出这个数量,会出现什么现象?web应用系统能否处理大量用户对同一个页面的请求?
6.用户及权限管理功能常规测试方法
(1)赋予一个人员相应的权限后,在界面上看其是否具有此权限;以此人员身份登录,验证权限设置是否正确(是否超出所给予的权限)
(2)修改或删除已登录并在操作用户的权限,程序能否正确处理
(3)重新注册系统变更登录身份后在登录,看程序是否能正确执行;具有权限是否正确
(4)在有工作组或角**况下,删除包含用户工作组或角色,程序是否正确处理
(5)不同权限用户登录同一系统,权限范围是否正确
(6)覆盖系统所有权限设定
(7)能否添加信息为空的用户(空用户名+空密码、空用户名+非空密码、非空用户名+空密码)
(8)用户名和密码输入长度的测试
(9)是否允许删除系统管理员或修改系统管理员密码,删除或修改后,系统的实际情况
(10)登录用户能否修改自己的权限
(11)添加用户(有标识或编号):标识相同,用户名不同;标识不同,用户名相同;标识相同,用户名相同;标识不同,用户名不同
(12)登录用户是否能修改本人(或他人)的信息;删除本人(或他人)
(13)修改用户的信息(权限、密码、基本信息等),对其他模块的影响
(14)修改用户的信息:修改后的用户信息和已经存在的用户信息相同;修改后的用户信息和已经存在的用户信息不同
(15)不给用户权限,是否允许登录
(16)修改某些设置后,是否会影响具有上级权限及相同权限人员的设置
(17)系统管理员修改了某些数据,以其他人员身份登录时,数据是否改变
(18)用户能否同时属于多个组,各个组的权限能否交叉;删除后重新添加的用户是否具有以前的权限;更改用户各项属性(包括权限),看对权限是否影响
7.web测试之兼容性测试
兼容性测试是指待测项目在特定的硬件平台上,不同的应用软件之间,不同的操作系统平台上(包括同意操作系统不同的版本上),不同的网络环境中能正常的运行的测试。
兼容性测试的主要类型:主要针对不同的操作系统平台、浏览器、分辨率进行测试。
8.web测试-sql注入
web安全性测试-sql注入
输入字符在Transacat-SQL中的含义
;查询分隔符
, 字符数据字符串分隔符
-- 注释分隔符
/*..*/ 注释分隔符。服务器不对/*..*/中之间的注释进行处理
xp_ 用于目录扩展存储过程的名称的开头,如xp_cmdshell
9.web测试中书写用例需要考虑的检查点
(1)对于屏幕显示:
检查显示的布局
检查域和按钮的顺序
检查域的尺寸
检查字体的大小和风格
检查文本的含义
检查拼写错误
检查屏蔽域
检查只读域
检查图片
检查按钮的状态
检查按钮的尺寸
检查按钮的图标和名字
检查是否有重复的图标
检查指针是否在第一个可输入域
检查Tab键的顺序
(2)对于域:
检查可编辑性
检查域间的移动
检查分界条件
检查有效分界符
检查无效分界符
检查连续多个有效分界符
检查仅一个分界符输入
检查多余空格的截取
检查只读域和屏蔽域在Tab时的状态
(3)对于数字域:
检查正数值
检查负数值
检查零值
检查小数点
检查特殊字符和数字
检查字母和数字
检查ASCII值
检查重复值
检查空值
(4)对于字符域:
检查仅有字母
检查仅有数字
检查字母和数字
检查允许的特殊字符
检查禁止的特殊字符
检查包含特殊字符的字母数字
检查ASCII值
(5)对于字母域:
检查字符
检查数字
检查字母和数字
检查特殊字符
检查ASCII值
(6)对于时间域:
检查字符和/
检查其他特殊字符
检查字母数字值
检查正确的格式
检查错误的格式
检查正确的日期数字
检查错误的日期数字
检查日历表