如何指定多个给定之间的依赖关系,何时或者在cucumber-jvm中

时间:2014-11-12 09:27:20

标签: cucumber cucumber-jvm gherkin cucumber-junit

我有一个功能文件,其中包含多个给定时间,然后是步骤

// File My.feature
Give doUserLogin
And changeUserPreference
When executeWhen1
And executeWhen2
Then executeThen1
And executeThen2

这些正确映射到步骤定义,我面临的问题是有些正在为ex执行并行执行。在给定的,' changeUserPreference'正在发生之前' doUserLogin'。同样在Then部分,' executeThen2'在'executeThen1'之前触发完全完成了。

如何指定这些语句之间的依赖关系。我有什么方法可以说不要开始执行第二个语句(给定,何时或之后)直到第一个语句完全执行。

1 个答案:

答案 0 :(得分:0)

如果您的'doUserLogin'步骤在下载完成之前退出,这将解释为什么'changeUserPreference'正在启动。例如,如果您连接到外部系统并启动下载,然后您正在使用的API正在另一个线程中执行下载,则可能会发生这种情况,然后主线程将继续进行下一步,同时继续下载另一个线程。

我的建议是在调试模式下执行此场景(假设您使用的是支持此功能的IDE)并查看在执行文件下载之前您的'doUserLogin'步骤是否已完成。