可以运行Visual Studio Team Services Build中的端到端测试吗?

时间:2016-12-08 16:52:06

标签: javascript automated-tests azure-devops end-to-end

我有一套mocha测试,可以启动Spectron在Electron应用程序上进行端到端测试。

当我尝试通过npm run运行测试时,他们只是超时并失败。似乎该应用程序尚未启动。 VSTS中有一个Run Functional Tests构建步骤模板,但它适用于实际的测试DLL。是否有类似的Javascript端到端测试?

2 个答案:

答案 0 :(得分:0)

托管代理正在作为服务运行,但是启动Spectron以使用Electron app进行测试需要与窗口交互并且测试在构建代理机器上运行。因此,您需要设置一个内部构建代理来进行该测试(使用this测试样本可以正常工作。构建步骤:npm install,npm install test)

  1. 使用您已准备好权限的帐户登录计算机,如上所述。
  2. 转到“代理程序池控制面板”选项卡
  3. 单击“下载代理”。
  4. 点击Windows。
  5. 单击“下载”按钮。
  6. 以管理员身份运行PowerShell。
  7. 运行Create the agent。
  8. 下的命令
  9. 运行。\ config cmd
  10. 有关设置内部版本代理的更多信息,您可以参考this文章。

答案 1 :(得分:0)

由于测试需要与桌面交互,因此它们不适合编译时通常没有应用程序运行实例的编译时间。在构建时坚持纯单元测试。更合适的方法是使用Release Management来协调这些测试。

也就是说,您可以轻松部署您的应用程序(构建或发布)和。使用功能测试任务启动UI交互式任务。您需要部署了测试代理的计算机,但也有一项任务。

enter image description here

由于功能(端到端)测试与桌面交互,因此您只能同时运行一个。如果你只需要几分钟就可以了,但随着你获得更多功能性乳头,这可能会更长。功能测试任务允许您跨多个代理拆分测试执行,以便您可以并行运行测试。

由于您可以选择以交互模式配置自己的Build Agent,因此无论如何都需要服务器。您可以从一开始就使用此模型,以便进行扩展。

如果Visual Studio测试适配器不适用于您的框架,那么您可以创建自己的Visual Studio测试适配器,以及功能测试插件,检测并执行任何测试框架。对于Javascript,您会发现http://mortenhoustonludvigsen.github.io/JsTestAdapter/CreatingATestAdapter/有一些很棒的示例,说明如何创建Jasmin测试适配器作为示例。