web功能测试总结:
一、功能测试
1.1 链接测试
链接测试主要是页面之间的跳转,是web应用系统的特征之一。主要关注点:
链接页面是否与需求一致,链接到指定界面
确认该链接的页面是否真实存在
确认系统是否存在独立的页面(若没有链接指向,能够通过正确的url地址访问)
1.2 表单测试
表单测试也可以叫做数据落地,当用户在web应用系统向服务器提交信息时,需要使用表单操作,比如:用户注册、登录、信息提交等,主要关注点:
必须测试提交信息的完整性:默认值、必填项、输入验证、上传、表单操作
输入验证:特殊字符(null、代码、sql)、特殊文本(邮箱、电话、url)、字符串(长度、边界值、等价类)、正负数、小数位数等
上传测试:文件格式类型、大小等
表单操作:增删查改、数据完整性、正确性
常理性逻辑:日期、省份地区匹配、年限等是否恰当,一般有默认值,不要忘记也需要测试的
1.3 界面测试
界面测试就是我们常说的用户体验,浏览界面是否感觉舒服、系统整体风格、设计排版等等。
1.4 导航测试
站在用户的角度上去考虑,当用户访问一个系统时,需要做什么操作? 大多数用户都是目的驱动的,当他访问一个系统时,会很快浏览系统,
找不到自己需要的信息,则会离开系统。很少人会去了解系统结构,因此导航测试变得尤为重要。
判断应用是否易于导航、直观?(从页面之间的跳转、按钮、对话框、列表、窗口、是否系统主页访问等因素去考虑)
页面结构、导航、菜单、风格、内容简单是否一致,确保用户凭直觉或者简单的判断就能找到需要的信息
系统内是否需要地图、搜索引擎等其他操作
1.5 图形测试
图形测试也可以理解为ui测试,其中包括:图片、动画、边框、字体、颜色、背景、按钮等
页面整体风格是否与系统的用途一致
背景颜色、字体,搭配是否合理
图片要有明确的用途,图片尺寸、大小,质量(一般是GIF、JPG、PNG格式,在不影响质量的情况下能使图片大小压缩到30k一下)
图形链接:链接是否有效,链接属性正确(新窗口还是当前页面打开)
1.6 内容测试
内容测试:检查web系统提供信息的正确性、准确性和相关性。
文字表达是否恰当、是否有错别字
字体、大小、颜色、对齐方式、风格
页面元素排版:导航、表单、图形、控件等位置、大小排版
页面结构、背景颜色、字体颜色是否合理搭配
1.7 容器测试
DIV和表格在页面布局上作为一种容器,主要测试点:
作为控件,检查其是否设置正确,宽度是否合理,文字内容是否合理显示
作为布局方式,需要考虑浏览器窗口尺寸变化、web页面内容动态增加或者删除对web界面的影响
二、兼容性测试
2.1 系统兼容测试
市面上有很多的操作系统:windows、Linux、UNIX、Macintosh等;用户使用哪个取决于用户,因此,系统兼容测试就很有必要了。
2.2 浏览器兼容测试
浏览器是web客户端最核心的组件,不同浏览器,对HTML、css、javascript的规格都有不同的支持。开发所采用的web前端框架和结构风格在不同浏览器中不同的显示甚至不显示,不同的浏览器对安全想的设置也是不同的。测试浏览器兼容性: 创建一个兼容性矩阵,来测试不同厂商不同版本浏览器兼容。例如:ie:一般使用F12切换来测试IE8~11的兼容。一般问题是IE8及IE9会对一些JS、控件等有兼容问题;
三、输入框测试
web应用系统中,通常会有各种输入框输入的操作。根据平时的测试整理了如下:
验证输入输出信息一致性
输入框前面文字提示是否正确
对特殊字符的出来、识别:单双引号,逗号、分号等等,以及大小写状态,半角全角状态下的情况
输入框的大小、长度、边框等
不同字符的输入,以及字符组合情况的出来(数字+字母+字符等)
对空格、tab换行键的处理机制
密码输入框加密显示(*)或者其他星号的转行,加密
输入框输入字符长度是否有限制
字符本身显示的验证,规格等
有些输入框需要加以限制,如输错,是否有提示?提示是否简单合理?
输入状态,某种情况下输入框不可编辑,当处于编辑状态,输入框的输入状态是否有变化?
输入类型:是否允许复制粘贴剪切等输入操作
关键字是否支持通配符,以及关键字的搜索能力,敏感字等情况
输入框输入空格的情况
比如登录注册,各项输入条件的判定:是否输入,输入是否正确等
四、用户权限测试
给某账号赋予权限后,登录该账号,查看是否拥有已赋予的权限,以及权限设置是否正确(权限是否超过或者不足)
删除或修改已登录并且执行的账号权限,程序能否正确处理,验证
重新注册系统变更登录身份后再登录,程序能否正确执行,之前所拥有的权限能否继续使用
在工作分配或者角色管理情况下,删除包含用户的工作组或者角色,程序能否正确处理
不同权限账号登录同一系统,权限范围是否正确
能否给信息为空,长用户名的账号添加权限
是否允许删除系统管理员或者修改管理员权限?删除或者修改后的实际情况
已登录的用户能否修改或删除自己他人的权限,信息
添加用户(有编号或者标识),不同用户标识的组合情况下,权限能否处理正确
修改用户权限或者信息后,对其他模块是否有影响
如果修改用户信息为和已存在的其他用户信息相同,能否修改成功?是否有对应提示?
修改某些设置,是否会对该账号权限相同或者高于/低于该账号的其他账号的权限造成影响
同一用户是否可以同时属于其他组,各个组的权限能否交叉?
五、安全测试
安全测试现在接触的不多,后面补充:
sql注入,例如登录注册信息的输入框每输入相关的sql代码,观察能否登录成功
xxs跨域攻击,在url地址输入js代码,是否能作出响应