通过 FinalBuilder 上的 TestComplete 7 进行 Delphi 项目测试
我们一直在使用 FinalBuilder 作为 Delphi 项目的持续集成服务器。
目前,我们的构建从 subversion 签入自动触发,dUnit 测试在单元测试可执行文件构建后运行,AQtime 在单元测试可执行文件运行时生成测试覆盖率统计数据。
我们的下一个目标是让我们的回归套件(在 TestComplete 7 中开发)作为夜间进程运行。我们尝试了通过 COM 启动 TestComplete 的 vbs 脚本和 FinalBuilder 本身附带的 TestComplete 任务。两种方法都会启动 TestComplete,并且应用程序在交互式运行 FinalBuilder 项目时成功。
但是,当我们将作业提交到 FinalBuilder 服务器时,TestComplete 脚本崩溃,因为 TestComplete 似乎无法读取应用程序屏幕。我们认为可以通过允许每个服务(TestComplete 和 FinalBuilder)与桌面交互来解决这个问题,但这并不起作用。
有人能够让 TestComplete 7 项目在 FinalBuilder 中正常工作吗?
We've been using FinalBuilder as a continuous integration server for our Delphi project.
Currently, we have our builds automatically triggered from subversion check-ins, dUnit tests run after the unit test executable is built and AQtime generating test coverage statistics while the unit test executable is run.
Our next goal is to get our regression suite (developed in TestComplete 7) running as a nightly process. We have tried both a vbs script to start TestComplete via COM and the TestComplete task that comes with FinalBuilder itself. Both methods start TestComplete, and the application successfully when running the FinalBuilder project interactively.
But when we submit the job to the FinalBuilder server, the TestComplete script crashes because TestComplete doesn't appear to be able to read the application screens. We thought this might be resolved by allowing each of the services (TestComplete and FinalBuilder) to interact with the desktop, but that didn't work.
Has anybody been able to get a TestComplete 7 project to work correctly in FinalBuilder?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我在从 FinalBuilder Server 运行的 FinalBuilder 项目自动制作应用程序屏幕截图时遇到了同样的问题。有效的解决方案是“VMWare - 执行来宾命令”操作,其命令设置为“在来宾操作系统中以交互方式运行程序”。您必须将访客凭据设置为虚拟机的交互式用户。
如果您的构建服务器本身在 VM 内运行,则必须将主机名设置为安装 VMWare 的计算机才能使其正常工作。但我没有尝试这样做,因为我的 FB 服务器在物理机上运行。
I have had the same problem with automatically making screenshots from my application from a FinalBuilder project run by FinalBuilder Server. The solution that worked was the VMWare - Execute Guest Command action with the command set to Run a program interactively in Guest OS. You have to set the Guest Credentials to the interactive user of the VM.
If your build server itself is running inside a VM you must set the Host Name to the machine where VMWare is installed to make this work. I didn't try that though, as my FB server is running on a physical machine.
来自我对类似问题的回答的无耻插件此处
Shameless plug from my answer to a similar question here
事实证明 FinalBuilder 服务器无法运行与 GUI 交互的测试完整项目。
为了解决这个问题,我创建了一个计划任务来运行一个运行 TestComplete 项目的 VBS 脚本。然后,该脚本将 HTML 输出复制到 FinalBuilder 监视的另一个文件夹。
FinalBuilder 项目解析 HTML 并发送一封电子邮件,其中附有摘要结果和 HTML。
It turns out the FinalBuilder server can't run test complete projects that interact with the GUI.
To get around this, I created a scheduled task to run a VBS script that runs the TestComplete project. The script then copies the HTML output to another folder which FinalBuilder watches.
A FinalBuilder project parses the HTML and sends an e-mail out with the summary results and the HTML attached.