【问题标题】:Is it possible to do Multi threading of Unit Tests?是否可以进行单元测试的多线程?
【发布时间】:2014-10-28 22:15:14
【问题描述】:

我有大约 500 个单元测试。并且一旦启动,就会创建一个服务。目前,所有测试都创建并使用了一个服务。我想对它们应用多线程,这样所有 500 个测试都将同时运行。如果我的一个线程(测试)正在注销服务,它不应该影响另一个测试的服务。

是否可以这样做,或者我应该为每个线程创建一个独立的服务。

我正在使用 C# 和 Visual Studio 12。

我可能对这个问题非常模糊,但请输入您的答案。至少提供任何有用的链接。

【问题讨论】:

  • 创建一个异步运行其他测试的测试?
  • 您使用什么测试框架(MSUnit、NUnit 等)?
  • 这个线程涵盖了使用 VS.net 并行运行测试。 stackoverflow.com/questions/12674606/…
  • 是什么阻止您现在并行运行测试?项目设置、测试工具或您的服务?后者可以通过明智地应用 DI 和模拟来解决。

标签: c# multithreading unit-testing


【解决方案1】:

好的单元测试应该是independent of each other。他们不应该共享有状态资源(关于您的示例,人们可能想知道您可以“登录”的有状态服务是否是一个好主意)。如果您采用这种方法,那么并行运行测试应该没有问题,因为大多数现代测试运行器都允许您这样做。

【讨论】:

    猜你喜欢
    • 2014-12-16
    • 2017-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-21
    • 2010-09-08
    • 2010-09-11
    相关资源
    最近更新 更多