开发记事本

生命中闪过了多少if...then...else...

  博客园 :: 首页 :: 联系 :: 订阅 订阅 :: 管理
  58 Posts :: 2 Stories :: 279 Comments :: 10 Trackbacks
学到了不少东西,谢谢Alex Dong和赞助INETA活动的CSDN、Microsoft、奥博杰天(没记错吧)……

在公司内部和同事讨论过单元测试,试用过PBUnit、DUnit,当时没有很强烈的感觉这是一个很好的辅助开发工具,以为只是一个单纯的测试工具而已,在开发完成后写测试用例,用这个来做做测试而已;

昨天晚上听Alex Dong一步一步娓娓道来,把NUnit在Test Driven Development中的使用发挥的淋漓尽致,感觉大开眼界,从来没有想过开发还可以是这个样子的

今天回来自己再次开始深入的学习NUnit的使用,感觉到底和高手有着不小的差距,很多时候不知道该写一个测试用例了,类的扩展也想不到很有效的方法,而且自己的思维还有些局限在原来的面向过程的习惯中,一旦有什么改动,总是先想着添加一个函数,完全想不到应该定义类来实现

试用中发现了一个问题,就是NUnit好像只能测试类库项目中的类(非类库项目无法在NUnit测试项目中添加引用),对于原有的是应用程序的项目,我应该怎么测试其中的类?哪位知道能讲一下吗?
posted on 2004-04-28 16:29 NetCobra 阅读(2327) 评论(14)  编辑 收藏 所属分类: 开发心得

Feedback

#1楼  2004-04-28 17:29 hBifTs      
可以把测试用例放到EXE的工程中啊~

  回复  引用  查看    

#2楼  2004-04-28 17:33 netcobra      
那我到最后发布的时候还要把测试用例全部清理掉啊?不是个好方法:-P

而且生成的EXE无法使用NUnit来测试吧?
  回复  引用  查看    

#3楼  2004-04-28 17:39 Ritchie      
还有,对于web项目来说,怎么样才能够进行测试呢?

大家说说具体的过程。。

还有测试代码和系统本身的代码如何组织?
  回复  引用  查看    

#4楼  2004-04-28 17:54 steeven [未注册用户]
web项目应该引用多个类库,web项目本身就不用测试了,只测试类库
  回复  引用    

#5楼  2004-04-28 18:17 hBifTs      
Web有时候还是要测试的~
你可以去Sourceforge上面看NUnitASP,用来测试ASP.NET页面的..
当你要输入很多信息进去的时候用这个还是比较爽的~

还有一个NUnitWinForm吧,,你可以去找找,,也是SF.NET上面的~
  回复  引用  查看    

#6楼  2004-04-28 18:19 hBifTs      
晕,,,EXE怎么不能用NUnit进行测试啊??
肯定可以的啦~

在EXE中进行测试,两个方法:
1,把所有的TestCase放到一个internal seal类中,别的东东不会使用到它..
2,先把EXE转为一个Dll,测试,完毕后再转成Exe的:P
  回复  引用  查看    

#7楼  2004-04-28 18:23 hBifTs      
哦,对..
你可以把一个EXE做一个动态的Assembly来加载啊~
比如:
TEST.exe中定义如下Class
class TEST1{
public void Run(){}
}

新建一个Dll的测试工程,,
[Test] public void testRun(){
Assembly ass = Assembly.LoadFile( test.exe);
Type types = ass.GetType(test1);
MethodInfo method = types.GetMethod("Run");
method.Invoke(..);
}
  回复  引用  查看    

#8楼  2004-04-28 18:44 NetCobra      
To hBifTs:谢谢。

1.这样子最后的发布还是要把TestCase清除掉,下一个版本怎么办呢?总感觉不太合适。
2.这种方法估计对于自动化构建不太合适,总不能在构建的时候再去修改项目的属性吧?自动构建工具能做到这点吗?
3.这个方法应该还可以,虽然比较复杂:-P
  回复  引用  查看    

大哥,能不能给我个PBUnit,我都忘眼欲穿了,行行好吧!
donkeykiller@163.com
  回复  引用    

#10楼  2004-04-29 11:46 netcobra      
PBUnit?这个应该很容易找到的吧?Google一下,到处都是。
  回复  引用  查看    

#11楼  2004-04-30 14:32 Justin Shen      
寒一个....

to NetCobra: 你可以使用条件编译来往exe代码中加入TestCase,也就是在测试代码周围放上:

#if DEBUG
//这里放所有的测试代码

#endif

这样,当发布的时候,用Release模式编译,测试代码就不会被编译进.exe文件里,而开发时在Debug模式下编译,才会编译所有的测试代码
  回复  引用  查看    

#12楼  2004-04-30 16:20 hBifTs      
@Justin Shen
呵呵,,你的这个作法在这里不错:P
Good~
  回复  引用  查看    

#13楼  2004-05-01 13:59 NetCobra      
To Justion Shen:
好主意,这个办法不错,Why didn't I think of it? *^_^*
  回复  引用  查看    

#14楼  2004-10-15 14:32 小牛哥      
Alex Dong 能否介绍认识一下啊

测试方面我也比较薄弱:(

我现在研究ORM,想把测试的加进来:)
  回复  引用  查看    


标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      


相关链接: