web测试中最容易遗漏的测试要点

󰃭 2016-06-16

简介

由于web应用与用户直接相关,又通常需要承受长时间的大量操作,因此web项目的功能和性能都必须经过可靠的验证。这就要经过web项目的全面测试。

Web应用程序测试与其它任何一种类型的应用程序测试相比没有太大差别,但是也有一些测试点会被大家遗漏。

最容易遗漏的地方

  • 浏览器的后退按钮

    提交表单一条已经成功提交的记录,back后再提交,看系统会如何处理。数据是否会保留或者丢失,具体还要根据业务来排查问题.

    检查多次使用back健的情况在有back的地方,back,回到原来的页面,再back,重复几次,看是否会报错。网页端的重复操作也是用户经常使用的习惯。

  • 修改URL中的参数

    通过修改URL中的参数,向服务器发起请求,看看会有什么样的结果。

    利用一些抓包工具例如:httpSniffer,wireshark,WinNetCap.WinSock Expert ,可以记录和捕获向服务器发起的URL请求,然后修改其中的参数向服务器发起请求.该功能点可以和安全测试结合起来.

  • 对表单多次提交

    对提交按钮快速多次点击提交,看看会不会在数据库中形成多条记录.网速或响应快时,这点容易被遗漏,但用户的网络可能慢,很容易多次点击提交。

    如果前端做了处理,试试捕获在提交时生成的URL,绕过页面,再次对服务器发起请求,会有什么结果。

  • 光标的跳转

    执行操作后,光标是否停留在合适的位置.如邮箱登录,输完用户名回车后,光标应该跳转到密码框内.细节问题,但是影响用户感受。

  • tab键是否功能正确 

    和光标的跳转类似,特别是在有输入项时,查看tab键的焦点顺序是否正确。

  • 对全角/半角符号的输入测试

    有输入项时,要考虑全/半角字条的输入,及GBK字符。

  • 多版本IE测试

    一般IE8的坑会比较多,但是很多厂商都不适配。还有可以根据业务数据看看前十位的使用浏览器来进行兼容性测试。

  • 快捷方式的组合

F11:在全屏幕和常规浏览器窗口之间进行切换 
TAB:在WEB页,地址栏和链接栏中向前移动到下一个项目 
shift+Tab:在web页,地址栏和链接栏中向后返回到上一个项目。 
Alt+home:进入你的主页。 
Alt+向右箭头:转到下一页 
Alt+向左箭头或backspace:返回前一页 
shift+F10:显示某个链接的快捷菜单 
ctrl+Tab或F6:在不同框架之间向前移动。 
shift+ctrl+Tab:在不同框架之间向后移动。 
向上箭头:向文档开始处滚动。 
向下箭头:向文档结尾处滚动。 
Page up:向文档起始处翻页 
Page Down:向文档结尾处翻页 
hone:移动到文档的开头 
end:移动到文档的结尾。 
ctrl+F:在web 页中查找。 
F5或ctrl+R:仅当Web上的页面与本机存储的Web页时间戳不同时,才刷新当前页 
ctrl+F5:即使web上的页面与本机存储的web页时间戳相同,仍然刷新当前页 
Esc:停止下载Web页 
Ctrl+O或ctrl+L:转到新位置并且不保存在地址栏中。 
ctrl+N:打开新窗口 
ctrl+W:关闭当前窗口 
ctrl+S:保存当前页 
ctrl+P:打印当前页或当前框架。 
ctrl+E:在浏览器中找开搜索页。 
ctrl+I:打开收藏夹 
ctrl+H:打开历史记录。 
ctrl+向左箭:在地址栏中时,将光标左移到相邻的逻辑分隔符(。或/) 
ctrl+向右箭:在地址栏中时,将光标右移到相邻的逻辑分隔符(。或/) 
ctrl+enter:在址栏中将“www.“添加到键入的文本的前面. 
向上箭:在"自动完成"建议项的列表中向前移动. 
向下箭:在"自动完成"建议项的列表中向后移动. 
ctrl+D:将当前web页添加到收藏夹中. 
ctrl+B:打开"整理收藏夹
  • 安全性考虑

    在界面上通过下列方式来控制出错几率,会大大减少系统因用户人为的错误引起的破坏。开发者应当尽量周全地考虑到各种可能发生的问题,使出错的可能降至最小。

    如应用出现保护性错误而退出系统,这种错误最容易使用户对软件失去信心。因为这意味着用户要中断思路,并费时费力地重新登录,而且已进行的操作也会因没有存盘而全部丢失。

安全原则:


1):最重要的是排除可能会使应用非正常中止的错误。​
2):应当注意尽可能避免用户无意录入无效的数据。
3):采用相关控件限制用户输入值的种类。​
4):当用户作出选择的可能性只有两个时,可以采用单选框。
5):当选择的可能再多一些时,可以采用复选框,每一种选择都是有效的,用户不可能输入任何一种无效的选择。
6):当选项特别多时,可以采用列表框,下拉式列表框。
7):在一个应用系统中,开发者应当避免用户作出未经授权或没有意义的操作。
8):对可能引起致命错误或系统出错的输入字符或动作要加限制或屏蔽。
9):对可能发生严重后果的操作要有补救措施。通过补救措施用户可以回到原来的正确状态。​
10):对一些特殊符号的输入、与系统使用的符号相冲突的字符等进行判断并阻止用户输入该字符。
11):对错误操作最好支持可逆性处理,如取消系列操作。
12):在输入有效性字符之前应该阻止用户进行只有输入之后才可进行的操作。​
13):对可能造成等待时间较长的操作应该提供取消功能。
14):特殊字符常有;;’”><,`‘:“[”{、\|}]+=)-(_*&&^%$#@!,.。?/还有空格。
15):与系统采用的保留字符冲突的要加以限制。​
16):在读入用户所输入的信息时,根据需要选择是否去掉前后空格。
17):有些读入数据库的字段不支持中间有空格,但用户切实需要输入中间空格,这时要在程序中加以处理。
  • 多窗口的应用与系统资源

    设计良好的软件不仅要有完备的功能,而且要尽可能的占用最底限度的资源。

1):在多窗口系统中,有些界面要求必须保持在最顶层,避免用户在打开多个窗口时,不停的切换甚至最小化其他窗口来显示该窗口。
2):在主界面载入完毕后自动卸出内存,让出所占用的WINDOWS系统资源。
3):关闭所有窗体,系统退出后要释放所占的所有系统资源 ,除非是需要后台运行的系统。​
4):尽量防止对系统的独占使用。
5):窗口能否基于相关的输入或菜单命令适当地打开?
6):窗口能否改变大小、移动和滚动?
7):窗口中的数据内容能否使用鼠标、功能键、方向箭头和键盘访问?
8):当被覆盖并重调用后,窗口能否正确地再生?
9):需要时能否使用所有窗口相关的功能?
10):所有窗口相关的功能是可操作的吗?
11):是否有相关的下拉式菜单、工具条、滚动条、对话框、按钮、图标和其他控制可为窗口可用,并适当地显示?
12):显示多个窗口时,窗口的名称是否被适当地表示?
13):活动窗口是否被适当地加亮?
14):如果使用多任务,是否所有的窗口被实时更新?
15):多次或不正确按鼠标是否会导致无法预料的副作用?
16):窗口的声音和颜色提示和窗口的操作顺序是否符合需求?
17):窗口是否正确地关闭?