我正在学习如何总体上使用单元测试和自动化测试,并且有一些我无法弄清楚/找不到答案的问题
我目前通过多个调用各种方法并在其中包含断言的 [TestMethod] 进行测试。现在,TestMethod 都有重复的代码来访问数据库并为其余的测试设置自己。一个例子是:
public void TestDBReturnsFooInFormatXyz() {
var foo = HitDBAndReturnStuff();
Assert.IsTrue( // foo format is xyz );
}
public void TestDBFooContainsAbc() {
var foo = HitDBAndReturnStuff();
Assert.IsTrue( // foo contains abc );
}
所以有些问题:在测试类中创建私有字段并让构造函数设置它们是最佳实践吗?
我应该在每个 TestMethod 中都这样做,因为测试速度并不重要吗?
我应该在构造函数顶部放置什么 [Test???] 以确保在运行测试时调用它?
我查看了 MSDN 和“Programming Microsoft Visual C# 2008: The Language”一书,但找不到任何关于单元测试的好信息。如果有我应该阅读的资源可以回答这些问题,请告诉我。
谢谢!