2017-04-19 89 views
0

我想开始使用框架Spring Cloud Contract进行合同测试。但Spring Cloud Contract是否支持JavaScript和JMS?Spring Cloud Contract是否支持JavaScript和JMS?

我还没有找到关于这方面的任何信息。

+0

你能详细说一下“JavaScript支持”的含义吗?我们通过Spring集成或Apache Camel支持JMS。 –

+0

我们将尝试在MicroService体系结构中使用SpringCloudContract,在这个体系结构中我们同时拥有前端和后端组件。 FrontEnd组件是用JavaScript编写的。所以我们希望为我们所有的组件使用SpringCloudContract来完成我们的合约测试。我们使用Java,JavaScript,REST,JMS – martin

回答

1

至于JMS,我们确实支持spring-integrationApache Camel。您也可以编写自己的JMS支持。注册一些豆子就足够了。

至于Javascript和非jvm语言。没有开箱即用的支持,但我们有一个过程。这里描述了工作流程(在这些情况下,消费者是Java应用程序,但在下一节中,我将描述流程将如何不同) - https://cloud.spring.io/spring-cloud-contract/spring-cloud-contract.html#_common_repo_with_contractshttps://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,构建它并将胖罐推送到您的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)等,但现在您必须手动完成这两个步骤。