作为CI的一部分运行自动UI测试

时间:2013-07-30 19:18:09

标签: tfs continuous-integration ui-automation coded-ui-tests automationelement

我正在为大型WPF应用程序开发自动化测试套件。我已经为Microsoft Windows Automation API(以前称为UI自动化框架)创建了一个包装器库,我使用它来实现各种健全性测试。我的团队希望通过在每次签到时运行它们来进行持续集成。我们正在与TFS(2012年我相信)和MSTest合作。

这些测试的问题在于它们需要启动并运行UI才能实际运行测试。我想这个想法是将构建的二进制文件复制到远程VM并使用Remote Agent运行测试,但我不确定从哪里开始。

有没有人曾经这样做过,并且有任何代码/构建工作流XAML示例可以实现这样的目标吗?

2 个答案:

答案 0 :(得分:2)

您需要在测试计算机上设置标准环境,这将在其上安装测试代理。然后,测试代理会在您的UI上为您运行测试。

这应该让你开始: http://msdn.microsoft.com/en-us/library/ee390842.aspx

答案 1 :(得分:1)

对于我的CI服务器,我使用JetBrains的TeamCity。有了它,您可以设置多个构建代理,以便轻松连接到TeamCity服务器。

特别是关于使用UI Automation进行测试,您需要在所有构建代理上进行交互式桌面会话。为此,我将它们全部设置为自动登录,并且我有一个运行C:\BuildAgent\bin\agent.bat start的启动脚本,以便TeamCity代理在交互式会话中启动。

TeamCity很好地与TFS挂钩,应该能够轻松地运行您的测试。我使用NUnit作为我的测试运行器,但我无法想象它非常困难to get running。最重要的是,它可以免费使用三个构建代理和最多20个构建配置。

希望这有帮助。