保证一个类中的测试不被同时执行?
问题描述:
我几乎可以肯定他们是。但我需要确认。保证一个类中的测试不被同时执行?
class Foo {
Bar fieled;
[Test]
public void bar() {
field.DoSomething();
}
[Test]
public void baz() {
field.DoSomethingElse();
}
}
理论上这两种方法都可以使用共享字段,那么我们就有不可预知的结果。对?我对NUnit和XUnit框架特别感兴趣。
答
XUnit.NET每个测试方法创建一个测试对象实例,这里描述http://xunit.codeplex.com/wikipage?title=WhyDidWeBuildXunit&referringTitle=Home
因此分享了测试类领域是不是一个问题,即使测试同时执行,假设你不使用静态字段。 对于其他框架我不知道。