在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
Dunit的官方Web Site 是https://sourceforge.net/projects/dunit/。 Dunit的主要文件,src下包括的文件表:
配置测试环境 在使用Dunit前应该将下载的Dunit解压。然后后将Dunit的路径加到菜单 Tools->Environment Options 里面的Library->Library Path中。
还有方法:
Dunit基本实现方法(GUI方式) Dunit的基本实现思路是将被测试代码(单元)与测试代码(单元)分开。提供一个FrameWork及一个运行界面。 所有的测试单元都应继承TtestCase。 运行GUI界面
运行TestCase
创建一个简单的例子,如下: 创建一个被测试的Project,添加代码如下: public function BeTestFunction(i,j:integer):integer; end; 添加实现代码如下: implementation function TForm1.BeTestFunction(i,j:integer):integer; begin Result:=i*j; end; end. 编译,通过。 再创建一个Project,命名为TestProject。如果没有和被测试的Project放在同一目录,将被测试的Project的存放路径加到加到菜单 Tools->Environment Options 里面的Library->Library Path中。 编写TestCase 删除确省的Unit1(Form1),创建一个的Unit,注意不是Form.
将创建的Unit保存为Test,在interface中加入以下代码
uses TestFrameWork,Unit1; //要测试的名称 TestFrameWork是每个TestCase都必须使用的,后面要使用的TtestCase等类的定义都在TestFrameWork中。BeTestUnit是将要被测试单元。 定义TestCase,测试类定义代码如下: type TTestCaseFirst=class(TTestCase) private Form1 :TForm1;//要测试的类 protected procedure SetUp; override;//初始化类 procedure TearDown;override;//清楚数据 published procedure TestFirst;//第一个测试方法 procedure TestSecond;//第二个测试方法 end; TtestCaseFirst.Suit在寻找的规则是: 1、测试方法是没有参数的Procedure 2、测试方法被申明为Published SetUp,TearDown是在运行测试方法前、后运行的,所有一般把要测试的类的初始化及清除放在这两个过程中。 以下是实现的代码: implementation procedure TTestCaseFirst.SetUp; begin Form1 := TForm1.Create(Nil); end; procedure TTestCaseFirst.TearDown; begin Form1.Destroy; end; procedure TTestCaseFirst.TestFirst; //第一个测试方法 begin Check(Form1.BeTestFunction(1,3) = 3,'First Test fail'); end; procedure TTestCaseFirst.TestSecond; //第二个测试方法 begin Check(Form1.BeTestFunction(1,3)=4,'Second Test fail'); end; initialization TestFramework.RegisterTest(TTestCaseFirst.Suite); end. 在定义测试方法时候注意,Dunit是通过RTTI(RunTime Type Information)来寻找并自动注册测试方面的,具体实现是通过代码。 TestFramework.RegisterTest(TTestCaseFirst.Suite); Check是TestCase类提供的一个方法。以下是TestCase的实现代码: procedure TTestCase.Check(condition :boolean; msg :string); begin if (not condition) then Fail(msg, CallerAddr); End; 如果Check没有通过的话,Dunit将报错。错误提示就在第二个参数中定义,其他有关类及方法的定义请看连机文档,文档放在 Dunit安装目录/doc/API/IDH_Library_DUnit_-_Xtreme_Unit_Testing_for_Delphi.htm Initialzation代码完成测试单元的注册。 修改Project主文件 运行前的最后一步是修改Project主文件TestProject.dpr。先使用菜单Project->View Source打开Project1.dpr. 修改后的代码如下: program Project1; uses Forms, TestFrameWork, GUITestRunner, TextTestRunner, Test in 'Test.pas'; begin Application.Initialize; GUITestRunner.RunRegisteredTests; end.
来源:http://blog.csdn.net/amy0428/article/details/4242129 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论