首页> 外文会议>IEEE/ACM International Workshop on Automation of Software Test >Wait, Wait. No, Tell Me. Analyzing Selenium Configuration Effects on Test Flakiness
【24h】

Wait, Wait. No, Tell Me. Analyzing Selenium Configuration Effects on Test Flakiness

机译:等等。没有告诉我。分析硒配置对试验片的影响

获取原文

摘要

Flaky tests are a source of frustration and uncertainty for developers. In an educational environment, flaky tests can create doubts related to software behavior and student grades, especially when the grades depend on tests passing. NC State University's junior-level software engineering course models industrial practice through team-based development and testing of new features on a large electronic health record (EHR) system, iTrust2. Students are expected to maintain and supplement an extensive suite of UI tests using Selenium WebDriver. Team builds are run on the course's continuous integration (CI) infrastructure. Students report, and we confirm, that tests that pass on one build will inexplicably fail on the next, impacting productivity and confidence in code quality and the CI system. The goal of this work is to find and fix the sources of flaky tests in iTrust2. We analyze configurations of Selenium using different underlying web browsers and timeout strategies (waits) for both test stability and runtime performance. We also consider underlying hardware and operating systems. Our results show that HtmlUnit with Thread waits provides the lowest number of test failures and best runtime on poor-performing hardware. When given more resources (e.g., more memory and a faster CPU), Google Chrome with Angular waits is less flaky and faster than HtmlUnit, especially if the browser instance is not restarted between tests. The outcomes of this research are a more stable and substantially faster teaching application and a recommendation on how to configure Selenium for applications similar to iTrust2 that run in a CI environment.
机译:片状测试是开发人员的挫折和不确定性的源泉。在教育环境中,片质测试可以创造与软件行为和学生成绩相关的疑虑,特别是当等级取决于测试通过时。 NC州立大学的初级软件工程课程通过基于团队的开发和对大型电子健康纪录(EHR)系统的新功能进行了工业实践,ITRust2。预计学生将维持和补充使用Selenium Webdriver的广泛的UI测试套件。团队构建在课程的持续集成(CI)基础架构上运行。学生报告,我们确认,在一个构建中传递的测试将在下一步,影响代码质量和CI系统中的生产力和信心。这项工作的目标是找到并修复ITRust2中的片状测试的来源。我们使用不同的底层Web浏览器和超时策略(等待)分析Selenium的配置,用于测试稳定性和运行时性能。我们还考虑基础硬件和操作系统。我们的结果表明,带有线程的HTMLUnit等待最低数量的测试失败和较差的硬件上的最佳运行时间。当给出更多资源(例如,更多内存和更快的CPU)时,具有角度触向等待的Google Chrome比HTMLUnit更少,特别是如果在测试之间没有重新启动浏览器实例。该研究的结果是一个更稳定,更快的教学应用程序以及关于如何配置Selenium的建议,用于在CI环境中运行的ITRust2。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号