我想开始使用 Spring Cloud Contract 框架进行合同测试。但是 Spring Cloud Contract 是否支持 JavaScript 和 JMS?
我还没有找到任何有关此的信息。
我想开始使用 Spring Cloud Contract 框架进行合同测试。但是 Spring Cloud Contract 是否支持 JavaScript 和 JMS?
我还没有找到任何有关此的信息。
至于JMS
,我们通过spring-integration
或支持它Apache Camel
。您也可以编写自己的JMS
支持。注册几个bean就足够了。
至于 Javascript 和非 jvm 语言。没有开箱即用的支持,但我们有一个流程。此处描述了工作流程(在这些情况下,消费者是 Java 应用程序,但在下一节中,我将描述流程的不同之处) - https://cloud.spring.io/spring-cloud-contract/spring-cloud -contract.html#_common_repo_with_contracts或https://cloud.spring.io/spring-cloud-contract/spring-cloud-contract.html#_step_by_step_guide_to_cdc。我们将尝试明显简化流程,但目前有很多手动任务需要完成(虽然不是很乏味)。
消费者可以很容易地下载和运行存根。只需克隆https://github.com/spring-cloud-samples/stub-runner-boot,构建它并将胖 jar 推送到您的 Nexus/Artifactory。消费者将使用此应用程序自动下载存根并在本地运行它们。作为消费者,您可以调用java -jar stub-runner-boot --stubrunner.ids="com.example.groupid:artifactid:classifier:version:8090" --stubrunner.repositoryRoot="http://localhost:8081/artifactory/libs-release-local"
. 这样应用程序将启动,从您的工件所在的给定地址下载带有存根的提供的 jar。现在您的前端应用程序可以在localhost:8090
.
当然,我们将尝试简化克隆和推送过程(https://github.com/spring-cloud/spring-cloud-contract/issues/37)等,但现在您必须手动完成这两个步骤。
更新:
With this article https://spring.io/blog/2018/02/13/spring-cloud-contract-in-a-polyglot-world we're presenting a way how to work in a polyglot environment. It's enough to use the provided docker images to run contract tests against a running application and to run the stub runners too.