Nunit运行测试类别并联



i在不同类(页面对象模式(中有测试,在并行运行时可能会互相干扰(它们 *不是 *单位测试(。例如,有一些类:AddCustomerFormTestsEditCustomerFormTests分别测试添加客户和更改客户信息。最合乎逻辑(和可读的(解决方案似乎是将固定装置分配给不同的类别,并避免从同一类别中运行测试,但是我找不到方法。

基本上,我正在寻找相当于与类别而不是类一起使用的[Parallelizable(ParallelScope.Fixtures)]的相当于。我不想将类合并在一起,因为会破坏页面对象模式以及srp。

有趣的问题!恐怕我认为目前这是不可能的 - 而没有对Nunit框架进行修改。(尽管不要相信我的话,但其他人也许可以想到什么!(

如果您要考虑更改Nunit框架,我将考虑根据类别实现新的IWorkItemDispatcher对并行工作。然后,您可以在初始化testexecutionContext时选择正确的调度程序。(例如https://github.com/nunit/nunit/nunit/blob/ad943eb94fe280e661fc6c690043fe8eb0a11e40/src/nununitworkwork/nununitframework/nunitframework/framework/framework/frame/frame/nununittestestassemblynner.cssemblyrunner.cscs-cs-ulyrnner.ccsunner.cs#ul352-l352-l352-l352-l35888888888888888888888888888888888888888888880

围绕问题的替代方法 - 您是否考虑使用部分类来对测试进行分组,然后并行化固定装置?我认为那会起作用...您可能想先测试一下!

最新更新