KOL+DUNIT+WANT+PASDOC进行TDD开发

来源:互联网 发布:淘宝运营总监招聘 编辑:程序博客网 时间:2024/04/19 13:31

KOL+DUNIT+WANT进行TDD开发。TDD是测试驱动开发的缩写,自动化程度比较高。

DUNIT用来测试是非常方便的,下载地址是:http://dunit.sourceforge.net

WANT是类似ANT的构建工具,基本上语法与ANT一致,但是增加了dcc,dunit几个与delphi有关的命令。地址:http://sourceforge.net/projects/want/ 。

KOL&MCK:DELPHI下的一组控件,几乎重写VCL的基础控件,可以完全替代VCL基础控件和project,还支持FreePascal的编译,可以不依赖于DELPHI。MCK是依赖于DELPHI的IDE,只支持KOL控件,可以快速可视化开发基于KOL的应用。使用KOL的应用编译后的最小仅有二十几K,而DELPHI最小的GUI应用有二百多K。

应用范围:关键性应用,要求性能和字节数的应用。比如编写OCX控件下载,网络安装。用来代替JAVA的网络安装是非常好的。编写带有界面的驱动程序,可以非常好地控制住字节数。用来编写木马和病毒,比汇编要好,甚至还可以带GUI(当然这算是浪费时间)。编写注册机,已经有很多人这样做了,看重的是速度快,字节数小。

结论:使用难度略高于DELPHI而低于C,性能比得上C但可能会小于汇编(其实一部分代码是用汇编写的),多平台移植性没有(当然可以用WINE,比模拟OFFICE简单多了),字节数可能会超过C,但不会造成质变。性价比算是超高的,要好好用一用。
下载地址:http://bonanzas.rinet.ru/e_downloads.htm
感谢俄罗斯大牛!

PASDOC产生类似javadoc的文档。地址:http://pasdoc.sipsolutions.net/ 。

创建项目,建立目录结构。
aiclient—src(源码)
        |–test(测试代码即设计)
        |–deploy(执行代码和编译控制文件want.xml)
        |–doc(文档)
        |–lib(开发库)
            |–kol
            |–dunit
            |–want
            |–dcu(生成的编译文件)

安装kol和mck:
创建一个目录d:/kol,把所有kol和mck的文件都拷贝过去,安装MirrorKOLPackageD7.dpk。
将d:/kol加入到delphi的搜索目录中,以便编译中的引用。

创建一个普通的Application,保存好。把KOLProject放到主Form上。设置KOLProject的属性projectDest为新的KOL’s project的名字,这个名字是任意的,设置后将生成一个新的dpr文件,这个dpr文件是符合KOL的要求,这个名字内不可以有路径。然后再放一个KOLForm上去,将主Form转成KOLForm。全部保存后关闭所有的文件,再重新打开新设置的名字的project就行了。

MCK的功能就是将一个VCL的控件映射为KOL的控件,利用了DELPHI的GUI设计功能来设计KOL。所以每当放一个KOL控件,就会生成一段KOL代码,非常地有用。不过有个限制,必须要在同一个目录下。

KOL利用DELPHI编译器会自动SmartLink的功能,成功地将一个GUI程序减少到来二十几K左右,加上UPX压缩后就剩下十几K了。

dunit的使用非常简单,只要将dunit的源码都放在可以搜索到目录下就了。基本上只需要一个TestFramework.pas文件就够了,如果需要运行GUI则还要一个GUITestRunner.pas文件。
一般来说如果与want配合则要使用dll,创建一个dll,不需要任何form,加入单元:TestFrameWork,ShareMem和所有需要测试的单元。
假设:SecurityUnit是源码,创建SecurityUnitTest作为测试单元。定义 TTestSecurity = class(TTestCase)类型。
加上
initialization
  TestFramework.RegisterTest(TTestSecurity.Suite);
注册一下测试类,当然测试类是可以写在一起。
将dpr里面的
begin
end;
改为
exports
  RegisteredTests name ‘Test’;
end;

want就需要一个want.exe就够了,如果需要根据dof文件生成want.xml则还要一个dof2want.exe。
编写一个want.xml,然后运行want就可以编译了,这个是类似ant的。
使用pasdoc产生类javadoc的文档,注解里的写法跟javadoc一样。美中不足的是生成的文档没有中文,好在有源码,简单地改了一下,全部汉化了,看了看big5根本就没写全,反正我也不管,就这样好了。

再把pasdoc放到want.xml里面执行,这样可以自动产生文档了。
最后的want.xml文件

全套类库下载地址:http://www.tomore.com/dispdocnew.php?id=38332
也可以参加kicoy项目获得更新和支持。
—-

www.kicoy.com

原创粉丝点击