gpt4 book ai didi

forms - 如何从 DUnit 测试中获取事件的 TGUITestRunner?

转载 作者:行者123 更新时间:2023-12-03 15:58:31 26 4
gpt4 key购买 nike

TGUITestRunner 表单表示 DUnit 测试结果,由 GUITestRunner.RunTest 过程创建一次:

procedure RunTest(test: ITest);
begin
with TGUITestRunner.Create(nil) do
begin
try
Suite := test;
ShowModal;
finally
Free;
end;
end;
end;

我想通过编写彩色状态消息在运行时扩展它。这是可能的,因为 GUI 底部的状态消息被放入 TRichEdit 中。因此,我需要在 TTestCase 中的某个位置获取指向此表单的指针。

我可以在不修复 DUnit 代码的情况下做到这一点吗?也许你可以推荐一些技巧?

最佳答案

一种“解耦”的方法可能是在状态消息中使用一些“嵌入代码”:

Status('<blue>Testing');

在 dUnit 测试框架中,您可以检查状态消息的初始字符是否为“<”,并提取颜色或其他参数等参数,然后修改 dUnit 来处理它。

这样,您的测试仍将在未经修改的 dUnit 测试运行器上运行。几年后,您可能想要迁移到最新的 dUnit 测试,我不建议进行任何 API 更改,或尝试访问测试运行器对象。 API 和您在测试中看到的内容都是经过有意严格控制的。这是正确的面向对象设计的原则,jUnit/xUnit/dUnit 的创建者坚信这一原则。

关于forms - 如何从 DUnit 测试中获取事件的 TGUITestRunner?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9667130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com