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

spring-cloud-contract的自定义存根生成器

曾航
2023-03-14

我有基于Spring启动的应用程序和协议代理在我们的环境中运行。所以我要添加一些合同测试。我已经在groovy dsl上放置了一些联系人到项目中。我想为协议代理生成客户端存根。根据留档,我必须将spring.factories文件放入META-INF并添加StubGenerator接口的实现。但是我的自定义存根生成器在GenerateClientStubs任务执行期间不运行。我尝试过在调试模式下运行gradle任务,我在日志文件中只看到默认的DslToWireMockClientConverter:

[org.springframework...RecursiveFilesConverter] Stub Generators [[org.springframework.cloud.contract.verifier.wiremock.DslToWireMockClientConverter@b03dde3]]

如何为基于pact的客户端存根添加自定义存根生成器?

共有1个答案

单展
2023-03-14

您必须使用打包的自定义存根生成器将依赖项添加到插件的类路径中。它必须在插件执行之前预先构建。

 类似资料:
  • 您始终需要的是将新功能推向分布式系统中的新应用程序或服务的信心。该项目为Spring应用程序中的消费者驱动Contracts和服务架构提供支持,涵盖了一系列用于编写测试的选项,将其作为资产发布,声称生产者和消费者保留合同用于HTTP和消息的交互。

  • 文献作者:Adam Dudczak,MathiasDüsterhöft,Marcin Grzejszczak,Dennis Kieselhorst,JakubKubryński,Karol Lassak,Olga Maciaszek-Sharma,MariuszSmykuła,Dave Syer Dalston.RELEASE

  • 我使用的是SpringBoot(1.4)、SpringData和jpa。使用我的表/实体之一的ID列(crudepository),我想生成自定义字符串。从一些特定的字符串加上创建数据和时间开始,以db中的下一个值结束。所以这里我不能使用,我需要一些本地查询,比如“selectnextvalue” 有没有更好的方法可以做到这一点。

  • 模块让您有可能使用 WireMock使用嵌入在Spring Boot应用的“环境”服务器不同的服务器。查看 样品 了解更多详情。 重要 Spring Cloud发布列表BOM导入spring-cloud-contract-dependencies,这反过来又排除了WireMock所需的依赖关系。这可能导致一种情况,即使你不使用Spring Cloud Contract,那么你的依赖将会受到影响。

  • 是否有可能对CDC生成的测试进行注释/标记?我希望将cdc测试分组,并在构建管道中作为单独的步骤执行它们。

  • 通过Wiremock,您可以定义一个代理,这样,如果没有任何已定义的存根映射与给定的请求匹配,则Wiremock将该请求转发到给定的主机端口。Spring Cloud Contract DSL是否可以使用这种行为? 我在SCC文档(使用浏览器查找命令)中找不到任何该功能。