繁体   English   中英

自动化的API稳定性测试

[英]Automated API stability testing

我有一个要测试API稳定性的webapp。

为了测试API,我对包含由我的API编写的域对象的项目有依赖性,我调用api并尝试将对象反序列化(使用spring RestTemplate)到域对象中。

在开发API的新版本时,将使用域对象项目的新版本。 这是场景的图片: 在此处输入图片说明

现在,我想要一种在构建服务器上针对给定Web应用程序运行测试项目的自动化方法(在这种情况下,Jenkins使用maven或ant)。 问题在于它们与不同版本共享一个依赖项(因此我无法将它们一起构建)。

我当前的方法是构建Webapp,将其部署在码头上,然后尝试运行测试。 事实证明这很难。

如何解决这个问题? 以往的经验?

为什么webapp测试依赖于域1.1和1.2-SNAPSHOT上的webapp-api? webapp-tests工件不应该依赖于与webapp-api相同的通用依赖项吗? 如果只是不同版本的工件相同,则可以将其配置为属性。 但我认为最好也将webapp-api添加到项目中,以便它共享通用版本:

  • 域(版本)
  • webapp-api(取决于域)
  • webapp-tests(取决于域,测试webapp-api)

都共享相同的父代和相同的版本。

如果要测试先前发布的版本(或其中一个),则需要执行类似于cobertura-plugin的操作: http : //mojo.codehaus.org/cobertura-maven-plugin/这意味着编写插件。

您是否尝试将要测试的依赖项添加到Maven配置文件中,以便使webapp-tests使用不同版本的域再次运行webapp-api? 因此您可以重新运行测试以激活其他配置文件。

我可能只是把问题弄错了:)如果webapp-tests应该包含一个不同的版本,那么不要让它依赖于webapp-api或域项目吗? 由于您要进行剩余测试,因此没有公共类路径会在其中干扰依赖关系?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM