性能测试经验交流——偶然性问题
跟一般的功能测试一样,性能测试也会出现偶然性问题。
碰到这种问题,我们需要发挥测试人员的革命精神,追查到底。我们常发现的因素如下:
外部因素变化,比如,某几次测试,有时候好,有时候不好,并没有规律可循。最后发现原来是因为网络不稳定造成。请求返回变化。有时候第二次请求的内容取决于第一次的返回信息(也就是所谓的“关联”),这种关联一般通过string的parse实现,而这一般都不是很可靠,返回一旦变化,可能就会出错。
应用服务器如果是集群,一个用户请求某一台服务器能得到正确返回,但是如果换做另一个用户,可能该服务器并没有该用户的信息,所以返回错误。
性能测试经验交流——客户端并发
测试客户端要模拟高并发,必然要启动多线程,所以肯定也会存在线程并发问题。比如:
在做参数化的时候,存储参数的数组就是一个共享对象。如果要使每个线程的每次循环都读取不一样的参数,那数组下标的更新需要注意并发问题。
比如,如果在脚本中要调用System.out,那么也需要注意这也是一个共享对象,如果调用System.out过多,会导致线程的等待,使客户端性能降低。
性能测试经验交流——测试人员
性能测试由于涉及面广,对测试人员的要求就很高。我想,性能测试人员应该培养如下几方面的能力:
如前所述,对应用架构的透彻理解。
沟通能力,测试进行过程中,一定要培养勤于跟开发沟通的意识,以提高工作效率。
解决问题的能力,在编脚本或者测试执行过程中,会碰到很多问题。首先是不要害怕,先考虑问题的可能原因,然后一步步定位、验证。当然,这个过程,需要调试等经验的不断积累。
文章来源于领测软件测试网 https://www.ltesting.net/