问题标签 [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.
.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 扩展?
unit-testing - 以特定顺序列出 DLL 时单元测试失败,但仅在 32 位编译中
我们在不同的 DLL 中有一些单元测试。这些 DLL 也包含我们的主要代码,因此它们之间确实存在一些依赖关系,尽管我认为测试不应该跨越 DLL 边界。但是,我们在链接器命令行上为一堆 DLL 做了很多 /DELAYLOAD,但不是直接在彼此之间。
如果我们使用命令行加载测试:
它有效,但是,如果我们使用命令行
当它开始执行dll1.dll
.
我们得到的错误信息是:
并为该 DLL 中的所有测试重复该消息。
不过,这似乎不是 64 位版本的问题。在 VS IDE 中运行所有测试时也不会发生这种情况。
有谁知道从哪里开始寻找确定为什么顺序对 32 位案例很重要?
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 个到最后执行),我们需要它们以正确的顺序发生,因为后面的一些测试依赖于以前的测试成功。
我们在这里缺少什么吗?我会放一个源代码,但如果是这样的话,我需要先清理很多东西。
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”代理上运行。
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 进行更高级的测试场景
visual-studio - 如何离线安装 vstest.console.exe
我应该vstest.console.exe
在文件夹路径中进行离线安装,如下所示:C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow
我尝试过使用离线包,例如vs_testagent.exe
并vs_testcontroller.exe
根据以下链接:https ://docs.microsoft.com/en-us/visualstudio/install/create-a-network-installation-of-visual-studio 。但是,这些包不包含vstest.console.exe
.
由于空间问题,我也无法完整安装 VS2017。有人有什么建议吗?谢谢。
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 用户的任何帮助、指示和支持!谢谢!
我注意到的错误是
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 手动启动测试
selenium - VSTS (Azure DevOps) 中的 Selenium 屏幕截图
根据我的搜索,它应该“正常工作”。这是我找到的最好的文章。我已按照这些步骤操作,但在 VSTS(Azure DevOps)界面中没有任何地方表明附有任何屏幕截图。
我在私人托管的构建服务器上运行它,并且我已经验证了以下内容:
- 正在创建屏幕截图并保存到磁盘
- 生成的 TRX 文件(我正在使用 MSTEST 框架)确实有一个 ResultFile 引用(图像文件的路径)
- TRX 文件已上传到 VSTS,我可以下载它并看到 ResultFile 仍在 TRX 中。
我不确定我缺少什么才能使其正常工作。任何帮助,将不胜感激。