Loadrunner录制脚本时,验证码问题

2011-02-23  王春 

 

基本上可以考虑从三个途径来解决该问题:
1、第一种方法,也是最容易想到的,在被测系统中暂时屏蔽验证功能,也就是说,临时修改应用,无论用户输入的是什么验证码,都认为是正确的。这种方法最容易实现,对测试结果也不会有太大的影响(当然,这种方式去掉了验证验证码这个环节,不过这个环节本来就很难成为系统性能瓶颈)。但这种方法有一个致命的问题:如果被测系统是一个实际已上线的系统,屏蔽验证功能会对已经在运行的业务造成非常大的安全性的风险,因此,对于已上线的系统来说,用这种方式就不合适了;

2、第二种方法,在第一种方法的基础上稍微进行一些改进。第一种方法带来了很大的安全性问题,那么我们可以考虑,不取消验证,但在其中留一个后门,我们设定一个所谓的万能验证码,只要用户输入这个万能验证码,我们就验证通过,否则,还是按照原先的验证方式进行验证。这种方式仍然存在安全性的问题,但由于我们可以通过管理手段将万能验证码控制在一个小的范围内,而且只在性能测试期间保留这个小小的后门,相对第一种方法来说,在安全性方面已经有较大的改进了;

3、如果安全性对应用来说真的是至关重要的,不容许有一丝一毫的闪失,那我们还可以用更进一步的方法来处理这个问题。一般的性能测试工具(MILRSeagueSilk performer等)都能够调用外部的DLL或是组件接口,因此,可以考虑获得验证码验证部分的实现,写一个验证码获取的DLL,在测试脚本中进行调用即可。

除了这三种方法以外,可能还会有其他的方法存在,也希望各位能提供一些其他的思路。在我的实践中,第二种方法用得比较多,对未上线系统系统的内部性能测试,有时候也用第一种方法。但要提醒的是,如果针对的是已上线系统,无论用哪种方法,测试完成后,都必须立刻将应用恢复,并对系统进行一次安全审计,以免在测试期间被他人入侵。第三种方法用得比较少,而且具体上还依赖于验证组件是否能提供这样的接口。

369°/3665 人阅读/3 条评论 发表评论

张东升  2011-02-23

第三种方法靠谱,第二种方法省事,第一种方法最简单


王春  2011-02-23

张东升: 第三种方法靠谱,第二种方法省事,第一种方法最简单
是呀,我和开发讨论最终觉得还是用第一种方法


谭明  2011-03-02

Good


登录 后发表评论
王春
访客 4287