tName(); begin book.name := ''''ASP''''; //设置name属性的值为ASP //使用Assert查看name属性的值是否为JSP,这是个必然出现错误的测试 Assert.AreEqual(''''JSP'''', book.name); Console.WriteLine(''''name属性被测试!''''); end;
procedure TBookTest.Dispose(); begin Console.WriteLine(''''book对象将被清理!''''); book := nil; Console.WriteLine(''''测试结束!''''); end;
end. 也是固定格式,没什么好说的吧?改好后,点击菜单“Run”->“Run”或按F9键运行程序。等等,main函数里头好象一句代码也没写过呢吧?没错,一句也没写,但如果你用的是C#照做就可以了,如果用的是Delphi,那么请把NUnitOP.bdsproj文件打开。我们需要对该文件进行修改,否则程序虽能生成,但却无法用于测试。什么,没有这个文件?按Ctrl + F12,在打开的“View Unit”对话框中选择NUnitOP一项,然后点击“OK”。在文件中修改代码如下: program NUnitOP;
{$APPTYPE CONSOLE}
{%DelphiDotNetAssemblyCompiler ''''e:\program files\nunit 2.2\bin\nunit.framework.dll''''} {%DelphiDotNetAssemblyCompiler ''''$(SystemRoot)\microsoft.net\framework\v1.1.4322\System.dll''''} {%DelphiDotNetAssemblyCompiler ''''$(SystemRoot)\microsoft.net\framework\v1.1.4322\System.Data.dll''''} {%DelphiDotNetAssemblyCompiler ''''$(SystemRoot)\microsoft.net\framework\v1.1.4322\System.XML.dll''''}
uses SysUtils, Book in ''''Book.pas'''', BookTest in ''''BookTest.pas'''';
var bt : TBookTest; begin bt := TBookTest.Create(); end. 修改好后,按F9键运行程序。在看到黑屏一闪之后,编码工作完成。 五、运行NUnit 编码完成后,就可以使用NUnit测试了。NUnit有两种界面,一种是命令行的,一种是可视化的,我使用的就是后者。点击“开始”菜单->“所有程序”->“NUnit 2.2.6”->“NUnit-Gui”,打开NUnit的可视化界面:

点击菜单“File”->“Open”,打开刚才运行之后生成的可执行文件:

此时就可以使用BookTest类对Book类进行测试了。请首先选择testId,点击“Run”按钮,运行结果如下图:

testId前的灰点变绿,而且进度条显示为绿条,这表明运行成功。下面再选择TBookTest,点击“Run”按钮,运行结果如下图:

testId前的点依然是绿色,但testName前的点是红色,而且进度条显示为红条,这表明testName中存在错误。不过这个错误是预计之内的,如果不想看到,可以在Delphi中将testName()方法中的”JSP”改成”ASP”,然后重新运行。此时无须重新启动NUnit,NUnit会自动加载重新编写好的文件。此时再运行BookTest,进度条已不是红色,而是绿色了。 六、说明 本文是对《NUnit学习笔记之Delphi 2005篇》的修正,NUnit和Delphi都使用了新版本。NUnit 2.2.6对2.2.0进行了很多扩展,这从对NUnit.Framework.Assert和NUnit.Framework.StringAssert的介绍就可以看出来。 其实以前感觉Delphi语法挺优美的,不过自从进入.net时代,就怎么看怎么不爽了。尽管也清楚,这是为了让Delphi程序员可以轻松进入.net世界,Borland也付出了很多劳动,而且Delphi还是我最最崇拜的Anders的杰作,但还是感觉别扭。看来人生经常也挺讽刺的。
上一页 [1] [2] |