Spring Cloud合同测试的在线/离线模式存在问题

时间:2018-03-02 11:29:31

标签: java spring spring-cloud-contract

我们在一些项目中使用Spring Cloud合同测试,因为它具有很好的功能,我们所有的项目都使用Spring。然而,这些测试变得非常不稳定,开发人员只是禁用它们,因为即使接口没有任何变化,它们也会破坏构建。

我们在线模式下为Jenkins配置了测试,因此他们从Artifactory下载了存根。但是经常(每月至少两次)测试崩溃,因为存根已经存储在存储库中。我们无权访问远程存储库以手动删除存根,因此我们更改了在脱机模式下运行存根的配置。这有效,直到提供程序的版本发生更改,因为测试无法在本地找到新版本的存根,并且它们再次崩溃,我们再次将它们更改为在线模式。

正如您可能想象的那样,这并不理想,我们也担心,因为本地存根可能是当前版本的过时副本,我们不会检测提供商何时发生变化。

有没有更好的方法来配置测试?如果我们可以配置它们就会很好,所以它们总是下载存根并覆盖本地存根。

1 个答案:

答案 0 :(得分:0)

重复Spring Cloud Contract remote artifact download clashes with local, how to make it temporary?

我也可以在这里复制答案:

  

此问题可能(并非总是会发生)在CI系统中发生   你有一个共享的.m2。在下一个版本(1.2.x和2.0.0)中,谢谢   结束这个问题   https://github.com/spring-cloud/spring-cloud-contract/issues/545,   你将能够通过stubrunner.snapshot-check-skip系统属性   或者STUBRUNNER_SNAPSHOT_CHECK_SKIP环境变量或设置   插件属性(仅限2.0.0)以禁用检查。