并行运行SpecFlow方案时,BeforeFeature和AfterFeature挂钩是否需要是线程安全的?

时间:2018-08-24 13:33:53

标签: .net multithreading specflow

我正在研究使用NUnit并行运行SpecFlow方案,并希望对do_somethingmaster挂钩进行一些说明。 SpecFlow文档指出,如果来自同一功能的两个方案并行运行,则这些挂钩可能会多次运行。我的意思是说它们必须安全执行多次,但是还不清楚它们是否需要线程安全。

来自文档:

  

每个线程管理自己的进入/退出功能执行工作流程。的   [BeforeFeature]和[AfterFeature]挂钩可以多次执行   如果不同线程运行以下场景,则在不同线程中的时间   相同的功能文件。这些钩子的执行不会阻塞一个   另一个,但是Before / After功能挂钩在其中成对调用   一个线程(下一个方案的[BeforeFeature]钩子仅   在上一个的[AfterFeature]挂钩之后执行)。每   线程具有一个单独的(且独立的)FeatureContext。

https://specflow.org/documentation/Parallel-Execution/

我对此的解释是,功能钩子对于多次执行线程安全必须是安全的。这是正确的吗?

0 个答案:

没有答案