MSDN中解释ClassCleanupAttribute用来标识一个包含代码的方法,该代码将在测试类中所有的测试都运行以后使用以释放测试类所获取的资源。用过微软VSTS中测试功能的朋友对它再熟悉不过了。但在VS2008下具体应用ClassCleanup标识的方法时,会发生以下情形需要特别注意:
首先,ClassCleanup方法中抛出的异常不会记录在测试结果文件TRX中,并且不会影向整个测试结果。
其次,ClassCleanup方法运行时受限30S,超过这个时限,就很有可能会Time out。
A:在VS的debug模式下,受限,但不总是出现。
B:使用mstest运行测试时,受限。
C:在VS中不使用debug模式run时,则不受限。
因此,尽量不要在ClassCleanup方法中执行过多的操作并且做好异常和错误的处理和记录。