C# 将不同的测试用例合并到同一个类中,如何只对其中的一些进行并行化?

C# 将不同的测试用例合并到同一个类中,如何只对其中的一些进行并行化?,c#,nunit,C#,Nunit,我正在使用selenium和nunit在网页上做一些测试 我有一个包含8个不同测试用例的类。其中3个可以并行运行,其他4个不能,因为它们在DB上执行操作,并且可能相互干扰 有没有一种方法可以告诉nunit一些测试可以并行运行,而另一些测试(在同一个类中)不能并行运行? 我试图通过给每个测试用例赋予属性[Parallelizable]和那些不能与[NonParallelizable]并行运行但没有并行化的测试用例来解决这个问题。 我试着阅读nunit文档,它说这些属性可以应用于方法和类,所以我也假

我正在使用selenium和nunit在网页上做一些测试

我有一个包含8个不同测试用例的类。其中3个可以并行运行,其他4个不能,因为它们在DB上执行操作,并且可能相互干扰

有没有一种方法可以告诉nunit一些测试可以并行运行,而另一些测试(在同一个类中)不能并行运行? 我试图通过给每个测试用例赋予属性[Parallelizable]和那些不能与[NonParallelizable]并行运行但没有并行化的测试用例来解决这个问题。 我试着阅读nunit文档,它说这些属性可以应用于方法和类,所以我也假设测试用例,我假设错了吗


是否有任何方法可以告诉nunit某些测试可以并行运行,而另一些测试(在同一类中)不能并行运行?

在nunit中,无法精确控制哪些测试可以并行运行,尽管在过去已经讨论过这一特性

最简单的解决方案是使这些测试不可并行化。在大多数情况下,一些非并行测试不会对性能产生很大影响


您已经认识到,另一种方法是将测试重新组织到单独的装置中。

IMO更大的问题是,您的数据库不能从多个线程中使用。我的观点是,您应该尝试使DB线程安全,而不是尝试并行运行某些线程,而不是不并行运行某些线程。或者更好的是,为每个单元测试提供独立的数据库是的,我同意你的观点,但我没有这样做的可能性。这就是为什么我在寻找解决方案。谢谢Charlie,我通过创建不同的类来管理。。使用单独的固定装置是什么意思?很抱歉,我的问题是noob,但我正在进行测试自动化的第一周,我对NUnit中fixture是一个包含测试的类的知识仍然很差。那么你已经按照我的建议做了。:-)