【问题标题】:Pact JVM Java unclear newbie / starter /tutorial project?Pact JVM Java 不清楚新手/入门/教程项目?
【发布时间】:2017-10-09 21:43:35
【问题描述】:

是否有一个小而简洁的 jvm 消费者 Java(消费者或提供者)junit 项目可以共享,最好是在一个包含所有文件的自包含 zip 文件中,除了 jar 导入?

例如,当我按照此处的步骤操作时:https://github.com/DiUS/pact-jvm/tree/master/pact-jvm-consumer-junit 和“使用基本 ConsumerPactTest”时,我遇到了各种错误,我已尝试一一解决。

但是我相信必须存在一个更简单的“Hello world”类型的示例来描述这个框架。

我之前设置了其他微服务模拟框架,但是 Pact 显示设置它的错误太多,所以我认为一定误解了它应该如何设置,以最简单的形式。

我在前面提到的示例中遇到的最后一个问题是这些导入,我发现没有 jar 文件: import au.com.dius.pact.consumer.exampleclients.ConsumerClient; import au.com.dius.pact.consumer.ConsumerPactTest; import au.com.dius.pact.model.PactFragment;

出于这个原因,例如无法解析 @Pact 关键字等。

提前致谢!


更新 - 在创建协议定义(使用 ./gradlew test )时,是否可以不使用协议提供程序模拟服务器代码,而是使用“真正的”api 提供程序?

例如在 1) 的示例中,是否可以使用“真实”的 api 提供者响应来更新(例如使用 postman 中记录的响应)消费者的 @Pact 部分,而无需创建模拟Spring Boot localhost 模拟服务器中的响应?

1)http://the-creative-tester.github.io/Java-Consumer-Driven-Contract-Testing/

感谢您的任何回答!

【问题讨论】:

标签: java junit jvm consumer pact


【解决方案1】:

浏览了一些关于 java 协议的教程。 发现https://github.com/Mikuu/Pact-JVM-Example#pact-jvm-example 有最好的覆盖/解释。包括与打包代理的交互,更改协议测试的状态,非常容易遵循。 非常感谢作者为制作如此精彩的文档所做的努力

【讨论】:

    【解决方案2】:

    【讨论】:

    • 虽然我设法构建并执行了提供者部分,但消费者无法在 Eclipse 中构建。我收到这些错误: import org.apache.http.client.fluent.Request; - 未使用的导入语句 DslPart - 无法解析、PactRule 和 PactFragment - 已弃用 |请指教
    • github.com/DiUS/pact-jvm/issues/222 - 这个问题可能和你的类似,请看一下。我在 intellij Idea(社区版)中尝试过我的
    【解决方案3】:

    我最近使用 Java 和 Gradle 创建了 PACT-JVM 项目。

    https://github.com/contactsai123/PACT-JVM-Example

    它有 1 个提供者 / 2 个消费者,设置非常简单易懂。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-04
      • 2016-03-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多