【问题标题】:How to define multiple providers using @PactTestFor如何使用@PactTestFor 定义多个提供者
【发布时间】:2020-10-21 08:08:09
【问题描述】:

我们正在使用 PACT 库进行合同测试。当前项目依赖于 junit5 集成。我必须扩展一项测试以使用 2 个提供者而不是 1 个:

当前版本:

    @Test
    @PactTestFor(providerName = "request-repository", hostInterface = "0.0.0.0", port = "9991")
    public void myTestMethod() throws Exception {}

我阅读了文档:https://docs.pact.io/implementation_guides/jvm/consumer/junit5,但似乎还不支持:

不支持#

当前的实现不支持使用多个提供者进行测试。这将在以后的版本中添加。

我查看了发行说明,但没有发现任何更新。还有另一种方式来定义另一个提供者吗?即:

    @Test
    @PactTestFor(providerName = "request-repository", hostInterface = "0.0.0.0", port = "9991")
    @PactTestFor(providerName = "result-repository", hostInterface = "0.0.0.0", port = "9992")
    public void myTestMethod() throws Exception {}

或者在这种情况下junit5集成不是一个好的选择?

【问题讨论】:

    标签: java junit5 pact


    【解决方案1】:

    我的建议是编写 2 个单独的测试,其中每个测试都有一个通过 Pact 模拟的提供程序,而另一个提供程序被存根(例如,使用标准单元测试存根)。

    【讨论】:

    • 感谢您的建议。这似乎很容易做到。
    猜你喜欢
    • 2011-05-08
    • 2013-09-26
    • 1970-01-01
    • 1970-01-01
    • 2021-07-30
    • 2018-04-05
    • 2020-01-06
    • 2018-04-17
    • 1970-01-01
    相关资源
    最近更新 更多