如何为 Cucumber stepdef 指定源 jar
How to specify source jar for Cucumber stepdef
我有一些场景从作为依赖项包含的 jar 调用 stepdef。
现在,我想将同一 stepdef 的 2 个单独版本维护到 2 个不同的 jar 中。因为我需要很少的场景来使用版本 1 和其他场景来使用 stepdef 的版本 2。
如何使用 @CucumberOptions
执行此操作,特别是在 glue
中提及 jar 源?
据我所知,黄瓜不支持它。我们正在使用 QAF-gherkin,它支持 jar 中的步骤和同一步骤的两个不同实现,支持在 运行 时间使用 step.provider.pkg
属性.
加载适当的实现
我使用以下方法解决了这个问题:
- 为 运行ning 版本 1 和 2 创建了 2 个独立的 JUnit 运行ners。
- 通过维护 2 个包支持两个版本的步骤定义。
- 在
@CucumberOptions
glue
规范中为两个 运行 用户提到了使用 step.provider.pkg
属性 的相应包名称。
关于 maven 的注意事项:
我必须在 integration-test
阶段将 Maven failsafe
插件中的 运行ners 都包含到 运行 测试中。还必须在 failsafe
插件中提供 2 个单独的 executions
以启用提到的 运行ners 的有序执行。
我有一些场景从作为依赖项包含的 jar 调用 stepdef。
现在,我想将同一 stepdef 的 2 个单独版本维护到 2 个不同的 jar 中。因为我需要很少的场景来使用版本 1 和其他场景来使用 stepdef 的版本 2。
如何使用 @CucumberOptions
执行此操作,特别是在 glue
中提及 jar 源?
据我所知,黄瓜不支持它。我们正在使用 QAF-gherkin,它支持 jar 中的步骤和同一步骤的两个不同实现,支持在 运行 时间使用 step.provider.pkg
属性.
我使用以下方法解决了这个问题:
- 为 运行ning 版本 1 和 2 创建了 2 个独立的 JUnit 运行ners。
- 通过维护 2 个包支持两个版本的步骤定义。
- 在
@CucumberOptions
glue
规范中为两个 运行 用户提到了使用step.provider.pkg
属性 的相应包名称。
关于 maven 的注意事项:
我必须在 integration-test
阶段将 Maven failsafe
插件中的 运行ners 都包含到 运行 测试中。还必须在 failsafe
插件中提供 2 个单独的 executions
以启用提到的 运行ners 的有序执行。