我们一直在使用 FinalBuilder 作为 Delphi 项目的持续集成服务器。
目前,我们的构建是从 subversion checkin 自动触发的,dUnit 测试在单元测试可执行文件构建后运行,AQtime 在单元测试可执行文件运行时生成测试覆盖率统计数据。
我们的下一个目标是让我们的回归套件(在 TestComplete 7 中开发)作为夜间进程运行。我们尝试了通过 COM 启动 TestComplete 的 vbs 脚本和 FinalBuilder 本身附带的 TestComplete 任务。两种方法都会启动 TestComplete,并且应用程序在交互式运行 FinalBuilder 项目时成功。
但是当我们将作业提交到 FinalBuilder 服务器时,TestComplete 脚本崩溃,因为 TestComplete 似乎无法读取应用程序屏幕。我们认为可以通过允许每个服务(TestComplete 和 FinalBuilder)与桌面交互来解决这个问题,但这并不起作用。
有人能够让 TestComplete 7 项目在 FinalBuilder 中正常工作吗?
最佳答案
我在从 FinalBuilder Server 运行的 FinalBuilder 项目自动制作应用程序屏幕截图时遇到了同样的问题。有效的解决方案是“VMWare - 执行 guest 命令”操作,其命令设置为“在 guest 操作系统中以交互方式运行程序”。您必须将 guest 凭据设置为虚拟机的交互式用户。
如果您的构建服务器本身在 VM 内运行,则必须将主机名设置为安装 VMWare 的计算机才能使其正常工作。不过我没有尝试这样做,因为我的 FB 服务器运行在物理机上。
关于通过 FinalBuilder 上的 TestComplete 7 进行 Delphi 项目测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2383100/