除方法可设置Category,连TestFixture都可以设置Category,如,对于一些整个TestFixture都测试时间都很长的,可将它设置为[Category"Long")],这样没有必要重复标记每个测试方法了。
9.每个测试的运行都应该是互相独立的;可在任何时候,任意顺序运行每个单独的测试。
10.NUint中Per-method :Setup与Teardown
[SetUp] //用于测试环境的建立
public void MySetup() {
//do something.
}
[TearDown] //清除测试环境
public void MyTeardown() {
//do something.
}
在每个[Test]方法之前,都会调用[SetUp]方法;并在每个[Test]方法完成之后,都会调用[TearDown]方法。
11.NUint中的Per-class:TestFixtureSetUp和TestFixtureTearDown
这两个方法对整个Test Class设置一些环境,及所有测试方法都执行完后做一些清理工作。
当第一个[Test]方法运行前,会调用[TestFixtureSetUp]方法,当所有[Test]方法都执行后,会调用[TestFixtureTearDown]方法。
12.测试预期的异常
//如测试是否抛出ArgumentException
[Test, ExpectedException(typeof(ArgumentException))]
public void TestForException()
{
Do.GetSomething(null);
//Shouldn's get to here;
}
若测试方法预期地抛出ArgumentException异常,测试将会通过;若没有抛出异常,则测试将会失败。
一旦异常抛出了,测试方法中剩余的代码都不会被执行。
13. 忽略指定的测试方法
[Test, Ignore("Not run this method")]
public void TestMethod()
{
//do something
}