当前位置: 首页 > 知识库问答 >
问题:

pact-jvm java noob问题

蒋俊
2023-03-14

我有一些关于Pact JVM(Java)的问题;

>

  • 如果提供者的json结构响应已知(例如通过使用Postman查询api),是否可以将Postman json主体自动转换为pact契约文件,而不需要运行(java)使用者片段创建方法,或者例如将其转换为java PactDslJsonBody()结构?

    在创建pact文件时,是否需要启动并运行提供程序(spring-boot)(即使json响应结构已知)?避免每次创建合同都需要启动spring-boot服务器,特别是在合同细节已经知道的情况下,这可能是很好的?尤其是在为多个微服务创建多个pact合同的情况下。

    有没有比教程示例中的这个非常小的json主体更高级的返回的更大的提供者json结构的示例;
    [1]http://the-creative-tester.github.io/java-consumer-drived-contract-testing/此外,如果能够共享这个额外的示例,只验证要返回的结构的子集是否存在,那就更好了,因为我们在响应中得到了很多随机的结果。

    是否有人可以分享一个pact verify java代码示例,一个pact jvm验证在线https(相对于http)rest服务的示例,比如google、facebook或类似的提供商?(例如:[2]https://jsonplaceholder.typicode.com/posts)

    我在上面的例子[1]中遇到了很多java编译错误。有没有pact(和spring)的版本级别不太可能与java spring framework版本不匹配?

    谢谢你抽出时间!

  • 共有1个答案

    印劲
    2023-03-14

    你好,请找到以下回复:

    1)目前还没有这样的功能,消费者片段基本上是定义json,所以跳过这一步没有意义。

    2)pact文件的创建使用pact模拟服务器。所以您不需要真正的服务启动。服务应该只在验证阶段启动。

     类似资料:
    • 所以我才开始使用jvm-pact。 我正在尝试将这个JSON装箱

    • Pact Example This is an example project to give an overview about Consumer Driven Contract Testing. Table of Contents Prolog Effective test suites with short feedback loop The problem with E2E integra

    • 我使用JUnit生成协议和Pacts maven插件将协议发布到协议代理中。我正在使用下面的插件配置 当Consumenr协议在broker中上传时,我只能看到2.0版的consumer协议的单个条目。Eirlier我已经上传了1.0版本Eirlier,它没有出现在UI中。有没有办法在HAL浏览器中看到多个版本的同一提供者协议,并通过Https get请求获得不同版本的协议?目前,我只得到最新的消

    • 我在pact-jvm-consumer中的closeArray有问题。 给定这样的Json,如何构造“dslPart imeiResults=new PactDslJsonBody()”-语句。 我试过这样: 但这不起作用,例如.closearray()不返回PactDslJsonBody,而是返回DslPart,所以在.closearray()之后永远不能有任何东西?我不明白,有人能给我们演示一

    • 我对pact还是一个新手,我正在尝试使用pact,但是我遇到了一个问题,无法从Pact-Verify发回提供程序的测试结果。 “sbt”pact-verify--host localhost--port 8081“”结果: [...]正在尝试从pact broker获取pact,网址为:http://localhost:8080/pacts/provider/provider/consumer/c