[.NET框架中的辅助工具]--测试驱动开发
做了这么久的.NET开发,感觉越来越离不开工具的帮助,用于编写单元测试的 NUnit和NUnitAsp,用于创建代码文档资料的 NDoc, 用于生成代码的 CodeSmith,用于重构的ReSharper等等,都是节省时间的一大好帮手,可能是这样人也开始变得越来越懒了 : )
测试驱动开发,简单的说就是在写正式代码之前就把测试代码写好,而且测试代码编写的量一定会比正式代码的多,那为什么还要写?其中的好处就是,一为我们的代码质量把关,二方便我们以后重构;所以虽然写测试代码繁琐,我还是时刻提醒我自己,一定要耐心去写。
下面就来简单说说NUnit的使用方法,关键就是弄懂它的属性:
1、TestFixture:声明指定的类包含有测试用的函数
注意:必须为Public类
2、Test:声明指定的函数是需要被运行的测试函数
注意:
A、必须是public void型的函数
B、 不要带参数
C、不要在函数中使用try…catch,因为NUnit框架会捕捉所有异常
D、断言使用Assert
3、SetUp:声明指定函数是测试类的初始环境设定函数
4、TearDown:声明指定函数是测试类的所有测试函数运行完毕后进行环境清除
5、ExpectedException:确定某个测试函数会抛出指定的异常类或其子类
比如:[ExpectedException(typeof(Exception))]
6、Suite:指明要进行套件测试的类,用来标记返回类型为NUnit.Core.TestSuite的类属性成员的,该类的属性成员所返回的对象包含一组测试类,也就是说Suite属性其实是用来组织一组测试类的,但现在好像在NUnit 的GUI界面上目前还不能使用。
7、Ignore:暂时的注销某个测试类或函数在测试中的运行
比如:[Ignore(“Reason”)]
8、Explicit:属性与Ignore属性有些类似,也是用于对暂时不想运行的测试类或测试方法做忽略,Explicit属性不需要说明信息,而且被选中后,将不再忽略,而是进行测试。
9、Category:用于将测试类和测试方法分组,运行时可以分组运行
但是如果要测试web页的时候,Nunit就不能满足我们了,这时候该用NUnitAsp;这个暂时用得还不是很多,也是参考了NUnitASP 的QuickStart:http://nunitasp.sourceforge.net/tutorial/
NUnit可在此找到:http://sourceforge.net/projects/nunit
浙公网安备 33010602011771号