我试图同时运行两个步骤定义文件(黄瓜),因为我在一个步骤定义文件中应用了@Before注释。当我运行这些程序时,注释将同时应用于两者并给出结果。如何停止或控制注释仅适用于一步定义文件?
当Cucumber开始执行时,将分析所有步骤定义文件。然后,Cucumber使用功能文件中的方案来确定要调用的步骤定义。没有“运行步骤定义文件”的概念。
A Before
挂钩将在黄瓜执行的每个方案之前运行。编写方案的哪个功能文件或定义挂钩的步骤定义文件都没有区别。
您可能要考虑using a Background
instead,特别是如果功能文件的非技术阅读者会发现它描述的行为很重要。 Background
在每个场景写入同一功能文件之前运行。
或者,您可以使用Background
完成所需的操作。仅当方案具有满足该挂钩的标签表达式的标签时,才会运行条件conditional (or tagged) hooks挂钩。