web测试中不容忽视的细节


最近在自动化测试的圈子里,我总是碰到很多人在群里和其他地方问为什么这个会出现错误?


为什么这个运行不了?为什么我百度了还是没用?


其实真正的原因可能是你忽略了下面这些需要注意的小地方:

 

 


1.页面分辨率

通常是计算机的默认分辨率,但是还是会有一些老式电脑存在1024*768的情况。

 

2.浏览器的兼容性

目前市场上的主流浏览器:IE8.0-11,Chrome,Firefox,360浏览器。通常要保持IE和chrome,firefox浏览

器下的兼容性,需要保持页面不变型,js均执行正常。

开发设计组需要制定页面设计规范和js设计规范,保证主流的浏览器页面显示兼容性和js设计兼容性。

 

3.易用性

Tab键的使用:页面中支持tab按键切换。

Enter键的使用:页面中的某些确定按钮可以使用enter键盘替代。

前进和后退:用户前进和后退有可能会造成数据不完整的提交,重复提交,或者其他的显示问题。

用户删除某个数据前,需要提示用户是否删除,默认焦点选择为“否”。

页面的提示语言,js提示语言,程序提示语言:

提示风格不一样,或者表达不够清晰。

 

4.微软语言标准

全角字符和半角字符都要使用一个空格分开。

英文和数字直接要有空格分开。

汉字和英文,数字要有空格分开。

带有汉字的话要用全角字符。

语言中不要混用全角和半角标点。

在语言中,永远不要用“你”这个字,要做进一步的步骤描叙的时候,要多用“请”字。

 

5.文字的缩略和折行
输入框提交很长的字符,并且不折行,则提交后,页面有可能被拉的非常长,如果要将文字后面的一些文字处理为省略号,需要注意不要将中文截成半个字符。

 

6.图片的显示和链接
图片是否增加链接通常被开发人员忽略。

图片的显示位置通常会显示不同像素大小和比例的图,所以要明确定义图片的处理策略。

 

7.重复提交
用户提交数据页面,用户有可能连续多次点击提交按钮,造成数据的重复提交。

用户点击“提交”后,将按钮变成Disable状态。

 

8.输入判断问题
所有键盘输入的特殊字符,均可以正常保存。

需要特别出处理英文单引号,英文双引号等引起的程序错误的问题。

需要处理“<”“/” “”等容易保存出错的符号。

做出特殊模块的字符规划。

 

9.多个IE同时访问的情况
用户可能打开不同的IE使用相同的账户去进行操作,数据是否一致性和同步的问题。

多个IE使用不同用户,cookie操作会不会出现用户信息混乱的问题。

 

10.安全考虑
不要把密码等敏感的用户信息明文的显示在url中。

即使是传递密码参数,也不要用pwd,passpord这样的参数名称来进行传递,防止被截获。

要在传递参数的操作中使用NoCache参数,防止将url参数进行缓存。

 

11.防止Sql注入
不要把数据库或程序的如何报错信息显示在页面上。

最好程序能够将select、update、delete 这些关键字都过滤掉,不让用户提交包含这些数据的信息。

数据库中设计到操作权限的表名和字段名别用很通俗易懂的名字。

输入框尽量过滤掉“<>”这样的字符,防止javascript攻击。

 

12.关于Cookie
Cookie没有设定过期时间。

IE不支持Cookie的时候没有如何提示信息。

Cookie中的敏感信息没有进行加密。

 

13.各种资源链接的释放:
有时候系统莫名访问不了,则有可能是数据库的链接没有释放。

压力测试的时候,连接释放如果效率不高,则有可能出现大量连接超时失败。

预防:系统资源的释放过程,最好通过代码review的方式来互相监督。

 

14.关于Keepalive的设置
如果需要在一个连接同时获取多个资源,则需要打开apache或resin的Keepalive参数为On,来提高系统的处理能力,减少多次建立连接所消耗的资源,如果大量的处理只是一次性连接,则不要打开。

预防:在实际工作中,需要将keepalive分别设置为On或者Off来验证哪个设置的性能更好。

 

15.系统上线后的log配置

上线以后,要关闭无用大量调试log信息,不要打开过多的log。

近年来,软件测试行业越来越不满足只会点点点的测试了,越来越多的公司开始要求自动化、性能等能力。

 


如果你还在犹豫我到底要不要提升的时候,那些比你学得更早的,更快的已经把你远远地甩在了后面。
如果你感觉到了紧迫和压力,欢迎加群:718897738大家一起交流自动化的技术,为了更高的薪资,更为了不被行业淘汰!


作者:爱码小哥,发布于:2020/05/12
原文:https://www.cnblogs.com/cemaxueyuan/p/12871215.html