1

我有一个功能文件,其中有多个给定的时间和步骤

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

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

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

4

1 回答 1

0

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

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

于 2015-01-28T21:04:13.417 回答