我在我的spring-boot应用程序中使用Gatling插件来对作为应用程序的一部分公开的REST API进行性能测试,因此需要我的应用程序在gatling测试运行之前启动.
由于Gatling执行默认情况下与集成测试阶段相关联,因此我尝试分别使用启动 - 停止目标进行预集成阶段和集成后阶段,但是同样低于错误:
[[错误]无法执行目标org.springframework.boot:spring-boot-maven-plugin:1.5.1.RELEASE:在项目上启动(预集成测试):Spring应用程序在配置的超时之前没有启动(30000ms - > [帮助1]]
只是补充一点,mvn gatling:execute当应用程序启动时,运行的gatling目标运行正常,但我想将其作为maven阶段的一部分运行.
我使用下面的代码.下面的代码将在您想要的配置文件中启动spring应用程序,然后继续运行测试.ShutdownHook将关闭服务.
class MicroserviceServiceSimulation extends Simulation {
System.setProperty("spring.profiles.default", System.getProperty("spring.profiles.default", "it"));
val app: ConfigurableApplicationContext = SpringApplication.run(classOf[YourApplication])
Runtime.getRuntime.addShutdownHook(new Thread() {
override def run(): Unit = app.stop()
})
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1638 次 |
| 最近记录: |