消費者側で契約を検証するときに、シナリオ (別名状態) を使用しようとしています。シナリオは、ドキュメントに記載されているように、Groovy スクリプトの番号プレフィックスを使用して、Spring クラウド コントラクトで定義されます。
my_contracts_dir\
scenario1\
1_login.groovy
2_showCart.groovy
3_logout.groovy
その結果、wiremock json ファイルに、次のように「newScenarioState」フィールドが追加されていることがわかります。
{
"uuid" : "34a829d1-adf4-41e4-b7d9-6ee66d7de8bc",
"request" : {
"url" : "/foo/demo",
"method" : "GET"
},
"response" : {
"status" : 200,
"body" : "[{\"model\":{\"address\":\"Address\",\"name\":\"String\"}}]",
"headers" : {
"Content-Type" : "application/json"
}
},
"scenarioName" : "Scenario_contracts",
"requiredScenarioState" : "Step2",
"newScenarioState" : "Step3"
}
コンシューマー統合テストを作成するときに、この状態をどのように使用できるかという質問はありますか? スタブスイッチを「Step3」の状態にしたいとしましょう。消費者統合テストでどのように行うことができますか?
追加情報: コンシューマー統合テスト (Junit テスト) では、@AutoConfigureStubRunner の代わりに StubRunnerRule を使用します。したがって、このルールを使用して、いくつかの API を使用してスタブの状態を設定できると期待しています。しかし、何も見つかりませんでした。