我正在尝试将验证结果与pvm for jvm / spring一起发布到pact代理。 我正在使用junit4。 执行并通过了测试,将验证报告打印到控制台/添加了json文件,但未将结果发布到pact代理。
在pom.xml中:
<dependency>
<groupId>au.com.dius</groupId>
<artifactId>pact-jvm-provider-spring_2.12</artifactId>
<version>3.5.24</version>
</dependency>
在TestContract.class中:
@RunWith(SpringRestPactRunner.class)
@Provider("prov_test")
@PactBroker(host="192.168.132.220",port="80")
@VerificationReports({"console", "json"})
@SpringBootTest(
properties={
"pact.provider.version=1.0.1",
"pact.verifier.publishResults=true"
},
webEnvironment = SpringBootTest.webEnvironment.DEFINED_PORT
)
public class TestContract {
...
...
}
在输出中,我得到警告:
Skipping publishing of verification results (pact.verifier.publishResults is not set to 'true')
感谢您的帮助!
答案 0 :(得分:2)
我们是junit5,必须在@BeforeEach中对其进行设置才能使其正常工作:
void setupTestTarget(PactVerificationContext context) {
context.setTarget(new HttpTestTarget("localhost", port, "/"));
System.setProperty("pact.verifier.publishResults", "true");
System.setProperty("pact.provider.version", buildVersion);
}
答案 1 :(得分:0)
将pact.verifier.publishResults=true
更改为pact.verifier.publishResults='true'