51Testing软件测试论坛

标题: 我的NUNIT学习之路 [打印本页]

作者: fanna007    时间: 2006-3-11 12:44
标题: 我的NUNIT学习之路
这是“NUnit学习笔记 VS.net 2005篇”http://www.wzsky.net/html/Program/net/31993.html.我只关注
C#,算是我的Nunit初步学习过程吧.
由于我跟同事的学习方式不同点之一是:再简单的代码,我也是自己敲,而不是COPY。因此尽管这是个非常简单的示例,我还是遇到了以下的问题:
1、        在NUNIT中,点击菜单“File”->“Open”,打开刚才运行生成的可执行文件,总是不能显示出我编写的类。后来我又编写了多个类库和WINDOWS程序,还是不行。折腾了半天后,终于发现:原来是测试类忘了加[TestFixture]!!!!
2、        还是不行,我都快虚脱了,后来终于发现,没有把测试类公布成PUBLIC!!

都是低级错误!但是我还是翻书,对入门人员来说,实践后补充点理论知识是非常有帮助的,至少现在我是这么觉得,呵呵。
(1)产品代码和测试代码的关系:
测试代码仅限于我们内部使用。客户或者最终用户永远都不会看到,更不会使用这些代码。因此,产品代码—也就是最后要发布给客户或者放入产品中的代码—对测试代码是一无所知的。产品代码最后将撇下测试代码独自闯入一个寒冷的世界(这通常意味着测试代码在另一个项目里,在它自己的程序集中)。
(2)测试代码必须要做以下几件事情:
l        准备测试所需要的各种条件(创建所有必须的对象,分配必要的资源等等)。
l        调用要测试的方法。
l        验证被测试方法的行为和期望是否一致。
l        完成后清理各种资源。
(3)当执行测试代码的时候,请记住你从来不直接运行产品代码;至少,并非像个普通用户那样。而是借助于测试代码,让它根据小心控制的条件来执行产品代码。
(4)断言:NUNIT提供了一些辅助函数用于帮助你确定某个被测试函数是否工作正常。通常而言,我们把所有这些函数统称为断言。它让你确定:某条件是否为真;两个数据是否相等,或者不等,或者其他的一些情况。

(5)一个test fixture(也就是一个用[TestFixture]attribute标记的类)包含一个或多个测试方法:每个方法含一个或多个断言。一个程序集(assembly)可以包含多个test fixture。
作者: 白菜叶子    时间: 2006-3-17 11:54
去年做c#单元测试的时候学过一段时间,现在没机会用也就荒废掉了,很可惜
作者: schyn    时间: 2006-5-10 18:51
去年做c#单元测试验收测试的时候学过一段时间,由于对c#不是十分了解,还要努力学习啊!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2