问题标签 [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 回答
281 浏览

.net - dotnet vstest 的 TfsPublisher 记录器

当我们使用

"dotnet vstest "Mytest.dll" /logger:TfsPublisher;Collection="<TFSURL>";BuildName="<BuildName>";TeamProject="<Project>";Platform="AnyCPU";Flavor="Release";

我们收到以下错误:

Could not find a test logger with AssemblyQualifiedName, URI or FriendlyName 'TfsPublisher'.

该调用适用于 vstest.console.exe 和相同的参数。

奇怪的是 vstest.host.exe 的版本是15.7.1,但 dotnet vshost 是15.7.0

如何为 dotnet CLI 界面安装 TfsLogger 扩展?

0 投票
0 回答
53 浏览

unit-testing - 以特定顺序列出 DLL 时单元测试失败,但仅在 32 位编译中

我们在不同的 DLL 中有一些单元测试。这些 DLL 也包含我们的主要代码,因此它们之间确实存在一些依赖关系,尽管我认为测试不应该跨越 DLL 边界。但是,我们在链接器命令行上为一堆 DLL 做了很多 /DELAYLOAD,但不是直接在彼此之间。

如果我们使用命令行加载测试:

它有效,但是,如果我们使用命令行

当它开始执行dll1.dll.

我们得到的错误信息是:

并为该 DLL 中的所有测试重复该消息。

不过,这似乎不是 64 位版本的问题。在 VS IDE 中运行所有测试时也不会发生这种情况。

有谁知道从哪里开始寻找确定为什么顺序对 32 位案例很重要?

0 投票
1 回答
160 浏览

azure-devops - VSTS 测试失败但 vstest.console 通过;出于某种原因,断言在代码之前执行?

好吧,我们拥有的系统有很多依赖项,但我会尝试总结发生的事情而不透露太多细节。

.dll 形式的测试程序集是正在执行的程序集。很多这些测试调用 API。

在有问题的方法中,有 2 个 API 调用需要等待:一个用于将记录写入该外部接口,另一个用于提取所有记录,然后读取该外部接口中的最后一个,均通过 API。该测试只是检查在端到端上下文中写入最后一条记录是否成功,这就是为什么既有写入又有读取的原因。

如果我们在 Visual Studio 中执行测试,一切都会按预期进行。我还通过命令行 vstest.console.exe 手动对其进行了测试,并且总是会出现预期的结果。

但是,当涉及到 VSTS 中的 VS 测试任务时,由于某种原因它失败了。我们一直在试图弄清楚,最终我们达到了从“读取”部分打印列表的地步。原来我们插入的最后一条记录不在我们拉取的数据中,但是如果我们通过不同的方法检查外部接口,我们确认写入过程确实发生了。是什么赋予了?为什么 VSTest 变得像一组过时的记录?

我们还注意到两件事:

1.) 对于通过的测试,没有任何 Console.WriteLine 输出出现在日志中。只有在失败的测试中,他们才会这样做。

2.) 即使我们的 Data.Should.Be 调用在 TestMethod 的最后,日志会在打印出这些行之前报告失败!即便如此,打印应该读取记录列表之后发生,但是当打印发生时,我们仍然缺少我们刚刚编写的记录。

有没有像我们在这里缺少的自下而上的东西?在我看来,VSTS vstest 确实在实际代码之前执行了断言。虽然 TestMethods 的顺序发生了正确的顺序(代码中从上到下编写的第 4 个测试是第 4 个而不是第 4 个到最后执行),我们需要它们以正确的顺序发生,因为后面的一些测试依赖于以前的测试成功。

我们在这里缺少什么吗?我会放一个源代码,但如果是这样的话,我需要先清理很多东西。

0 投票
2 回答
3011 浏览

azure-devops - 为什么 VSTS 构建“Visual Studio 测试”步骤找不到我的 NUnit 测试?

我已经配置了一个 VSTS 构建作业来从 GitHub 构建我的MockingFrameworkExamples .NET 4.7.1 (C#) 解决方案。该解决方案包括五个带有 NUnit v3.10 单元测试的程序集。

Visual Studio Test在构建定义中包含了一个步骤,但是当它运行时,控制台输出显示测试程序集中没有可用的测试:

D:\a\1\s\MSFakesExamples\bin\Release\MSFakesExamples.dll D:\a\1\s\MoqExamples\bin\Release\MoqExamples.dll D:\a\1\s\ 中没有可用的测试NSubstituteExamples\bin\Release\NSubstituteExamples.dll D:\a\1\s\RhinoMocksExamples\bin\Release\RhinoMocksExamples.dll。确保测试发现者和执行者已注册并且平台和框架版本设置正确,然后重试。

我需要更改哪些内容才能让测试运行程序找到并运行我的测试?

我的本地 Visual Studio 2017 实例可以轻松查找和运行测试。该步骤的文档Visual Studio Test说它将运行 NUnit 测试:

也可以运行具有 Visual Studio 测试适配器的测试框架,例如 xUnit、NUnit、Chutzpah 等。

我已经确保程序集实际上正在构建,并且我还利用Typemock SmartRunner构建步骤来运行测试,该测试会找到并执行它们(尽管它因 MS Fakes 程序集而失败,所以我不能只使用它)。

以下是“Visual Studio 测试”步骤的完整构建步骤配置和控制台输出。构建过程配置为在“托管 VS2017”代理上运行。


步骤配置屏幕快照

0 投票
1 回答
473 浏览

coded-ui-tests - 无法运行与桌面交互的测试

我已经下载并安装了一个 windows server 2016 的 vs 测试代理,它是由一个名为Test Agent Configuration Tool. 然后,我按照本指南配置代理以运行与桌面交互的测试 - 我想从我的发布管道中运行 Web 项目的 CodedUI 测试。

这是测试代理配置工具的输出 在此处输入图像描述

当我运行发布管道时,我在测试阶段收到此错误:

调用测试类 Captura.PDV.Web.Test.CodedUI.CodedUITest1 的初始化方法时出错:Microsoft.VisualStudio.TestTools.UITest.Extension.UITestException:要运行与桌面交互的测试,您必须将测试代理设置为运行一个互动的过程。有关详细信息,请参阅“如何:设置测试代理以运行与桌面交互的测试”( https://go.microsoft.com/fwlink/?LinkId=255012 )

如果您将测试作为团队构建的一部分运行,您还必须将构建代理设置为作为交互式过程运行。有关详细信息,请参阅“如何:在构建应用程序后配置和运行计划测试”( https://go.microsoft.com/fwlink/?LinkId=254735 )

这是我的测试任务配置:

在此处输入图像描述

一些笔记和问题:

  • vstest.console.exe我可以成功地从服务器内部手动运行测试调用
  • 我的发布管道在 VSTS 上运行
  • 我没有使用 Microsoft 测试管理器 - 真的有必要吗?
  • 我需要建立一个测试实验室环境吗?
  • 我需要代理的控制器吗?

我只想首先运行我的测试,看看它是如何进行的,然后使用 MTM 进行更高级的测试场景

0 投票
3 回答
5352 浏览

visual-studio - 如何离线安装 vstest.console.exe

我应该vstest.console.exe在文件夹路径中进行离线安装,如下所示:C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow

我尝试过使用离线包,例如vs_testagent.exevs_testcontroller.exe根据以下链接:https ://docs.microsoft.com/en-us/visualstudio/install/create-a-network-installation-of-visual-studio 。但是,这些包不包含vstest.console.exe.

由于空间问题,我也无法完整安装 VS2017。有人有什么建议吗?谢谢。

0 投票
1 回答
700 浏览

windows - 使用 VS2017 (vstest.console.exe) 运行单元测试失败,因为 Windows 操作系统不同

我正在尝试使用 Visual Studio 2017 和 vstest.console.exe 从命令行运行一些单元测试(C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\ TestWindow\vstest.console.exe),执行在Windows 10 操作系统上成功完成,但在Windows Server 2016 操作系统上失败。知道我在这里可能会缺少什么。我猜这是一个没有设置的简单环境变量,我无法确定。非常感谢所有有经验的 VS 用户的任何帮助、指示和支持!谢谢!

我注意到的错误是

0 投票
2 回答
908 浏览

azure-pipelines-release-pipeline - 在 VSTS 部署组上运行编码 UI 测试时没有可用的测试错误

我们已配置发布定义以在 VSTS 部署组上运行编码的 UI 测试。

无法启动测试,错误详情:

未设置 Windows 错误报告 DontShowUI,如果在 UI 测试执行过程中弹出 Windows 错误对话框,则测试将挂起

[debug]Processed: ##vso[task.issue type=warning;]Windows 错误报告 DontShowUI 未设置,如果在 UI 测试执行过程中弹出 windows 错误对话框,则测试将挂起。

c:\test\WorkFlow.dll 中没有可用的测试。确保测试发现者和执行者已注册并且平台和框架版本设置正确,然后重试。

我们如何解决此问题,因为可以使用 vstest.console.exe 手动启动测试

0 投票
2 回答
4060 浏览

selenium - VSTS (Azure DevOps) 中的 Selenium 屏幕截图

根据我的搜索,它应该“正常工作”。是我找到的最好的文章。我已按照这些步骤操作,但在 VSTS(Azure DevOps)界面中没有任何地方表明附有任何屏幕截图。

我在私人托管的构建服务器上运行它,并且我已经验证了以下内容:

  1. 正在创建屏幕截图并保存到磁盘
  2. 生成的 TRX 文件(我正在使用 MSTEST 框架)确实有一个 ResultFile 引用(图像文件的路径)
  3. TRX 文件已上传到 VSTS,我可以下载它并看到 ResultFile 仍在 TRX 中。

我不确定我缺少什么才能使其正常工作。任何帮助,将不胜感激。

0 投票
1 回答
709 浏览

json - Azure Devops cscript 错误 - JSON 输入意外结束

我目前正在为客户设置一个自动化的 UI 测试管道。管道本身正在工作(Selenium 测试正在运行并相应地结束),但在 vstest 任务开始时,版本中显示以下错误:

CScript 错误 - JSON 输入意外结束

日志本身只提供更多信息:

发布本身一直显示为“部分成功”,这严重影响了自动通知,因为测试本身成功且没有问题。到目前为止,我还无法在这种情况下找到解决方案。

有谁知道如何解决这个问题?如果需要,我很乐意提供更多信息。