多个独立maven项目的通用测试数据

2024-03-17

我有一个 Maven 项目,可以将特定格式的文本文件转换为另一种格式。 为了进行测试,我在 src/test/resources 中放入了大量的测试文件。

我还有另一个项目,它使用第一个项目进行转换,然后对输出格式执行一些额外的操作。我还想针对相同的测试数据集测试此项目,但我不想有重复的数据集,并且我希望能够单独测试第一个项目,因为它也是一个独立的转换器项目。

有没有通用的解决方案可以做到这一点?我不介意没有项目源树中的测试数据集,只要每个项目都可以独立地访问其他项目的数据集。我也不想为此设置数据库。我正在考虑比 RDBMS 更简单的测试数据存储库之类的东西。是否有任何应用程序可以满足这种需求,我可以将其与特定的 Maven 插件一起使用?易于设置和简单性是我的首要任务。另外,我正在考虑打包测试数据并将其放入内部 Maven 存储库中,然后下载它并将其解压缩到 junit 代码中。或者更好的是,有没有一个 Maven 插件可以为我做到这一点?

有任何想法吗?


可以与 Maven 共享资源,例如在Assembly http://maven.apache.org/plugins/maven-assembly-plugin and 依赖性 http://maven.apache.org/plugins/maven-dependency-plugin插件。基本上:

  1. 创建一个具有 type 包装的模块pom持有共享资源
  2. 使用程序集插件将模块打包为zip
  3. 在“消费者”模块中声明对此 zip 的依赖
  4. And use dependency:unpack-dependencies http://maven.apache.org/plugins/maven-dependency-plugin/unpack-dependencies-mojo.html(加上一些排除规则)解压 zip

该方法详细介绍于Maven中如何跨项目共享资源 http://www.sonatype.com/people/2008/04/how-to-share-resources-across-projects-in-maven/。它需要一些设置(这是“提供的”)并且不太复杂。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多个独立maven项目的通用测试数据 的相关文章