一个类似的问题已经问( Performing a Stress Test on Web Application?),但我想测试一个Web应用程序,防止双重提交和采取一些反XSRF行动,因此需要JavaScript进行评估。如何压力测试一个JavaScript的Web应用程序
有没有人用Web应用程序进行压力测试,需要(和使用)JS和任何经验分享?
jMeter不会工作我猜...
谢谢!
一个类似的问题已经问( Performing a Stress Test on Web Application?),但我想测试一个Web应用程序,防止双重提交和采取一些反XSRF行动,因此需要JavaScript进行评估。如何压力测试一个JavaScript的Web应用程序
有没有人用Web应用程序进行压力测试,需要(和使用)JS和任何经验分享?
jMeter不会工作我猜...
谢谢!
Watir是一个简单的开源库,用于自动化Web浏览器。 Watir以与人们相同的方式驱动浏览器。它点击链接,填写表格,按下按钮。 Watir还会检查结果,例如预计的文本是否出现在页面上。
它驱动Internet Explorer,但也可以在Firefox(和Safari在某种程度上)中正常工作。
我使用的测试仪使用Bad Boy进行负载测试。我相当肯定你可以测试使用JavaScript的交互,所以你应该能够测试像双重提交的东西。
就您的后端而言,只要请求是有效,触发无论是来自JavaScript还是负载测试工具的请求都无关紧要。
您可以创建一大堆假的请求来完成许多不同的事情(希望能够代表实际的使用模式)并用负载测试工具来摧毁您的web服务器。
有一群在那里:
我已经试过BADBOY这是确定。这个大而胖的工具是SilkTest。它需要大量的编程来启动和运行,但是你可以完成一些非常扎实的工作!
如果您只需要强调来自IIS日志文件,我有一个自定义构建工具。我将很快在CodePlex上发布它。
Selenium RC是另一种选择。
因为每个客户端都需要运行浏览器导致可伸缩性问题,所以我不觉得使用Selenium进行压力测试会很实用。但是,它会很好地测试Javascript – 2009-01-21 02:56:15
如果您在AWS上运行测试,则不会出现可伸缩性问题... – Hejazzman 2016-08-09 09:41:44
用的Watir和Selenium RC或任何其他全方位浏览器解决方案的问题是,他们需要一个完整的浏览器:P
浏览器是运行非常昂贵,通常需要300MB以上的RAM。将这些需求乘以100即可,而且您需要大量的硬件。幸运的是,有一个解决方案:我最近创建了一个完全符合您要求的公司。
检出http://browsermob.com,您可以运行有限的测试(最多25个用户)来感受应用程序。如果您有任何问题,请随时与我们联系!
Patricky,您的网站在其HTTPS实施方面存在问题 – shanabus 2015-06-02 14:46:09
此外,请查阅我最近关于Ajaxian的文章。我认为它很好地解释了为什么真正的浏览器很重要,以及为什么执行JavaScript对于负载测试变得越来越重要。
一种解决方案可能是值得追求的是在Amazon EC2上运行Selenium提供您所需要的可扩展性。 Selenium上有一个tutorial,它使用Selenium网格附带的示例。对于小型机器,Windows机器每小时12.5美分,这意味着500机器测试每小时需要62.50美元。
优点:
缺点:
由于JMeter是不是浏览器,也不会解释你的页面获取上的JavaScript代码:
JMeter的不处理Javascript或内嵌在HTML页面中的小程序。 [JMeter维基]
那么,你能做什么?你可以通过add WebDriver to JMeter test来评估网页。
网络驱动程序自动采样器在浏览器(客户端)的执行和 性能指标收集。 性能测试的很大一部分,到目前为止,已经在服务器端的 的东西。然而,随着技术的进步,HTML5,JS和CSS的改进,越来越多的逻辑和行为被推送到客户端 。这增加了 website/webapp的整体感知性能,但是这个指标在JMeter中不可用。增加整体浏览器执行时间的东西 可能包括:
- 客户端Javascript执行 - 例如, AJAX,JS模板
- CSS转换 - 例如, 3D矩阵变换,动画
- 第三方插件 - 例如。 Facebook的喜欢,双击广告,站点分析等
所有这些东西添加到浏览器的整体执行时间,这 项目旨在衡量了完成渲染的所有 此内容的时间。
那么,SilkTest是一个专门用于功能测试的工具,对于负载测试,您希望使用SilkPerformer的浏览器驱动负载测试。 – tehlexx 2011-09-26 12:18:27