添加属性以禁用 Specflow + Nunit 中某些功能的并行执行

Add attribute to disable parallel execution for some features in Specflow + Nunit

您好,我正在使用 specflow + nunit,

我通过在汇编级别添加以下内容,使所有功能 运行 并行。

[assembly: Parallelizable(ParallelScope.Fixtures)]
[assembly: LevelOfParallelism(5)]

但现在我有一些不应该 运行 并行的功能,我想排除这些测试。我知道 [NonParallelizable][Parallelizable(ParallelScope.None)] 用于 Nunit 项目以将它们排除在并行执行之外。但是对于 specflow 我在哪里指定这些。由于 .cs 文件是在 specfow 中自动生成的。我如何添加这些属性?

遗憾的是,SpecFlow 中没有针对此的直接功能。

但有一个解决方法:

我们生成代码隐藏 classes 作为部分 class。因此,您可以创建一个具有部分 class 的文件并在其中添加 [NonParallizable] 属性。

看起来像这样:

using NUnit.Framework;
namespace ParallelExecution.Features
{
[NonParallelizable]
public partial class CalculatorFeature
{

}
}