问题标签 [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 投票
1 回答
763 浏览

macos - vstest.console.exe 在 macosx 上是否可用

我正在使用 vstest.console.exe 运行我的单元测试。现在我将我的 jenkins 移动到 MacOS 机器上(因为我必须为 OSx 编译一个 xamarin 项目)。

对 xamarin 表单使用“dotnet test”(还没有?)(请参见此处)。

vstest.console.exe 在 OSX 上是否也可用(安装了 Visual Studio for Mac)?

我在任何地方都找不到它...

0 投票
1 回答
1313 浏览

.net - Bamboo VSTest Runner 失败并显示“在目录中找不到测试结果报告”

VSTest 本身似乎成功并在预期目录中输出了 trx 文件,但 Bamboo 未能找到并解析结果。runner配置如下

VSTest 运行器配置

构建日志显示 VSTest 成功,我可以在正确的位置找到并打开 .trx 文件,但 Bamboo 表示未找到测试用例。

这是使用 Bamboo 6.3.1 和全新安装的 Visual Studio 2017 Enterprise。

0 投票
1 回答
1441 浏览

c# - vstest.console.exe 仅为 Moq.dll 生成封面

我正在尝试使用vstest.console.exe生成代码覆盖率报告。我也在使用.runsettings文件并将其作为参数传递。

无论我想做什么,它都会为 moq.dll 生成一个覆盖率报告。

我在下面分享我正在运行的命令参数的全文以及 .runsettings 文件的内容。任何想法,我在哪里做错了什么?

命令:

vstest.console.exe "C:\Xyz.Tests\bin\Debug\netcoreapp2.0\Xyz.Tests.dll" /InIsolation /EnableCodeCoverage /settings:CodeCoverage.runsettings

CodeCoverage.runsettings文件内容:

生成的代码覆盖率报告的图像: 在此处输入图像描述

0 投票
1 回答
255 浏览

mstest - VS Web 测试 (MSTest) - 从 vstest.console 运行时如何设置“每个数据源行运行一次”

我在 Visual Studio 中使用“每个数据源行运行一次”设置:

Web 测试运行设置

正如对话框所说,这没有保存。

如何提供设置vstest.console.exe


编辑:我认为测试设置编辑器中曾经有一个Web 测试选项卡,我可以在其中进行设置。MSDN 文档,下面的屏幕截图来自John Peters 的这篇文章

我的(VS 2017 Enterprise)测试设置编辑器没有显示所有这些选项卡。只有General, Deployment,Setup and Cleanup ScriptsAdditional Settings.

在此处输入图像描述

0 投票
1 回答
472 浏览

c# - 未生成 AppDomain.DynamicDirectory

我正在使用以下代码创建 AppDomain

但是 _Domain.DynamicDirectory 属性不存在。https://msdn.microsoft.com/en-us/library/system.appdomain.dynamicdirectory(v=vs.110).aspx明确表示使用了 AppDomainSetup.DynamicBase。

在 vstest.console.exe 中执行更改应用程序域行为的原因可能是什么。有解决办法吗。

0 投票
2 回答
437 浏览

c# - vstest.console.exe可以在没有安全证书的情况下运行appx吗

我正在尝试在命令行上使用 MSBuild 在我的构建代理上设置自动构建。我目前关注的两个项目是 UWP 及其相关的单元测试项目。

要构建,我必须使用这个:

否则,我收到此错误:

但是,这不会生成 .cer 安全证书。所以当我运行 vstest.console.exe 时,我得到了这个错误:

问题:可以让 vstest.console.exe 在没有 .cer 的情况下运行,如果不能,我怎样才能让所有东西都在构建并且我的测试也运行?我不希望开发人员使用临时 .pfx 文件。

0 投票
2 回答
19292 浏览

visual-studio - VSTest:MSTest V2 适配器不支持将 ForcedLegacyMode 设置为 true 的 testsettings 文件或运行设置。没有可用的测试

如何使用.testsettings文件运行单元测试vstest.console.exe?我创建了空的 Visual Studio 解决方案,创建了空的单元测试项目,将Local.testsettings文件添加为解决方案项。

在此处输入图像描述

当我使用以下命令运行测试时,一切正常:

下面的命令给出了一个错误。

警告:MSTest V2 适配器不支持将 ForcedLegacyMode 设置为 true 的 testsettings 文件或 runsettings。[路径]\UnitTestProject1.dll 中没有可用的测试。确保测试发现者和执行者已注册并且平台和框架版本设置正确,然后重试。

此外,可以使用 /TestAdapterPath 命令指定测试适配器的路径。示例 /TestAdapterPath:。

所以我添加了/TestAdapterPath:[project path/bin/Debug]参数。with 发现者和执行Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll者位于此处。但是没有关于指定测试适配器的最后一句话,我得到了同样的错误。

我想知道是否有人可以解决这个问题。

0 投票
6 回答
18525 浏览

vstest - TFS 测试与框架设置不匹配

我正在尝试将解决方案从 TFS 2012 移动到 TFS 2018 SP2RC2,但我无法让单元测试正确运行。所有项目都重新定位到 4.7.1 并构建为 x86 平台。我们有一个 testsettings 文件,它只提供部署项。我正在使用新的 VSTest 平台安装程序任务(由 MS 指示)和 VS 测试任务。在测试运行开始时,我收到以下消息:

因此,所有测试都被跳过,因为它们的目标是 4.7.1。这个4.5设置来自哪里?我无法在任何地方找到它,也无法弄清楚如何更改它。

0 投票
1 回答
447 浏览

c# - vstest with TFS build: System.Runtime.Remoting.RemotingException: 'Object '/XXX.rem' has been disconnected or not exist at server

我有一个x64 .NET 4.5.2 C#带有单元测试的解决方案。

单元测试在我的开发机器上成功运行,但是在使用以下命令在 TFS 构建上运行时:

我收到以下日志:

Microsoft (R) 测试执行命令行工具版本 14.0.25420.1 版权所有 (c) Microsoft Corporation。版权所有。开始测试执行,请稍候...

挂机 5 分钟,然后

错误:调用执行程序“executor://mstestadapter/v2”时发生异常:对象“/5243803c_c5e9_4f2c_bd7d_05acf3030dfa/veajeovlsl8zvqsxjaq47f1d_25.rem”已断开连接或在服务器上不存在。

这总是在构建服务器上重现,我设法用调试器一次重现它并得到以下堆栈跟踪:

我尝试同时使用Visual Studio 2015and 2017,得到了相同的结果。

我的解决方案是使用包MSTest.TestAdapterMSTest.TestFramework两个版本 1.1.11

根据此线程:标记为已通过的长时间运行单元测试失败 TFS 构建 - 对象“xxx.rem”已断开连接或在服务器上不存在。**

我尝试升级MSTest软件包版本,但永远无法使它们在更高版本的本地运行。

此外,我之前使用 1.1.11 包成功地对其他项目进行了单元测试。

0 投票
0 回答
607 浏览

c# - 如何使用 .runsettings 部署其他测试文件?

我从 TPv1 迁移到 TPv2(测试平台 v2)。我使用vstest.console.exe. 我使用.testsettings文件来部署我的测试所需的其他文件(通常它们XML带有一些数据)。我的解决方案的骨架如下:

在此处输入图像描述

TestSettings1.testsettings的如下:

在此处输入图像描述

我使用这个命令来运行我的测试:

.testsettings用于部署项目非常方便。

所以,由于某些原因我不能再使用.testsettings了,但我可以使用.runsettingsDeploymentItem属性。

.testsettings不必为每个项目添加一段代码来部署我的文件。我只是使用/Settings标志,vstest.console.exe这个部署适用于我想要的项目。我应该在DeploymentItem每个单元测试项目中使用一些代码。这些代码部分是相同的,我不喜欢它。我不想为每个项目添加相同的代码。

问题:在不编写重复代码的情况下,为每个项目应用相同部署行为的最佳方式是什么。

目前我使用build-event并将xcopy它们复制到每个bin/Debug文件夹的DeploymentItems文件夹(我在 build-event 中创建它) 。之后,我添加了部署此文件夹中所有文件的内容。它看起来不太好,因为我有 3 个相同批次的构建事件。如果我添加新数据,我将需要再次为每个数据添加新的 build- event 指令。我用的时候没有这个问题。mkdir[DeploymentItem("DeploymentItems")].csproj.xml.csproj.testsettings