如何在MSBuild单元测试中访问teamcity配置参数

时间:2014-07-29 10:15:11

标签: c# unit-testing msbuild teamcity

有没有办法在MSBuild单元测试中访问配置参数?

我将teamcity配置为每隔几个小时运行一次冗长的测试集。 我不时地想要使用特定参数(字符串限制样本测试集)运行测试。我没有在单元测试中检查更改,而是单击团队城市中的“运行...”并将值设置为某个参数。

这可能吗?

1 个答案:

答案 0 :(得分:4)

一种可能的解决方案是从teamcity中的构建参数设置环境变量,然后让测试查找此环境变量以确定要运行的内容。

如果您从配置步骤菜单中选择构建参数并添加新的构建参数,然后选择类型为EnvironmentVariable (.env),您可以设置为某个值,如“all”,以便在运行所有测试时当你想运行受限制的集时,还有其他一些值。

您可以创建一个没有为此构建参数设置值的模板,然后为自动化测试运行创建一个设置“all”值的模板实例。然后有另一个基于此模板的构建,它不会为此设置一个值,您可以将其用于手动运行。我相信如果您没有为参数设置值,那么当您尝试运行构建时,TeamCity会提示您(但我不确定)

在teamcity中定义了一个名为env.file_path_contains的变量后,您可以使用以下代码在测试中访问其值:

System.Environment.GetEnvironmentVariable("file_path_contains")