提问者:小点点

消息生产者的Spring云合约


我正在使用Spring Cloud合约处理消息,如

https://cloud.spring.io/spring-cloud-static/spring-cloud-contract/1.2.1.RELEASE/single/spring-cloud-contract.html#_spring_cloud_contract_verifier_messaging

一切都如留档所述。

我有一种情况,我的触发方法在同一通道上引发两条消息(例如SMS发送给两个不同的方),我无法正确断言这两条消息。消息以随机顺序接收,有时测试用例通过,有时失败。

我需要一种方法来正确断言这两条消息。


共1个答案

匿名用户

OutputMessage还有assertThis方法(https://github.com/spring-cloud/spring-cloud-contract/blob/v1.2.1.RELEASE/spring-cloud-contract-spec/src/main/groovy/org/springframework/cloud/contract/spec/internal/OutputMessage.groovy#L35),这里(https://cloud.spring.io/spring-cloud-static/spring-cloud-contract/1.2.1.RELEASE/single/spring-cloud-contract.html#contract-dsl-common)描述了它。您也可以在那里断言另一条消息。您还可以在输入部分使用该断言来准确知道发送了哪一条消息,然后您也可以发送丢失的一条消息。