在FinalBuilder上通过TestComplete 7进行Delphi项目测试

在FinalBuilder上通过TestComplete 7进行Delphi项目测试,delphi,continuous-integration,finalbuilder,testcomplete,Delphi,Continuous Integration,Finalbuilder,Testcomplete,我们一直在使用FinalBuilder作为Delphi项目的持续集成服务器 目前,我们已经从subversion签入自动触发构建,在构建单元测试可执行文件之后运行dUnit测试,并在运行单元测试可执行文件时生成测试覆盖率统计信息 我们的下一个目标是让回归套件(在TestComplete 7中开发)作为夜间流程运行。我们尝试了通过COM启动TestComplete的vbs脚本和FinalBuilder本身附带的TestComplete任务。这两种方法都会启动TestComplete,并在以交互方式

我们一直在使用FinalBuilder作为Delphi项目的持续集成服务器

目前,我们已经从subversion签入自动触发构建,在构建单元测试可执行文件之后运行dUnit测试,并在运行单元测试可执行文件时生成测试覆盖率统计信息

我们的下一个目标是让回归套件(在TestComplete 7中开发)作为夜间流程运行。我们尝试了通过COM启动TestComplete的vbs脚本和FinalBuilder本身附带的TestComplete任务。这两种方法都会启动TestComplete,并在以交互方式运行FinalBuilder项目时成功启动应用程序

但是当我们将作业提交到FinalBuilder服务器时,TestComplete脚本崩溃,因为TestComplete似乎无法读取应用程序屏幕。我们认为这可以通过允许每个服务(TestComplete和FinalBuilder)与桌面交互来解决,但这不起作用


有人能让TestComplete 7项目在FinalBuilder中正常工作吗?

从我对类似问题的回答中可以看出,这是一个无耻的插件

  • 在生成服务器上设置虚拟机。您的构建在虚拟机中执行。您可以锁定主机(也称为构建服务器)以确保安全
  • 让某人一直登录。这可能会造成安全问题。您可以通过移除鼠标、键盘和屏幕并仅通过RDP或类似的方式访问buildserver来缓解此问题
看看:当计算机被锁定时,TestComplete是否可以执行脚本


结果是FinalBuilder服务器无法运行与GUI交互的测试完成项目

为了解决这个问题,我创建了一个计划任务来运行运行运行TestComplete项目的VBS脚本。然后,脚本将HTML输出复制到FinalBuilder监视的另一个文件夹中


FinalBuilder项目解析HTML并发送一封电子邮件,其中包含摘要结果和附加的HTML。

从FinalBuilder服务器运行的FinalBuilder项目中自动生成应用程序的屏幕截图时,我遇到了相同的问题。有效的解决方案是VMWare-Execute Guest命令操作,该命令集用于在Guest OS中以交互方式运行程序。您必须将来宾凭据设置为VM的交互用户


如果生成服务器本身在VM内运行,则必须将主机名设置为安装VMWare的计算机,以使其正常工作。不过我没有尝试,因为我的FB服务器运行在一台物理机器上。

是的!所以有希望,但不是我做的,所以我不会发布答案。这与屏幕保护程序或计算机被锁定或类似的事情有关,当然不是屏幕保护程序或计算机被锁定。我在登录FinalBuilder运行的VM时测试了这个。它可以以交互方式正常工作,但在将作业提交到FinalBuilder服务器时则不行。生成服务器和测试完成已在VM上运行。