使用Dunit的时候,如何测试private属性的方法? 如题。谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 就是你在编写测试类testA来测试一个类A的时候,如果A的一个方法FunA是Private的时候,你怎么去测试这个FunA? 有那位达人说说呀!我刚用Dunit,手头资料少的可怜。 既然它是Private 不是 Protected,这就说明你即使继承了 A也访问不到他的私有成员,Object pascal没有定义友员,但是它提供了另一个方式访问这个私有成员。就是把你的TestA继承自A,并且(切记)把TestA类的声明和A类放在同一个单元这就能访问了。 VCL源代码的很多代码都这么干的,导致我们想重新继承一个新的控件非常麻烦,也不知道这是好事儿还是坏事儿。 先改成public,测试完成再改回去要嘛,就在类A的同一个单元,写测试代码,发布的时候去掉 to pazee(耙子): 把代码放在一个单元里太麻烦了,会显得乱。to cll007(gazo): 测试是随时会进行的,比如增加、修改一个方法。因为要持续集成嘛 Class TestA:A~~~~~~~~~~~~~~var EntityTestA:TestA; EntityA:A;begin EntityTestA:=TestA.Create; EntityA.Create; EntityA:=EntityTestA; EntityA.FunA(...)end;不知这样可以吗? 好像只能照pazee(耙子) 说的那样了。 将图片拖动到窗体,便可激活图片查看器打开图片 在设置避免重复启动时遇到的问题 请问如何判断stringgrid中是否存在相同的纪录? 桌子面上的快捷方式没有起始位置如何通过程序实现 这个错误应该如何解决?(多层次) 我的图标是32*32的可在D6中是16*16的应如何解决..... Table、Query从数据库中取数据的区别? 送分了: String 怎样转换成 Char? wenti delphi 使用json dll中使用数据模块的问题。 在dbgrid中对某条记录修改后怎样才能让程序自动判断出是哪几个字段被更新了
我刚用Dunit,手头资料少的可怜。
要嘛,就在类A的同一个单元,写测试代码,发布的时候去掉
把代码放在一个单元里太麻烦了,会显得乱。to cll007(gazo):
测试是随时会进行的,比如增加、修改一个方法。因为要持续集成嘛
~~~~~~~~~~~~~~
var
EntityTestA:TestA;
EntityA:A;
begin
EntityTestA:=TestA.Create;
EntityA.Create;
EntityA:=EntityTestA;
EntityA.FunA(...)
end;
不知这样可以吗?