您使用什么方法来测试Web应用程序的可伸缩性?

时间:2009-08-13 13:58:49

标签: testing web-applications

我们的测试系统非常简陋;启动浏览器,查看它是否有效。最近,我们的客户发现了我们的应用程序问题,其中用户数量在应用程序中造成了减速。该应用程序基本上是一个巨大的Word文档,人们可以同时编辑自己的版本。部分问题来自于不知道如何同时测试多个实例。我的伙伴和我想过如何测试这个;一个想法是雇用一个网吧,雇用学生一个小时来敲响应用程序。

在测试基于Web的应用程序时,人们试图模仿并发性的其他方式是什么?这里的大部分建议都是针对具体的方法;我问,你如何测试它以确保它有效?

3 个答案:

答案 0 :(得分:3)

如果您从未签出Selenium,那么您需要。它允许您通过浏览器进行自动Web测试。好的,所以第一个问题就解决了。

现在理想情况下,您可以使用相同的脚本并将其加载到一堆盒子上并立即运行它们以进行某种负载测试吗?幸运的是,有人已经想到这一点,虽然它是付费服务:Browser Mob。但是,看起来你似乎愿意花一点钱来做这件事,并且可能会让你更好,更可重复的结果。

答案 1 :(得分:2)

我们通常使用JMeter在Web服务器上生成模拟HTTP负载,回答“网络应用程序可以一次执行多项操作”的问题。

我发现考虑区分几种不同类型的测试是有帮助的;并发(当系统中的两个事件发生碰撞时会发生什么),容量(当存在许多重叠请求时会发生什么),容量(当数据在系统中累积时会发生什么)......

巨大的普遍减速,由SLA之外的响应时间证明,通常与容量问题(争用是常见原因)或数量(许多用户,大量数据,系统随时间变慢)相关。前者通常需要某种多线程请求流;后者通常可以通过预加载卷来管理,然后测量单个用户所经历的响应时间。

我通常发现将负载发生器与实际测量/仪器分开是一个好主意。这可以简单到在那边有一个黑盒子来产生一个典型的负载,并坐在这里用秒表测量典型用例的响应性。

答案 2 :(得分:0)