昨天晚上刚把自己项目的一个类库写完,松了口气,在做一下Nunit的测试就OK了。
接着就打开CodeSmith,准备用CodeSmith把Nunit单元测试的代码框架用它生成一下。以前草草的写了一个模板,就是把测试工程的类、命名空间和几个方法生成一下。
刚生成出来,忽然想到我的类里那么多方法,一个一个再写写,太累了(CodeSmith的模板里,我原来的方法名称是填写的),能用反射吗?这样就方便了(没办法,就是懒啊)。马上着手查了查CodeSmith的示例,发现.net的代码可以直接写在里面,试了试,居然也有智能提示,哈哈,太好了
于是,先写了个函数:
这样,代码区域就可以用循环生成测试方法了:
注:方法的命名规则是--类的方法名+Test
运行了一下,咦,多了好多方法:Dispose,GetHashCode..........
看来是继承自基类的方法,看来得过滤掉,修改了一下:
哈哈,这下生成的就舒服多了。
以下是以Jmail的dll文件中POP3CLASS为例:
唉,以前怎么没早想到啊,白死了那么多脑细胞..........