我们有一个参数化的工作来执行数据库集成测试。该参数基本上是要测试的数据库的品牌(即mysql,derby,oracle等......)。我们希望确保完全相同的测试在所有支持的数据库上成功。
我们的问题是 Jenkins 没有考虑执行的参数。执行结果不按参数值分组。因此,如果最后一次执行成功,则该作业被认为是成功的。即使以前的工作可能失败了。
无论如何,我正在寻找一种方法来保持单一的工作定义。如果定义是重复的,那么它们迟早会出现分歧的危险。并且测试将成为特定于数据库品牌的。
到目前为止我已经尝试过:
- 为每个参数值制作一个虚拟作业并从那里触发参数化作业。但是触发作业的结果不包含在虚拟作业中。
- 模板插件是正确的,因为它认为参数化作业是“不可构建的”。
简单的解决方案当然是复制作业。但我真的想避免这种情况。
有人对此有实际的解决方案吗?