私はSpring Cloud Contractを使用してRESTサービス用のスタブを作成していますので、RESTクライアントでテストできます。私は、Spring Bootアプリケーション内でスタブランナーを動作させており、それはすべて期待どおりに動作します。私が抱えている問題は、RESTサービスの最終的な振る舞いをよりよくシミュレートするために、レスポンスにおけるリクエストの要素を見たいということです。たとえば、この契約では、私が応答に逆流出現する要求に「コード」フィールドに渡されたものをみたい:Spring Cloud Contract Groovy DSLを使用して、リクエストの値を含めるようにレスポンスをパラメータ化するにはどうすればよいですか?
package contracts
org.springframework.cloud.contract.spec.Contract.make {
request {
method('POST')
url $("/resource")
body ([
code : $(client(regex('[a-zA-Z0-9]{5,32}')))
])
}
response {
status 200
body([
code: ???
])
}
}
明らか入力「コード」は、正規に一致する何もすることができます実際の値は実行時まで不明です。私が "???"の代わりに置くことができるものはありますか?要求で提出されたコードを返すのですか?
request.body.serverValue['code']
それはそうその値がおそらく発生テスト・ソースの下ContractVerifierTest.javaにテストの自動生成を可能にするために、コンパイル時に生成される:私は、例えば、アクセスしようとしました。
これはできますか?これはSpring Cloud Contractの適切な使用ですか?
私は実際に1.1.0から始まる答えの原因を更新しました。 –
ああ、優れた@MarcinGrzejszczak、更新のおかげで! – billshwah47