创建黄瓜测试时,定义一个feature
包含已定义测试的class
文件和一个在同一个包中具有完全相同名称的文件来运行测试。(我会留下Cucumber.options
他们现在的样子)。
据我正确理解,Cucumber 将在同一个包及其所有子包中查找Step Definitions
文件以执行当前场景中的相应步骤。(再次,我离开Cucumber.options
他们是什么)。
有没有办法找到正在执行的测试类和处理当前正在执行的步骤的 StepDefs 类之间的链接?
src/
\_ test/
\_ java/
| \_ test.cucumber.package
| \_ MyTest1.class
| \_ MyTest2.class
| \_ StepDefs1.class
| \_ StepDefs2.class
\_ resources/
\_ test.cucumber.package
\_ MyTest1.feature
\_ MyTest2.feature
因此,MyTest1.class 执行 MyTest1.feature 中定义的步骤。这些步骤的实现可以在 StepDefs1.class 或 StepDefs2.class 中定义。MyTest2 也是如此。
1) 我如何知道一个步骤是在 StepDefs1 还是 StepDefs2 中定义的?
2) 当一个步骤被执行时,我怎么知道它是为 MyTest1 还是 MyTest2 执行的?