Gradle:运行 在部署期间而不是在安装期间进行集成测试
Gradle: Run Integration tests during deployment, not during install
我正在寻找有关最佳做法以及如何实施的建议。
我们必须进行测试类型,使用 Mockito 模拟依赖项的测试(单元测试,因为它们是在代码单元上进行测试),并进行彻底的测试(RESTful 资源 - > 数据库,称之为集成测试)。
集成测试正在启动一个新的 JVM 并填充一个 H2 数据库,因此它们需要更长的时间才能完成 运行。
理想情况下,当您发出命令 gradle test
时,我们希望单元测试 运行,但如果您要进行部署,我们希望集成测试 [=24] =] 还有。
无论如何,我很好奇人们在部署之前对很多确定的集成测试 运行 做了什么,或者他们是否以其他方式解决了这个问题。谢谢!
您可以使用任务依赖关系来确保集成任务在部署任务之前执行。
假设正在 运行 集成测试的任务名为 integTestTask
,部署任务名为 deployTask
deployTask.dependsOn integTestTask
此命令确保当您执行 gradle deployTask
集成任务时将 运行 在部署任务之前执行。检查下面的页面以分离单元测试和集成测试。
https://docs.gradle.org/current/userguide/tutorial_using_tasks.html#sec:task_dependencies
https://www.michael-bull.com/blog/2016/06/04/separating-integration-and-unit-tests-with-gradle
我正在寻找有关最佳做法以及如何实施的建议。
我们必须进行测试类型,使用 Mockito 模拟依赖项的测试(单元测试,因为它们是在代码单元上进行测试),并进行彻底的测试(RESTful 资源 - > 数据库,称之为集成测试)。
集成测试正在启动一个新的 JVM 并填充一个 H2 数据库,因此它们需要更长的时间才能完成 运行。
理想情况下,当您发出命令 gradle test
时,我们希望单元测试 运行,但如果您要进行部署,我们希望集成测试 [=24] =] 还有。
无论如何,我很好奇人们在部署之前对很多确定的集成测试 运行 做了什么,或者他们是否以其他方式解决了这个问题。谢谢!
您可以使用任务依赖关系来确保集成任务在部署任务之前执行。
假设正在 运行 集成测试的任务名为 integTestTask
,部署任务名为 deployTask
deployTask.dependsOn integTestTask
此命令确保当您执行 gradle deployTask
集成任务时将 运行 在部署任务之前执行。检查下面的页面以分离单元测试和集成测试。
https://docs.gradle.org/current/userguide/tutorial_using_tasks.html#sec:task_dependencies
https://www.michael-bull.com/blog/2016/06/04/separating-integration-and-unit-tests-with-gradle