TestToolsTask 任务
TestToolsTask 任务为端对端生成或桌面生成运行测试。 通过将属性 IsDesktopBuild 设置为 true,即可设置桌面生成类型。
参数
Property |
说明 |
---|---|
Condition |
可选 String 参数。 Boolean 表达式,MSBuild 引擎用它来确定是否执行此任务。 有关信息,请参见MSBuild 条件。 |
BuildFlavor |
指定生成配置。 例如“Debug”。 仅为端对端(而不是桌面)生成定义。 |
Platform |
指定平台。 例如“x86”或“Any CPU”。 仅为端对端(而不是桌面)生成定义。 |
PublishServer |
指定 Team Foundation Server URL。 仅为端对端(而不是桌面)生成定义。 |
PublishBuild |
指定生成的内部版本号。 仅为端对端(而不是桌面)生成定义。 |
SearchPathRoot |
指定测试文件的搜索路径。 为端对端生成和桌面生成定义。 |
PathToResultsFilesRoot |
指定上载测试结果的位置。 为端对端生成和桌面生成定义。 |
MetaDataFile |
指定测试元数据文件。 此文件包含测试列表和指向测试的链接。 有关测试列表的更多信息,请参见使用测试列表。 测试元数据文件的扩展名为 .vsmdi。 为端对端生成和桌面生成定义。 |
RunConfigFile |
指定测试配置文件。 这些文件配置运行测试的方式。 有关更多信息,请参见 Configuring How to Run Your Tests from Microsoft Visual Studio。 测试运行配置文件的扩展名为 .testrunconfig。 为端对端生成和桌面生成定义。 |
TestLists |
指定包含在测试元数据文件中的测试列表。 为端对端生成和桌面生成定义。 |
TeamProject |
指定团队项目名称。 仅为端对端(而不是桌面)生成定义。 |
TestContainers |
指定包含测试的文件。 例如,myTestFile.dll。 |
备注
Microsoft.TeamFoundation.Build.targets 文件包含一个 TestToolsTask 任务的实例,Team Foundation Build 使用该实例作为 RunTestWithConfiguration 目标的默认实现。
Microsoft.TeamFoundation.Build.targets 文件存储在 Team Foundation Build 计算机上的 <根>:\Program Files\MSBuild\Microsoft\VisualStudio\TeamBuild 文件夹中。
示例
下面的 XML 描述了 Microsoft.TeamFoundation.Build.targets 文件中用于端对端生成的 TestToolsTask 实例。
<!-- MetaDataFile tests for non-desktop builds. -->
<TestToolsTask
Condition=" '$(IsDesktopBuild)'!='true' and '%(LocalMetaDataFile.Identity)' != '' "
BuildFlavor="$(Configuration)"
Platform="$(Platform)"
PublishServer="$(TeamFoundationServerUrl)"
PublishBuild="$(BuildNumber)"
SearchPathRoot="$(OutDir)"
PathToResultsFilesRoot="$(TestResultsRoot)"
MetaDataFile="%(LocalMetaDataFile.Identity)"
RunConfigFile="$(RunConfigFile)"
TestLists="%(LocalMetaDataFile.TestList)"
TeamProject="$(TeamProject)"
ContinueOnError="true" />
<!-- TestContainer tests for non-desktop builds. -->
<TestToolsTask
Condition=" '$(IsDesktopBuild)'!='true' and '%(LocalTestContainer.Identity)' != '' "
BuildFlavor="$(Configuration)"
Platform="$(Platform)"
PublishServer="$(TeamFoundationServerUrl)"
PublishBuild="$(BuildNumber)"
SearchPathRoot="$(OutDir)"
PathToResultsFilesRoot="$(TestResultsRoot)"
RunConfigFile="$(RunConfigFile)"
TestContainers="%(LocalTestContainer.Identity)"
TeamProject="$(TeamProject)"
ContinueOnError="true" />
下面的 XML 描述了 Microsoft.TeamFoundation.Build.targets 文件中用于桌面生成的 TestToolsTask 实例。
<!-- MetaDataFile tests for desktop builds. -->
<TestToolsTask
Condition=" '$(IsDesktopBuild)'=='true' and '%(MetaDataFile.Identity)' != '' "
SearchPathRoot="$(OutDir)"
PathToResultsFilesRoot="$(TestResultsRoot)"
MetaDataFile="%(MetaDataFile.Identity)"
RunConfigFile="$(RunConfigFile)"
TestLists="%(MetaDataFile.TestList)"
ContinueOnError="true" />
<!-- TestContainer tests for desktop builds. -->
<TestToolsTask
Condition=" '$(IsDesktopBuild)'=='true' and '%(TestContainer.Identity)' != '' "
SearchPathRoot="$(OutDir)"
PathToResultsFilesRoot="$(TestResultsRoot)"
RunConfigFile="$(RunConfigFile)"
TestContainers="%(TestContainer.Identity)"
ContinueOnError="true" />