您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件测试技术 > web测试 > 正文

web测试策略

发表于:2018-10-22 作者:蜗牛也是妞 来源:博客园
  一、输入框
  1 字符型输入框 2 数值型输入框 3 日期型输入框 4 邮箱测试 5 日历控件
  6 树形 7 单选框 8 复选框 9 下拉选择框 10 文件目录
  11 文件 12 图片 13 文字测试 14 按钮
  1、字符型输入框:
  (1)英文半角、英文全角、数字、汉字、特殊符号(( ' & $ !)、英文双引号、英文单引号、&、系统保留字、编程保留字、数据库保留字、;所有键盘可以输入的字符(全角、半角)
  (2)复制粘贴不允许输入的字符
  (3)空
  (4)空格(半角、全角):仅空格、字符前中后有空格
  (5)输入null、NULL
  (6)最大边界值、最大边界值+1、最小边界、最小边界值-1、超长字符
  (7)输入htm代码:比如"<font>你好</font>"
  (8)输入javascript代码:比如 <param name="MovieWindowWidth" value="320">;<b>hello</b>;alert("hello");doucment.write("abc");
  (9)转义字符:比如<Script Language="JavaScript"> </script>;<br>;<tr>;<td>;</tr>;</td>;</html>;</body>;</table>等
  (10)Tab、Enter键
  (11)多行文本框输入:
  a 允许回车换行、保存后再显示能够保存输入的格式;
  b 仅输入回车换行,检查能否正确保存(若能,检查保存结果,若不能,查看是否有正常提示)
  2、数值型输入框:
  (1)边界值:最大值、最小值、最大值+1、最小值-1
  (2)位数:最小位数、最大位数、最小位数-1、最大位数+1、输入超长值、输入整数
  (3)异常值、特殊字符:输入空白(NULL)、空格或"~!@#$%^&*()_+{}|[]\:"<>?;',./?;:'-=等可能导致系统错误的字符、禁止直接输入特殊字符时,尝试使用粘贴拷贝查看是否能正常提交、word中的特殊功能,通过剪贴板拷贝到输入框,分页符,分节符类似公式的上下标等、数值的特殊符号如∑,㏒,㏑,∏,+,-等、不能直接输入,就copy,是否数据检验出错;
  输入负整数、负小数、分数、输入字母或汉字、小数(小数前0点舍去的情况,多个小数点的情况)、首位为0的数字如01、02、科学计数法是否支持1.0E2、全角数字与半角数字、数字与字母混合、16进制,8进制数值、货币型输入(允许小数点后面几位)
  (4)正数、负数、0、0.0、+0.0、-0.0、指数、对数、分数、整数、小数、复数、科学计数法的测试,全角的数字、超大整数,超大的小数,超小的小数
  (5)安全性检查:不能直接输入就copy
  3、日期型输入框:
  (1)合法性检查:(输入0日、1日、32日)、月输入[1、3、5、7、8、10、12] 日输入[31]、月输入[4、6、9、11]日输入[30][31]、输入非闰年 月输入[2] 日期输入[28、29]、输入闰年 月输入[2] 日期输入[29、30]、月输入[0、1、12、13]
  (2)异常值、特殊字符:输入空白或NULL、输入~!@#¥%……&*(){}[]等可能导致系统错误的字符
  (3)安全性检查:不能直接输入,就copy,是否数据检验出错?
  4、邮箱测试
  (1)没有@和 . 符号 如abc163com,sdw,34455,$#%^^%
  (2)有@和 . 符号
  a. @和 . 之间没有字符串,如abc@.com,abc.@com
  b. 字符串的第一位是@或 . 如@163.com,.abc@163.com,@abc@sina.com
  c. 字符串的最后一位是@或 . 如 abc@sina.com@,abc@sina.com.
  d. 有@和 . 符号,并有特殊字符 如abc#d@163.com,abc@16#3&.com,abc@163.c$%om
  e. 有@和 . 符号,并有空格 如 abc @163.com, abc@16 3.com, abc@163.co m
  (3)@和 . 符号中只有一个,如abc@sohucom,abcsohu.com,abcsina@com,abc.sohucom
  (4)有@@符号重复,如abc@@sohucom,abc@sohu@sohu.com,abc@sohu.c@com
  (5)有..符号重复,如abc@sohu.com.cn,a.bc@163.com,abc@163..com
  (6)域名不能使用"_"作为了开始符,结束符,abc@sina._com,abc@sina.com_
  (7)不正确的域名后缀,如:a@b.hello,ab@cd.hi
  (8)粘贴或者输入文本字母、数字以外字符;
  5、日历控件
  (1)同时支持选择年月日、年月日时分秒规则
  (2)打开日历控件时,默认显示当前日期
  (3)开始日期 < 截止日期
  (4)开始日期 > 截止日期
  (5)开始日期 = 截止日期
  6、树形
  (1)各层级用不同图标表示,最下层节点无加减号
  (2)提供全部收起、全部展开功能
  (3)如有需要提供搜索与右键功能,如提供需有提示信息
  (4)展开时,内容刷新正常
  7、单选框
  (1)一组单选按钮不能同时选中,只能选中一个
  (2)一组执行同一功能的单选按钮在初始状态时必须有一个被默认选中,不能同时为空
  8、复选框
  (1)多个复选框可以被同时选中
  (2)多个复选框可以被部分选中
  (3)多个复选框可以都不被选中
  (4)逐一执行每个复选框的功能
  9、下拉选择框
  (1)查询时默认显示全部
  (2)选择时默认显示请选择(或根据需求默认显示相应的选项)
  10、文件目录
  目录名称、目录下的文件数量、隐藏文件、目录的层级数量、网络文件夹、目录名称包含特殊字符(-_)windos路径缩写的文件目录
  11、文件
  (1)文件类型、大文件、超小文件、超大文件、只读文件、占用状态、无权限的文件
  (2)文件不存在、文件重名情况、硬盘满了、文件只读属性、文件被占用状态、文件的名称(过长、过短)、文件类型、网络文件
  12、图片
  图片类型、大小、显示尺寸、属性、图片路径、图片链接,数据库保存图片的不同大小、图片显示是否变形,图片是否影响页面其他元素的布局;
  13、文字测试
  (1)语言风格是否统一
  (2)文字排版是否美观
  (3)文字描述是否有二义性
  (4) 错误提示的语言是否明确
  (5) 多语言测试情况下,文字显示正确
  (6) 文字内容是否和需求文档保持一致
  14、按钮
  (1)点击按钮是否正确响应操作。如单击确定,正确执行操作;单击取消,退出窗口
  (2)对非法的输入或操作给出足够的提示说明
  (3)对可能造成数据无法恢复的操作必须给出确认信息,给用户放弃选择的机会(如删除等危险操作)
  (4)信息重复:在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理.
  二、搜索功能
  若查询条件为输入框,则参考输入框对应类型的测试方法
  筛选的结果中:
  点击“首页” “尾页” “上一页” “下一页”,查询结果是否还是筛选的结果
  1、功能实现:
  (1)如果支持模糊查询,搜索名称中任意一个字符是否能搜索到
  (2)比较长的名称是否能查到
  (3)输入系统中不存在的与之匹配的条件
  (4)查询条件全部匹配时,系统能否查询出相关记录
  (5)查询条件全为空时,系统能否查询出相关记录
  (6)针对单个查询条件进行查询,系统能否查询出相关记录
  (7)针对多个查询条件,进行组合查询,系统能否查询出相关记录
  (8)用户进行查询操作时,一般情况是不进行查询条件的清空,除非需求特殊说明。
  (9)Tab、Enter键
  2、组合测试:
  (1)不同查询条件之间来回选择,是否出现页面错误(单选框和多选框最容易出错)
  (2)测试多个查询条件时,要注意查询条件的组合测试,可能不同组合的测试会报错。
  多条件查询测试用例设计方法
  假设查询因子:A,B,C,D,E
  1、单独查询:A;B;C;D;E
  - 确保单独查询的正确性,这也是最基本的。
  2、两个组合查询:AB;AC;AD;AE;BC;BD;BE;CD;CE;DE。
  - 确保两个组合查询的正确性,这保证了两两之间不会相互影响。
  3、三个组合查询:ABC;CDE
  - 确保三个组合的正确性;因为我们已确保了单独及两个组合查询的正确性,所以不需要测试三个组合的全部级组合。
  4、五个组合查询:ABCDE
  - 确保最大组合的正确性。
  如果输入条件达到更多,可以考虑以下方法
  1.单个条件遍历
  2.默认条件查询
  3.根据需求或者业务规则选取重点条件组合查询
  4.全条件组合查询
  5.根据查询所拼SQL来修改查询条件进行查询
  三、添加功能
  1、正确输入相关内容,包括必填项,点添加按钮,记录是否成功添加
  2、必填项内容不填、其他项正确输入,点添加按钮,系统是否有相应提示
  3、仅填写必填项,点添加按钮,记录能否添加成功
  4、内容项中输入空格,点添加按钮,记录能否添加成功
  5、内容项中输入系统中不允许出现的字符、点添加按钮,系统是否有相应提示
  6、内容项中输入HTML脚本,点添加按钮,记录能否添加成功
  7、添加记录失败时,原填写内容是否保存
  8、新添加的记录是否排列在首行
  9、提交数据时,连续多次点击,查看系统会不会连续增加几条相同的数据或报错
  10、是否支持Tab、Enter键
  11、是否能够连续添加(针对特殊情况)
  12、是否可以重复添加
  13、两个人添加相同的信息,同时点击提交,系统是否有相应提示
  四、修改功能
  1、修改功能是否正确修改数据库中对应表的对应字段的数据;
  2、修改功能应该不允许修改数据库中对应表的对应记录的主键数据;
  3、修改功能不会影响数据库中与对应修改数据无关的数据,不会新增数据(除非新增处理是作废原记录并新增记录)。
  4、修改成功或失败都应该反馈准确的提示信息。
  5、修改提交时应该自动处理掉输入内容两端的空格。
  6、若结果列表中没有记录或者没选择记录,点击修改按钮,系统是否有相应提示
  7、如果不可重复添加,修改为已存在的数据,是否给出相应提示
  8、提交数据时,连续多次点击,查看系统会不会连续增加几条相同的数据或报错
  9、是否进行必填项检查、长度检查等其他限制条件
  10、对于图片上传,若不上传图片,查看编辑页面时是否显示有默认的图片,若上传图片,查看是否显示为上传图片
  11、修改正在查看的信息,或是两个人同时修改,系统是否有相应提示
  五、删除功能
  1、选择任意一条记录,进行删除,能否删除成功
  2、选择不连续多条记录,进行删除,能否删除成功
  3、选择连续多条记录,进行删除,能否删除成功
  4、能否进行批量删除操作
  5、删除时,系统是否有确认删除的提示
  6、当只有一条数据时,是否可以删除成功
  7、删除一条数据后,是否可以添加相同的数据
  8、如有全选,注意是否把所有的数据删除
  9、删除数据时,要注意相应查询页面的数据是否及时更新
  10、如删除的数据与其他业务数据关联,要注意其关联性(如删除部门信息时,部门下游员工,则应该给出提示)
  11、如果结果列表中没有记录或没有选择任何一条记录,点击删除按钮系统会报错
  12、删除正在查看的信息,或是两个人同时删除信息,系统是否有相应提示
  如:某一功能模块具有最基本的增删改查功能,则需要进行以下测试
  单项功能测试(增加、修改、查询、删除)
  增加——>增加——>增加 (连续增加测试)
  增加——>删除
  增加——>删除——>增加 (新增加的内容与删除内容一致)
  增加——>修改——>删除
  修改——>修改——>修改 (连续修改测试)
  修改——>增加(新增加的内容与修改前内容一致)
  修改——>删除
  修改——>删除——>增加 (新增加的内容与删除内容一致)
  删除——>删除——>删除 (连续删除测试)
  六、注册、登陆模块
  1 注册功能
  2 登陆功能
  3 验证码图片
  4 修改密码
  1、注册功能:
  (1)用户名、密码输入:
  1)非法字符,能否粘贴不符合要求的字符
  2)空格(半角、全角):仅空格、字符前中后有空格
  3)输入null、NULL
  4)最大边界值、最大边界值+1、最小边界、最小边界值-1、超长字符
  5)输入脚本
  (2)用户名密码其中一个为空或都为空
  (3)注册已存在的用户
  (4)改变存在的用户的用户名和密码的大小写,来注册
  (5)两次密码输入不一样
  (6)密码是否可以复制粘贴;密码是否以* 之类的加秘符号显示
  (7)看是否支持tap和enter键等
  (8)注册时,设置密码为特殊版本号,检查登录时是否会报错
  (9)注册成功后,页面应该以登陆状态跳转到首页或指定页面
  (10)在注册信息中删除已输入的信息,检查是否可以注册成功。
  2、登陆功能:
  (1)输入正确的用户名和正确的密码
  (2)输入正确的用户名和错误的密码
  (3)输入错误的用户名和正确的密码
  (4)输入错误的用户名和错误的密码
  (5)用户名、密码输入:
  1)非法字符,能否粘贴不符合要求的字符
  2)空格(半角、全角):仅空格、字符前中后有空格
  3)输入null、NULL
  4)最大边界值、最大边界值+1、最小边界、最小边界值-1、超长字符
  (6)用户名密码其中一个为空或都为空
  (7)输入正确的用户名和密码,但是不区分大小写
  (8)已删除的用户名和密码
  (9)不存在的用户名
  (10) 密码是否加密,能否复制粘贴出加密的密码
  (11)考虑是否支持多用户在同一机器上登录;
  (12)考虑一用户在多台机器上登录;
  (13)使用禁用帐号登陆,系统能否正确处理;
  (14)删除或修改后的用户用原用户登录;
  (15)支持Tab、Enter键
  (16)登录成功后能否能否跳转到正确的页面
  (17)记住用户名的功能
  (18)登陆失败后,不能记录密码的功能
  (19)要考虑多次点击登录和取消按钮的界面反应;
  (20)登录成功后生成的Cookie,是否是httponly (否则容易被脚本盗取)
  (21)用户名和密码是否通过加密的方式,发送给Web服务器
  (22)用户名和密码的验证,应该是用服务器端验证, 而不能单单是在客户端用javascript验证
  (23)用户名和密码的输入框,应该屏蔽SQL 注入攻击
  (24)用户名和密码的的输入框,应该禁止输入脚本 (防止XSS攻击)
  (25)错误登陆的次数限制(防止暴力破解)
  1、SQL注入:username dlrTest' passwd abc'
  2、SQL注入:username dlrTest'or'1'='1
  3、SQL注入:username dlrTest'or'1'='1--或者dlrTest'or'-- passwd abc'
  3、验证码图片
  (1)刷新页面,验证码是否更新
  (2)点击“验证码”图片,验证码是否更新
  (3)用户名密码验证码输入错误或不输入,登录失败后,验证码是否更新
  4、修改密码
  原密码:
  新密码:
  确认密码:
  确定取消
  (1)用户名:输入错误
  (2)不输入旧密码,直接改密码----修改失败
  (3)输入错误的原密码----修改失败
  (4)新密码和确认密码不一致----修改失败
  (5)不输入新密码----修改失败
  (6)不输入确认密码----修改失败
  (7)新密码和确认密码为空----修改失败
  (8)新密码和确认密码包含空格(前中后)----修改失败
  (9)新密码为最多字符----修改成功
  (10)新密码为最少字符----修改成功
  (11)长度测试:最小边界值,最小边界值-1,最大边界值,最大边界值+1
  (12)新密码为非允许字符(如有的密码要求必须是英文和数字组成,那么要试汉字和符号等)
  (13)看是否支持tab和enter键等
  (14)密码是否可以复制粘贴
  (15)密码是否以* 之类的加密符号
  (26)看密码是否区分大小写,新密码中英文小写,确认密码中英文大写
  (27)新密码与旧密码一样能否修改成功
  (28)密码修改成功后是否可以用旧密码登录成功
  (29)密码修改成功后是否可以用新密码登录成功
  七、上传图片测试
  功能实现:
  (1)上传文件是否支持中文、英文、特殊符号、空格、数字 名称,并且可以正确显示
  (2)文件类型正确、大小合适(最小边界值,最大边界值)
  (3)文件类型正确,大小不合适(最小边界值-1,最大边界值+1)
  (4)文件类型错误,大小合适(上传bmp,jpg,tiff,gif,pcx,tga,exif,fpx,svg,psd,cdr,pcd,dxf,ufo,eps,ai,raw,WMF,.doc;.xls;ppt;jpeg;psd;tga;png;swf;pcx;dxf;emf;lic;eps;.txt等格式文件)
  (5)文件类型和大小都合适,上传一个正在使用中的图片(即打开该图片,在上传该图片)
  (6)文件类型大小都合适,手动输入存在的图片地址来上传
  (7)文件类型和大小都合适,输入不存在的图片地址来上传
  (8)文件类型和大小都合适,输入图片名称来上传
  (9)不选择文件直接点击上传,查看是否给出提示
  (10)连续多次选择不同的文件,查看是否上传最后一次选择的文件
  (11)上传文件名测试,检查不符合文件名规范
  1) 图片:图片名.wmv.jpg
  2) 非图片:图片名.jpg.wmv
  3) 超长文件名:
  (12)上传文件容错性测试:如检查覆盖同文件操作;
  (13)上传文件后,检查是否与源文件一致,包含目录设置等
  (14)上传文件,是否能打开等
  (15)上传文件能否正确显示
  (16)上传文件发布时间是否正确
  (17)上传文件特性测试:如果支持如断点续传等一些特性
  (18)上传文件异常情况测试:如硬盘空间不足
  (19)上传文件速率性能测试:检查上传不同的文件在不同的网络环境响应速度,及系统资源占用
  (20)上传文件安全性测试:如上传常见木马
  (21)上传文件易用性测试:检查上传文件操作是否让用户易于学习和理解使用等
  八:文件导出
  1、导出文件是否是查询结果的文件内容
  2、验证导出文件名长度,根据具体情况而定
  3、验证导出文件为空的情况
  4、验证导出文件名为特殊字符的情况
  5、验证导出全部资料的情况,导出的信息是否正确
  6、验证导出部分资料的情况,导出的信息是否正确
  7、验证导出大量数据时的时间是否在合理的时间范围内
  8、验证导出目的磁盘空间已满的情况下,导出是否有友好的处理方式
  9、验证导出目的的文件夹为只读的情况下,导出时是否有友好的的提示信息
  九、文件下载页面
  1、当前位置的提示是否现实正确;页面美观性、易用性;按钮文字是否正确 ;说明性文字是否正确
  2、正确/错误的提示文字是否正确
  3、右键另存为是否可以正确下载文件,并且记录下载次数 ·
  4、工具下载是否正确,并且记录下载次数
  5、单击下载是提示下载还是在页面打开 · 直接打开是否显示正确
  6、对于本机没有安装工具的文件是否能够打开,是否能给出正确的提示 ·
  7、对于直接在页面内打开的内容是否能够显示正常,页面美观性 ·
  8、保存到本地是否能正确显示
  9、取消下载是否会纪录下载次数
  10、下载次数是否被正确记录
  11、后台没有发布的文件是否在前台可以找到并下载
  12、后台设置了下载权限的文件是否可以被正确看到、是否可以下载
  十、查询结果列表
  功能实现:
  (1)列表、列宽是否合理
  (2)列表数据太宽有没有提供横向滚动
  (3)列表的列名有没有与内容对应
  (4)列表的每列的列名是否描述的清晰
  (5)列表是否把不必要的列都显示出来
  (6)点击某列进行排序,是否会报错(点击查看每一页的排序是否正确)
  (7)双击或单击某列信息,是否会报错
  十一、cookie
  1、是否包含明文的敏感信息
  2、浏览器是否打开cookie选项