maven配置junit5
Selenium是一组支持浏览器自动化的工具和库,主要用于Web应用程序测试。 Selenium的组件之一是Selenium WebDriver,它提供客户端库,JSON有线协议(与浏览器驱动程序进行通信的协议)和浏览器驱动程序。 Selenium WebDriver的主要优点之一是,它受所有主要编程语言的支持,并且可以在所有主要操作系统上运行。
在带有Selenium WebDriver的JUnit 5的这一部分–教程中,您将了解JUnit 5的其他功能,这些功能将通过并行运行测试,配置测试顺序和创建参数化测试来帮助您减少测试的执行时间。
您还将学习如何利用Selenium Jupiter功能,例如通过系统属性进行测试执行配置,单个浏览器会话测试以加快测试执行速度或捕获测试中的屏幕截图。 最后,您将学习如何将AssertJ库添加到您的项目。
关于本教程
您正在阅读带有Selenium WebDriver的JUnit 5的第三部分-教程 。
本教程中的所有文章:
- 第1部分– 从头开始设置项目–使用JUnit 5和Jupiter Selenium进行Gradle
- 第2部分– 使用Selenium内置的
PageFactory
实现Page Object Pattern - 第3部分– 改进项目配置–并行执行测试,测试执行顺序,参数化测试,AssertJ等
本教程的源代码可以在Github上找到
使用JUnit 5并行测试执行
JUnit 5带有内置的并行测试执行支持。
以下命令将并行运行TodoMvcTests的测试方法:
./gradlew clean test --tests *TodoMvcTests -Djunit.jupiter.execution.parallel.enabled= true -Djunit.jupiter.execution.parallel.mode. default =concurrent
构建成功,在执行过程中,您应该注意到两个Chrome浏览器实例正在运行。 在此运行中,所有测试的执行时间减少到10秒:
> Task :test pl.codeleak.demos.selenium.todomvc.TodoMvcTests > createsTodo() PASSED pl.codeleak.demos.selenium.todomvc.TodoMvcTests > createsTodosWithSameName() PASSED pl.codeleak.demos.selenium.todomvc.TodoMvcTests > togglesAllTodosCompleted() PASSED pl.codeleak.demos.selenium.todomvc.TodoMvcTests > togglesTodoCompleted() PASSED pl.codeleak.demos.selenium.todomvc.TodoMvcTests > clearsCompletedTodos() PASSED pl.codeleak.demos.selenium.todomvc.TodoMvcTests > editsTodo() PASSED pl.codeleak.demos.selenium.todomvc.TodoMvcTests > removesTodo() PASSED BUILD SUCCESSFUL in 10s 4 actionable tasks: 4 executed
提示:有关更多选项,请查阅文档: https : //junit.org/junit5/docs/current/user-guide/#writing-tests-parallel-execution
使用JUnit 5测试执行顺序
自动化测试应能够独立运行且无特定顺序,并且测