深入的了解一下方法上带有的属性的含义.
每个方法上几乎都带有TestMethod这个属性,我们直觉告诉我们,这肯定是表示被测试函数的意思.事实也正是如此,在Unit Test里,有许多测试属性,常用的如下:
每个方法上几乎都带有TestMethod这个属性,我们直觉告诉我们,这肯定是表示被测试函数的意思.事实也正是如此,在Unit Test里,有许多测试属性,常用的如下:
属性 | 描述 |
TestClass() |
该属性表示一个测试装置。 |
TestMethod() |
该属性表示一个测试用例。 |
AssemblyInitialize() |
在执行为执行选择的第一个 TestClass() 中的第一个 TestMethod() 之前,执行带有该属性的方法。 |
ClassInitialize() |
带有该属性的方法在执行第一个测试之前调用。 |
TestInitialize() |
带有该属性的方法在执行每个 TestMethod() 之前调用。 |
TestCleanup() |
带有该属性的方法在执行每个 TestMethod() 之后调用。 |
ClassCleanup() |
带有该属性的方法在执行 ALL 测试之后调用。 |
AssemblyCleanup() |
在执行为执行选择的第一个 TestClass() 中的第一个 TestMethod() 之后,执行带有该属性的方法。 |
Description() |
提供关于给定 TestMethod() 的描述。 |
Ignore() |
由于某种原因忽略 TestMethod() 或 TestClass()。 |
ExpectedException() |
当测试特定异常时,如果使用该属性指定的异常不是从实现代码引发,则测试不会失败。 |
需要注意的是,上面的属性不是可以适用于所有方法的,比如AssemblyInitialize()和ClassInitialize()是必须是静态方法的属性.
我们可以把初始化的操作放在他们里进行.