问题标签 [vstest.console.exe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
181 浏览

vstest - VSTS“运行功能测试”TestCategory 不适用于 Specrun 测试

作为 VSTS 发布过程的一部分,我正在尝试运行我们的 specrun 测试的一个子集。它适用于 TestCategory=SmokeTest 的“Visual Studio 测试”步骤: Visual Studio 测试

它找到 47 个测试并执行它们。当我使用“运行功能测试”使用相同的配置时,如下所示: 运行功能测试

我得到以下输出:

它发现了 101 个测试,而不只是标记为 SmokeTest 的测试,它甚至没有运行它们。它只是保释。我知道两个 VSTS 步骤都在使用 vstest.console.exe。我还缺少其他配置吗?

0 投票
1 回答
703 浏览

vstest - vstest.console.exe ListTests with FullyQualifiedName

vstest 的/ListTests选项返回 dll 中的测试方法名称列表。

有没有办法返回FullyQualifiedNames列表?

因此,我不想收到TestMethodName ,而是希望收到NamespaceName类名测试方法名称

0 投票
1 回答
2599 浏览

visual-studio-2013 - TFS 2015 Build:无法确定 vstest.console.exe 的位置

设置

我在服务器上安装了带有 Update 4 的 TFS 2015 和带有 Update 5 的 Visual Studio 2013 Professional。然后我在同一台服务器上安装了 TFS 构建代理(版本 1.95.4)。

我注意到构建代理的功能包括 MSBuild 和 VisualStudio(如预期的那样),但不包括 VSTest ......所以我手动添加 VSTest 作为包含 vstest.console.exe 文件夹的功能(是的,它在 D 驱动器上):

D:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow

我创建了一个简单的构建定义,其中包含以下步骤:

  1. Visual Studio Build(设置为使用版本 2013)
  2. Visual Studio 测试(设置为使用 2013 版)

问题

当我排队构建时,代码构建得很好,但是当测试运行时,我收到以下错误:

System.IO.FileNotFoundException:无法确定 vstest.console.exe 的位置

我试过的

我已经搜索了一个解决方案,但找不到与我在版本方面遇到同样困境的人(使用 TFS 2015 和 VS 2013 Professional)。虽然,我确实尝试了针对不同 TFS/VS 版本组合提出的多种其他解决方案,但无济于事:

  • 确保存在以下注册表项:

    • HKLM\Software\Wow6432Node\Microsoft\VisualStudio\12.0

      • ShellFolder有值的条目 D:\Program Files (x86)\Microsoft Visual Studio 12.0\

      • ShellFolder 截图

    • HKLM\Software\Wow6432Node\Microsoft\VisualStudio\12.0\EnterpriseTools\QualityTools

      • InstallDir有值的条目D:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow
  • 重新安装构建代理

  • 添加“VSTest”作为环境变量
  • 将 Visual Studio 测试任务设置为使用“最新版本”而不是“2013”

如何让代理识别/查找 vstest.console.exe?有什么我忽略的吗?

0 投票
1 回答
3317 浏览

tfs - 为什么 TFS 代理没有发现 VSTEST 功能

我们有 TFS 2015 服务器和一个带有 Visual Studio 2017 Ultimate 的构建服务器。TFS 代理无法检测到 VisualStudio 或 VsTest 功能(应该如此),但是当手动添加时,仍然存在问题。

当涉及到 Visual Studio 测试步骤时,控制台会显示以下错误并失败:

我手动添加了以下功能:

视觉工作室 C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise VisualStudio_15.0 C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise

VisualStudio_IDE C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE

VisualStudio_IDE_15.0 C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE

VS150COMNTOOLS C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\

VSTest C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow

VSTest_15.0 C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow

这是我的 Visual Studio 测试设置: 在此处输入图像描述

0 投票
1 回答
741 浏览

vstest - VSTest - testsettings 文件中定义的 DeploymentItem 未部署到 TestResults 文件夹

我有一个 testsettings 文件,其中定义了部署项目,当我将它与 MSTest 一起使用时,它会按照我的预期部署我的文件。但是,当我使用与 vstest.console.exe 相同的 testsettings 文件时,这些项目不会部署到 TestResults 文件夹。我需要做一些不同的事情来使用 vstest 部署特定文件吗?

这是 testsettings 文件中的部署部分:

这是我将它与 MSTest 一起使用的方法:

以下是我如何将它与不工作的 VSTest 一起使用:

0 投票
2 回答
872 浏览

azure-pipelines - 当 Visual Studio 测试步骤未发现任何测试时,如何使 Visual Studio Online 构建失败

设想

  • Visual Studio Online 生成定义。
  • 使用 Visual Studio 测试 - 测试程序集步骤在特定 dll 中运行测试。
  • 这个 dll 中的测试更像是构建步骤(高度定制的构建器),而不是测试。
  • 测试步骤将“出错时继续”设置为 false,因为当其中一个构建器失败时,我需要它失败。这正在按预期工作。当测试步骤失败时,构建失败。

由于测试运行器的变化,由于 dll 中的测试框架与构建中使用的测试运行适配器不匹配,目前没有发现任何测试。(我知道如何解决这个问题,这不是问题。)

问题在于,这只会在日志中生成一条关于未发现测试的信息消息,并警告说没有要发布的测试结果,从而使构建存在(表面上)成功。我想摆脱的误报。

我需要做什么才能使“未发现测试”使构建失败?

.runsettings我已经使用文件(https://msdn.microsoft.com/en-us/library/jj635153.aspx )查看了 vsts testrunner 配置,但是没有看到任何选项来获得这种行为?

0 投票
1 回答
1526 浏览

sonarqube - VSTS+ SonarQube + DotNetCore 2.0 + 单元测试

任何人都知道 VS 任务、参数和命令行的正确组合来让这 4 件事一起玩得很好吗?

我可以让 SonarQube 对执行以下操作的代码进行分析:

  • 适用于 MSBuild 的 SonarQube 扫描仪 - 开始分析
  • Visual Studio 构建
  • 用于 MSBuild 的 SonarQube 扫描仪 - 结束分析

但是 Visual Studio 测试任务找不到我编写的任何 dotnetcore 2.0 测试(尝试了 MSTest 和 xUnit 框架,以及一大堆参数)

我可以让 dotnet 构建/测试任务正常工作,但我无法让 SonarQube Scanner CLI 执行任何操作,但会出现以下错误

寻找一些关于如何让 VS-Task“Visual Studio 测试”运行 dotnetcore 2.0 内置测试或让 SonarQube CLI 与 VSTS 托管代理一起玩的建议......

更新:第一个答案中的说明使构建工作(感谢您提供有关如何运行 .NET Core 2.0 测试的提示!!我在任何地方都找不到该框架密钥... SonarQube 现在正在爆炸关闭.. 这是来自 VSTS 的步骤的日志(带调试)

0 投票
0 回答
185 浏览

vb.net - 如何从 vb.net 中的 TestContext 获取 TestCategory 名称

我有一个带有 TestCategory 属性的测试方法,如下所示。

myCategory我们可以使用TestContextinAssemblyInitialize方法获取测试类别名称( )吗?

提前致谢..

0 投票
3 回答
3760 浏览

selenium - Vstest.console.exe 找不到 nunit 测试

我有 VS 2017 和 .net 4.6

在尝试使用 vstest.console 通过 cmd 提示符运行时:

我收到警告“/bin/Release/test.dll确保已安装的测试发现器和执行器、平台和框架版本设置正确,然后再试一次。”中没有可用的测试。

所以,我尝试列出测试,但它没有显示任何测试。

单元测试类文件如下所示。

我尝试用谷歌搜索类似的问题,但没有找到任何可行的方法。非常感谢任何帮助

0 投票
1 回答
1031 浏览

powershell - Jenkins、vstest.console.exe 和 PowerShell

问题

这是一个双重问题。

我正在从事一项运行在目标项目中找到的单元测试的工作。我有两个正在使用的变体,我正试图让其中一个正常工作。

变体 A

我正在使用 VsTestRunner 插件,但是我不知道如何捕获它的输入,以便我可以将该信息放入外部日志中。

变体 B

我已经放弃了 VsTestRunner 插件并正在通过 PowerShell 使用 vstest.console.exe,但发现了以下问题:

如果任何测试失败,我如何终止脚本并使构建失败?

我尝试查看上述插件的代码,但它是用 Java 编写的(我的经验有限),我找不到它是如何终止代码的。我也找不到这方面的任何资源......而且 vstest.console.exe 的文档在其选项变量之外没有任何关于用例的内容。我也尝试过查看 vstest.console.exe.config 文件,希望有一些我可以使用的东西……但这也太失败了。

问题

变体 A:是否可以捕获 Jenkins 插件的输出?如果是这样,怎么做?

变体 B:如果任何测试失败,我如何终止脚本并使 Jenkins 构建失败?