Visual Studio 测试
note
自 TeamCity 2019.2.3 版本开始,我们已经停止对 Visual Studio Tests 运行器的主动支持。 请使用 .NET 运行器配合
vstest
命令进行操作。 它提供了相同的功能范围,并增加了新的特性,如 Docker 支持。有关迁移的更多详细信息,请参考 .Net 运行器 description。
Visual Studio Tests 构建运行程序集成了 MSTest 框架和 VSTest 控制台运行器的功能。 对两种框架的支持使 TeamCity 能够执行测试并自动导入其测试结果。
Visual Studio 测试运行器需要在构建代理上安装 Visual Studio 测试代理或 Microsoft Visual Studio。
选项 | 描述 |
---|---|
测试引擎类型 | 选择用于运行测试的工具:VSTest 或 MSTest。 |
测试引擎版本 | 从下拉菜单中选择工具的版本。 默认情况下,TeamCity 会自动检测可用的 VSTest 和 MSTest 安装:
您也可以在此处指定自定义路径到测试运行器。 TeamCity 参数得到了支持。
|
测试文件名 | 这个字段对于 VSTest 来说是必填的,而对于 MSTest 则是可选的。 |
运行配置文件 | (可选)为 VSTest 指定典型的 |
附加命令行参数 | 为选择的测试引擎输入额外的命令行参数。 |
其他的设置将根据运行测试的引擎而变化:
选项 | 描述 |
---|---|
目标平台 | 选择平台的位数。 请注意,指定 x64 目标平台将强制 |
框架 | 如果指定了默认值,vstest.console 将自动选择目标框架。 您也可以通过下拉菜单手动选择 .NET 平台。 |
测试名称 | (可选)在包含的程序集中发现的所有测试中,只有名称与提供的值匹配的测试将会被执行。 对于多个值,请使用新的行。 如果该字段为空,将会运行所有的测试。 请参阅 Microsoft documentation 中的详细信息。 无法与下面的选项一起使用。 |
测试用例过滤器 | 运行与给定表达式匹配的测试。 请参阅 Microsoft documentation 中的详细信息。 无法与上述选项一同使用。 |
在隔离中运行 | 在独立的进程中运行测试 |
使用实时测试报告 |
|
VSTest.Console
支持自定义日志记录器,即可以处理测试执行过程中发生的事件的库。
TeamCity 有一个自定义的日志记录器,它提供实时的测试报告。 日志记录器必须在代理机器上手动安装,因为它需要将 dlls 复制到 VSTest.Console 的 扩展
目录。 当自定义记录器安装完成后,无需重启代理。
安装自定义日志记录器:
1. 下载 custom logger。
2. 将下载的存档内容提取到代理机器上的以下路径:
针对 VisualStudio 2019 的更新:
PROGRAM_FILES(x86)\Microsoft Visual Studio\2019<Edition>\Common7\IDE\Extensions\TestPlatform\Extensions
针对 VisualStudio 2017 更新 5 及以后的版本:
PROGRAM_FILES(x86)\Microsoft Visual Studio\2017<Edition>\Common7\IDE\Extensions\TestPlatform\Extensions
适用于 VisualStudio 2017 至更新 4:
PROGRAM_FILES(x86)\Microsoft Visual Studio\2017<Edition>\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions
针对 VisualStudio 2015:
PROGRAM_FILES\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions
对于 VisualStudio 2013:
PROGRAM_FILES\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions
针对 VisualStudio 2012:
PROGRAM_FILES\Microsoft Visual Studio 11.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions
3. 请通过在代理机器的控制台执行 vstest.console.exe /ListLoggers
来检查自定义日志记录器是否已正确安装。 如果日志记录器正确安装,您将看到列出的带有 FriendlyName TeamCity
的日志记录器:
VSTest.TeamCityLogger.TeamCityLogger
Uri: logger://TeamCityLogger
FriendlyName: TeamCity{info}
选项 | 描述 |
---|---|
MSTest 元数据 | 为 |
要从元数据运行的测试列表 | 编辑 Testlist。 每一行都会被翻译成 |
测试 | 要运行的单个测试的名称。 这个选项将被翻译成一系列的 |
唯一 | 仅当在测试部分找到任何指定测试的一个唯一匹配时,才运行测试。 |
结果文件 | 为 为了将测试运行结果保存到指定的非默认文件中, 请输入一个值作为
|
感谢您的反馈!