delphi测试连接失败oracle,当tsqlconnection.connected=true时如何使delphi-dunit测试失败

我用另一种方法解决这个问题。我编写了一个小实用程序来加载一个dfm文件,并查找不应该存在的属性。包括database.connected=true值。

这可以修改为使用任何适当的属性。我也把代码的核心放在这里了。

为了使它真正有用,您应该在构建脚本中使用这个实用程序(我使用finalbuilder)。我的脚本首先在.dfm文件上循环,去掉这些属性中的任何一个,然后编译并运行单元测试。如果它们通过,那么它将继续构建主应用程序。对我来说,这是一个比单元测试失败更好的方法,因为您可以从一个保证的已知良好点开始。

nState := 0;

bFound := False;

for nFileLoop := 0 to memoFile.Lines.Count - 1 do

begin

szLine := memoFile.Lines[nFileLoop];

case nState of //

0:

begin

if(0 <> Pos('TADOConnection', szLine)) then

begin

szSeeking := 'Connected';

nState := 1;

end

else if(0 <> Pos('TADOTable', szLine)) then

begin

szSeeking := 'Active';

nState := 1;

end

else if(0 <> Pos('TADOQuery', szLine)) then

begin

szSeeking := 'Active';

nState := 1;

end

else if(0 <> Pos('TDBISAMTable', szLine)) then

begin

szSeeking := 'Active';

nState := 1;

end

else if(0 <> Pos('TDBISAMDatabase', szLine)) then

begin

szSeeking := 'Connected';

nState := 1;

end

else if(0 <> Pos('TDBISAMSession', szLine)) then

begin

szSeeking := 'Active';

nState := 1;

end

else if(0 <> Pos('TDBISAMQuery', szLine)) then

begin

szSeeking := 'Active';

nState := 1;

end;

end;

1 :

begin

bFound := True;

if(0 <> Pos('end', szLine)) then

begin

nState := 0;

end

else if(0 <> Pos(szSeeking, szLine)) then

begin

nPos := Pos('=', szLine);

if nPos > 0 then

begin

memoFile.Lines[nFileLoop] := Copy(szLine, 1, nPos) + ' False';

end;

end;

end;

end; // case

end;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值