TFS Build Server检测签入的用户

时间:2012-05-24 06:18:37

标签: unit-testing tfs build

我们在构建服务器上持续集成。每次签到后自动测试的程序会发送一些电子邮件。我们希望将这些电子邮件发送给签入的用户。在开始单元测试时,有没有办法获得用户签名的用户名。

如果我们能够以某种方式访问​​在AssemblyInitialize方法中进行签入的用户的名称,那将是最好的。

注意:此请求与发送测试报告无关,而是在运行所有单元测试之前更改应用程序配置文件中的电子邮件。

1 个答案:

答案 0 :(得分:0)

您可以更改构建过程工作流以从当前Shelveset获取(该类型在C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ PrivateAssemblies \ Microsoft.TeamFoundation.VersionControl.Client中定义。 dll)OwnerDisplayName(目前它只是带域的登录名,所以你应该做一些AD查找以从AD获取普通名称和电子邮件)。 获得此信息后,您可以检查测试结果是否为绿色。如果不是,则在默认模板中引发异常。抓住它并向用户发送邮件并重新抛出异常。

在测试级别,由于TFS具有

的测试代理,因此无法看到它
  1. 可以在构建代理程序的另一台机器上运行(没有源代码,没有源代码控制,......)
  2. 可以在多台计算机上并行运行(从测试仪发送失败邮件6次)。
  3. 您正试图在错误的级别(内部测试)中解决问题。您可以轻松更改构建过程模板。