首页> 外文会议>IEEE/ACM International Workshop on Automation of Software Test >Improving the Testing Efficiency of Selenium-Based Load Tests
【24h】

Improving the Testing Efficiency of Selenium-Based Load Tests

机译:提高基于硒的负载测试的测试效率

获取原文

摘要

Web applications must be load tested to analyze their behavior under various load conditions. Typically, these load tests are automated using protocol-level HTTP requests (e.g., using JMETER). However, there are several disadvantages to using protocol-level requests for load tests. For example, protocol-level requests are only partially representative of the true usage of a web application, as the web application is not actually executed in a browser. It can be difficult to abstract complex behavior, such as a login sequence, into requests without executing the application. Browser-based load testing can be used as an alternative to protocol-level requests. Using a browser-based testing framework, such as SELENIUM, tests can be executed more realistically - inside a browser. Unfortunately, because a browser instance must be started to conduct a test, browser-based testing has a high performance overhead which limits its applicability for load tests. In this paper, we propose an approach for reducing the performance overhead of running SELENIUM-based load tests. Our approach shares browser instances between test user instances, thereby reducing the performance overhead that is introduced by launching many browser instances during the execution of a test. Our experimental results show that our approach can significantly increase the number of user instances that can be tested on a test machine without overloading the load driver. Our approach and the experiences that we share in this paper can help software practitioners improve the efficiency of their own SELENIUM-based load tests.
机译:必须对Web应用程序进行负载测试,以分析其在各种负载条件下的行为。通常,这些负载测试是使用协议级HTTP请求(例如,使用JMETER)自动执行的。但是,使用协议级请求进行负载测试有几个缺点。例如,协议级请求仅部分代表Web应用程序的真实用法,因为Web应用程序实际上未在浏览器中执行。如果不执行应用程序,可能很难将复杂的行为(例如登录序列)抽象到请求中。基于浏览器的负载测试可以用作协议级请求的替代方法。使用基于浏览器的测试框架(例如SELENIUM),可以在浏览器内部更实际地执行测试。不幸的是,由于必须启动浏览器实例进行测试,因此基于浏览器的测试具有较高的性能开销,从而限制了其在负载测试中的适用性。在本文中,我们提出了一种减少运行基于SELENIUM的负载测试的性能开销的方法。我们的方法在测试用户实例之间共享浏览器实例,从而减少了在执行测试过程中启动许多浏览器实例所引入的性能开销。我们的实验结果表明,我们的方法可以显着增加可以在测试计算机上进行测试的用户实例数量,而不会导致负载驱动程序过载。我们在本文中分享的方法和经验可以帮助软件从业人员提高他们自己基于SELENIUM的负载测试的效率。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号