Visual Studio Team Services Build 中的端到端测试可以 运行 吗?
Can end-to-end tests in Visual Studio Team Services Build be run?
我有一组 mocha 测试,可以启动 Spectron 对 Electron 应用程序进行端到端测试。
当我尝试 运行 通过 npm run
测试时,它们只是超时并失败了。该应用程序似乎没有启动。 VSTS 中有一个 Run Functional Tests
构建步骤模板,但这是用于实际测试 DLL 的。 Javascript 端到端测试是否有类似的东西?
Hosted Agent 是 运行 作为服务,但是启动 Spectron 以使用 Electron 应用程序进行测试需要与 window 交互并且测试是 运行 在构建代理机器上。因此,您需要设置一个本地构建代理来执行该测试(使用 this 测试示例对我来说效果很好。构建步骤:npm install、npm install test)
- 使用您已按上述说明准备权限的帐户登录计算机。
- 转到代理池控制面板选项卡
- 单击下载代理。
- 点击Windows。
- 单击“下载”按钮。
- 运行 PowerShell 作为管理员。
- 运行 创建代理下的命令。
- 运行.\配置命令
有关设置本地构建代理的更多信息,您可以参考this文章。
由于测试需要与桌面交互,因此它们不适合编译时,因为您通常没有 运行ning 应用程序实例。在构建时坚持纯单元测试。更合适的方法是使用发布管理来编排这些测试。
也就是说,您可以轻松部署您的应用程序(构建或发布)和。使用功能测试任务来启动您的 UI 交互式任务。您需要一台部署了测试代理的机器,但也有一个任务。
由于功能(端到端)测试与桌面交互,您一次只能 运行 一个。如果您只需要几分钟,这很好,但是随着您获得更多功能性奶头,这可能需要更长的时间。功能测试任务允许您跨多个代理拆分测试执行,以便您可以 运行 并行测试。
由于您的替代方案是在交互模式下配置您自己的构建代理,因此您无论如何都需要一个服务器。从一开始就可以使用此模型,因为您可以扩展。
如果 Visual Studio 测试适配器不适用于您的框架,那么您可以创建自己的框架,让 Visual Studio 以及功能测试插件检测并执行任何测试框架。对于 Javascript,您会发现 http://mortenhoustonludvigsen.github.io/JsTestAdapter/CreatingATestAdapter/ 有一些很棒的示例,说明如何创建 Jasmin 测试适配器作为示例。
我有一组 mocha 测试,可以启动 Spectron 对 Electron 应用程序进行端到端测试。
当我尝试 运行 通过 npm run
测试时,它们只是超时并失败了。该应用程序似乎没有启动。 VSTS 中有一个 Run Functional Tests
构建步骤模板,但这是用于实际测试 DLL 的。 Javascript 端到端测试是否有类似的东西?
Hosted Agent 是 运行 作为服务,但是启动 Spectron 以使用 Electron 应用程序进行测试需要与 window 交互并且测试是 运行 在构建代理机器上。因此,您需要设置一个本地构建代理来执行该测试(使用 this 测试示例对我来说效果很好。构建步骤:npm install、npm install test)
- 使用您已按上述说明准备权限的帐户登录计算机。
- 转到代理池控制面板选项卡
- 单击下载代理。
- 点击Windows。
- 单击“下载”按钮。
- 运行 PowerShell 作为管理员。
- 运行 创建代理下的命令。
- 运行.\配置命令
有关设置本地构建代理的更多信息,您可以参考this文章。
由于测试需要与桌面交互,因此它们不适合编译时,因为您通常没有 运行ning 应用程序实例。在构建时坚持纯单元测试。更合适的方法是使用发布管理来编排这些测试。
也就是说,您可以轻松部署您的应用程序(构建或发布)和。使用功能测试任务来启动您的 UI 交互式任务。您需要一台部署了测试代理的机器,但也有一个任务。
由于功能(端到端)测试与桌面交互,您一次只能 运行 一个。如果您只需要几分钟,这很好,但是随着您获得更多功能性奶头,这可能需要更长的时间。功能测试任务允许您跨多个代理拆分测试执行,以便您可以 运行 并行测试。
由于您的替代方案是在交互模式下配置您自己的构建代理,因此您无论如何都需要一个服务器。从一开始就可以使用此模型,因为您可以扩展。
如果 Visual Studio 测试适配器不适用于您的框架,那么您可以创建自己的框架,让 Visual Studio 以及功能测试插件检测并执行任何测试框架。对于 Javascript,您会发现 http://mortenhoustonludvigsen.github.io/JsTestAdapter/CreatingATestAdapter/ 有一些很棒的示例,说明如何创建 Jasmin 测试适配器作为示例。