2017-02-05 20 views
4

SpringブートアプリケーションでGatlingプラグインを使用しているため、アプリケーションの一部として公開されているREST APIのパフォーマンステストを実行しています。走る統合テストを実行する前にspring-bootアプリケーションを起動する方法

私は調歩事前統合相と統合後フェーズの目標をそれぞれ使用したが、同じのため、エラーの下に取得しようとしたので、ガトリングの実行は、デフォルトでは、統合テスト・フェーズに関連しているので:

ゴールを実行できませんでした org.springframework.boot:spring-boot-maven-plugin:1.5.1.RELEASE:プロジェクトの開始 (pre-integration-test):Springアプリケーションが開始されませんでした 設定されたタイムアウト(30000ms→[Help 1]]

ただ実行中のギャングの目標mvn gatling:executeは、アプリケーションが起動してもうまく動作しますが、私はそれをmavenフェーズの一部として実行したいと追加します。

答えて

6

私は以下のコードで作業しました。以下のコードは、あなたが望むプロファイルで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() 
    }) 

} 
+0

おかげで、それが:-)働きました – user762421

関連する問題