鉴于此测试夹具:
[TestClass]
public class MSTestThreads
{
[TestMethod]
public void Test1()
{
Trace.WriteLine(Thread.CurrentThread.ManagedThreadId);
}
[TestMethod]
public void Test2()
{
Trace.WriteLine(Thread.CurrentThread.ManagedThreadId);
}
}
通过Visual Studio或命令行使用MSTest运行测试将打印两个不同的线程号(但它们仍按顺序运行)。
有没有一种方法可以强制MSTest使用单个线程运行它们?
最佳答案
为了使MSTest在一个大量使用nHibernate的大型项目上以单线程模式运行,我花了无尽的时间来努力工作,它不是线程安全的(不是问题,不是,不是)ISession
。
我们花了更多的时间编写代码来支持MSTest的多线程性质,因为-就我和我的团队所知-无法在单线程模式下运行MSTest。
关于visual-studio - 强制MSTest使用单个线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5037447/