应该设置一个契约源
Exactly one pact source should be set
我正在为提供商编写协议测试。
我写了一个class。当 运行 作为 JUNIT 时,我遇到了异常,
"Exactly one pact source should be set"”
你能帮忙吗?
这是我的代码..
@RunWith(SpringRestPactRunner.class)
@Provider("personlisation-service")
@PactFolder("/pacts")
@PactUrl(urls = {"file:///pacts/PersonalisationServiceContractTest-CourierProfileController.json"})
@IgnoreNoPactsToVerify
@PactBroker(host = "${pact.broker.host:pact.hermescloud.co.uk}",
port = "${pact.broker.port:443}",
protocol = "${pact.broker.protocol:https}",
tags = "${pactbroker.tags:master}")
@SpringBootTest(
classes = Application.class,
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
properties = {.....
}
)
public class CourierProfilePactProviderTestIT {
--------
.
..
....
}
看起来您同时指定了@PactBroker 和@PactUrl。这两个都是标志,告诉框架从哪里获取契约。您应该只使用其中之一(在大多数情况下可能是经纪人)
我正在为提供商编写协议测试。 我写了一个class。当 运行 作为 JUNIT 时,我遇到了异常, "Exactly one pact source should be set"” 你能帮忙吗?
这是我的代码..
@RunWith(SpringRestPactRunner.class)
@Provider("personlisation-service")
@PactFolder("/pacts")
@PactUrl(urls = {"file:///pacts/PersonalisationServiceContractTest-CourierProfileController.json"})
@IgnoreNoPactsToVerify
@PactBroker(host = "${pact.broker.host:pact.hermescloud.co.uk}",
port = "${pact.broker.port:443}",
protocol = "${pact.broker.protocol:https}",
tags = "${pactbroker.tags:master}")
@SpringBootTest(
classes = Application.class,
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
properties = {.....
}
)
public class CourierProfilePactProviderTestIT {
--------
.
..
....
}
看起来您同时指定了@PactBroker 和@PactUrl。这两个都是标志,告诉框架从哪里获取契约。您应该只使用其中之一(在大多数情况下可能是经纪人)