Visual Studio 团队服务测试 运行

Visual Studio Team Services Test Running

抱歉,如果之前有人问过类似的问题,我似乎找不到任何东西,如果是的话,只是 link 我在正确的方向。

我是测试自动化的新手,我将针对托管在内部网络上的第三方网站编写 selenium 测试。我们的源代码控制由 Visual Studio Team Services 提供,尽管我可以在内部安装 TFS。

最终我需要安排测试 运行s,我相信所有这些都可以通过团队服务来完成,看过一些演示,一切都很好。

我将使用 URL 访问我们内部网络上的被测系统,如果团队服务尝试 运行 selenium 测试并连接到 URL我想它会失败,因为它来自 Microsoft 持有代码和构建的任何地方 运行ning。

我认为即使有可能,我们也不会允许团队服务访问我们的内部网络。

所以问题是,我有哪些选择?可以将构建从 VS Team Services 移动到本地计算机以 运行 使用内部 URL 进行测试吗?如果可以的话,这是个好主意吗?我是否过于依赖互联网来测试我们的内部网络,这有风险吗?

我在 "the google" 上花了一些时间,但很难找到大量信息,可能我问错了问题。

非常感谢任何帮助,link文章很好,不介意做腿部工作,只需要一些指示。

非常感谢您的帮助,如有不妥之处,敬请谅解。

您有几个选择:

  1. Install a VSTS Build agent on-premise and connect it to VSTS. The agent connects to VSTS using an outbound connection and it will be able to execute Builds and Release pipelines and from there orchestrate the execution of tests.

    You can either put this agent in a specific Agent Pool or Agent Queue, or you can add a Capability to it (e.g. "onprem"). By setting the Build Definition to use the specified Pool/Queue the agent will be selected. Or by adding the Demand "onprem" 到您的构建定义,它将确保它始终需要任何代理的能力。

  2. 将 TFS 2015u3 或 TFS2017 与同一个代理一起使用,但这意味着您失去了 VSTS 在许可证方面必须带来的所有优势,"free upgrades" 和所有。

关于安全。

在您的网络中添加一个代理来执行在云服务上排队的命令会增加风险。您可以通过使用受限帐户配置构建代理来最大限度地降低风险,使用 Active Directory 来限制该用户可以 运行 处理 on/logon 的机器,并且您可以通过权限限制对该代理的访问队列和池也是如此。您可以确保有权访问此池的用户和所有 VSTS 管理员已在其 AAD 帐户上配置 2-factor-authentication,并且如果需要,还可以向这些帐户添加 IP 访问控制。建议管理此类代理的用户 pools/queues 不要配置备用凭据,并且用于注册代理的个人访问令牌的范围仅限于执行此操作所需的权限。

采取这些额外措施后,您将拥有一个非常安全的设置。它省去了安装、备份、维护几个 TFS 服务器的麻烦 on-premise。