将Selenium与Jmeter或Grinder集成

时间:2010-10-14 14:01:17

标签: selenium jmeter grinder

我一直在尝试评估负载和性能测试工具,我想我可能会使用Jmeter或The Grinder。我正在努力在两者之间做出选择,并希望这里有人可以提供帮助。

我目前正在使用selenium来运行Web应用程序的功能测试,现在我需要将负载测试作为批处理作业的一部分。我的计划是使整个过程自动化。

我对这两个工具提出了几个问题

  • 是否可以使用Java对测试用例进行编程而不是Jython for Grinder和XML for Jmeter?
  • 将Jmeter或Grinder与Ant和Junit集成是多么容易
  • 磨床的工作方式与Jmeter相同。即它只将请求URL发送到服务器,并且在提交之前不进行任何预处理?例如在表单的onSubmit上调用的javascript方法。
  • 对于具有大量javascript和动态css / javascript处理的应用程序,您推荐哪种应用程序最适合。例如,许多表单都是动态提交的。即,当用户点击提交按钮时,它不仅仅提交表单,通常调用javascript函数,在提交表单之前进行一些处理。在某些情况下,表单本身是使用Javascript动态构建的。您认为这两种工具中的哪一种可以更好地处理这些工具?
  • 有没有人有任何提示,或者是否有可能将Selenium与Jmeter或Grinder集成,并且更容易与Selenium集成。

谢谢

3 个答案:

答案 0 :(得分:5)

  

集成Jmeter有多容易   或者使用Ant和Junit的Grinder

jMeter可以运行任何jUnit3测试,并且有补丁允许它与jUnit4一起运行。

我已经从jMeter运行了selenium测试,最大的问题是你不能同时运行太多的测试。在我的机器上,我一次运行了8个测试,但它还不足以测试性能。还要测试需要一些时间来初始化。

答案 1 :(得分:1)

唉,我只能回答你问题的一部分:

  

对于具有大量javascript和动态css / javascript处理的应用程序,您推荐哪种应用程序最适合。例如,许多表单都是动态提交的。即,当用户点击提交按钮时,它不仅仅提交表单,通常调用javascript函数,在提交表单之前进行一些处理。在某些情况下,表单本身是使用Javascript动态构建的。您认为这两种工具中的哪一种可以更好地处理这些工具?

Jmeter不会在运行时执行Javascript - 它只能发布/获取http请求。如果您需要将Javascript作为性能指标的一部分执行,Jmeter将不会为您提供所需的数字。如果您不需要将处理作为指标的一部分,那么您会没事的。它归结为您正在寻找的东西 - 服务器可以处理的负载,或完整的HTML / CSS / JavaScript渲染的“真实”用户体验。

答案 2 :(得分:1)

JMeter和大多数其他负载测试工具旨在在协议级别(HTTP GET,HTTP POST等)上运行。另一方面,Selenium在用户级别工作(点击,键入,拖放等)。它们从根本上说不太适合一起工作。

如果您想进行Selenium负载测试,请查看http://browsermob.com。免责声明:我是BrowserMob的创始人:)