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

vstest.console.exe - 指定 .runsettings 文件时,orderedtests 无法与 vstest.console.exe 一起使用 - MS 测试

我有以下内容:

  1. .orderedtest 文件,其中包含按顺序排列的测试列表
  2. .runsettings 文件,我在其中指定了一些测试参数

我正在尝试使用以下命令通过命令行执行测试:

vstest.console.exe MyOrderedTests.orderedtest /Settings:MyTestParameters.runsettings /TestCaseFilter:"TestCategory=Production" /Logger:trx

我收到以下警告,并且没有执行任何测试。

警告:MyOrderedTests.orderedtest 中没有可用的测试。确保已安装的测试发现器和执行器、平台和框架版本设置正确,然后重试。

我真的很感激帮助!

我什至尝试通过 VS IDE 运行测试。详细说明: 1. 我有两个测试 2. 我有一个类 Initialize,它从 .runsettings 文件访问 TestRunParameters。3. 我在测试中打印 TestRunParameter。4. 我单独执行测试,甚至一次执行测试,它们执行得很好。

现在我介绍使用 .orderedtest 文件 1 的测试排序。我使用这个 orderedtest 文件执行测试,并在类 Initialize 中获得 NullReferenceException(它尝试从 .runsettings 文件访问 TestRunParameters)

类初始化方法 TestTestProject.UnitTest1.ClassInit 抛出异常。System.NullReferenceException:System.NullReferenceException:对象引用未设置为对象的实例。

下面是我的简单示例测试代码:

公共静态字符串网址;

我在 ClassInit() 中得到 NullReferenceException。

0 投票
0 回答
607 浏览

visual-studio-2015 - 从 VS2015 SP1 的命令行运行通用 NUnit 测试

问题:在为Visual Studio 2015安装SP1后,我无法从命令行执行通用测试。

我的命令行和输出是下一个:
"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" "S:\Tests\MyTests.dll" "/Settings:S:\Tests\MyTest.runsettings" "/ListTests:S:\Tests\MyTests.GenericTest" /InIsolation /Enablecodecoverage /Logger:Console

通用测试执行

带有命令行参数

vstest.console.exe 返回以下输出:

在为 Visual Studio 2015 安装 SP1 之前,一切正常。我得到了测试结果和代码覆盖率。

0 投票
1 回答
2464 浏览

c# - 使用 vstest.console 运行基于命名空间的测试

我一直在使用 MsTest.exe 使用这样的命名空间运行测试:

mstest.exe /testcontainer:"MyDllFile.dll" /test:"NameSpace.Folder.Folder1.*"

这就像一个魅力,但我需要能够在运行时将参数传递给我的测试,所以我找到了 *.runsetttings 文件以及它使用 RunTestParameters 将参数传递给测试并从 TestContext 的属性中获取它们的能力,但是缺点是我必须非常具体地说明我想运行什么测试,并且必须给它一个特定的方法名称或用逗号分隔的名称来执行测试,如下所示:

vstest.console.exe "MyDllFile.dll" /Settings:"my.runsettings" /Tests:"TestMethod1,TestMethod2"

我也尝试了 TestCaseFilter 也没有运气:

vstest.console.exe "vstest.console.exe "MyDllFile.dll" /Settings:"my.runsettings" /TestCaseFilter:"TestCategory=MyTestCategory"

有没有人建议我如何使用 vstest.console.exe 完成我对 mstest.exe 所做的事情?

谢谢!!

0 投票
1 回答
782 浏览

c++ - VSTest.console 按属性过滤原生 C++ 单元测试

我目前遇到以下问题:

我们通过使用 Visual Studio 2015 中包含的本机 microsoft 单元测试框架将单元测试引入我们的本机 c++ 应用程序Microsoft::VisualStudio::CppUnitTestFramework

要在 Visual Studio 中启动单元测试,我们使用如图Test-Explorer1 所示。通过将 a 添加method attribute到 a Test-Method(如图 2 所示),Test-Explorer允许按属性排序和过滤(如图 3 所示)。

在此处输入图像描述

所有这些都没有问题。当我们尝试将这些单元测试实施到我们的持续集成系统 (CI) 中时,我们开始遇到问题。

要从我们使用的控制台启动单元测试,该控制台vstest.console.exe位于:C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe. 官方文档可以在这里找到。

以下屏幕截图显示了使用控制台时测试如何成功: 在此处输入图像描述

添加记录器并将文件输出到 .trx 也很有效。然而,不起作用的是应用过滤器来确定具有特定属性的测试。/TestCaseFilter:根据文档,使用-switch应该可以实现类似的操作。但是,以下屏幕截图显示了由此产生的错误:

在此处输入图像描述

它转换为:“没有与过滤器匹配的测试,因为它包含一个或多个无效属性 (TakesLong)。指定包含有效属性 (TestCategory、Priority、FullyQualifiedName、Name) 的过滤器表达式,然后重试。”

有人知道这个问题或对如何解决这个问题有想法吗?最终目标是能够排除某些测试(需要很长时间/需要硬件加密狗等)。

最好的问候, 洛托索

0 投票
1 回答
1817 浏览

unit-testing - vstest.console.exe 多次运行相同的测试

这是我用来从指定库运行所有 NUnit 测试的命令

vstest.console.exe "PATH_TO_REPOSITORY\Tests\terminalBaseTests\bin\debug\terminalBaseTests.dll" /logger:trx /TestAdapterPath:"PATH_TO_REPOSITORY"

此 dll 包含 27 个测试,但我看到它们出于某种原因启动了 3 次,结果消息显示通过了 81 个测试

0 投票
1 回答
1024 浏览

powershell - 通过 Powershell Invoke-Command 执行 VSTest.Console.exe 测试

所以我试图通过 VSTest.Console.exe 使用 Powershell 的 Invoke-Command 启动测试运行。我对 powershell 很陌生,但脚本如下所示:

60 秒后返回:

我注意到,如果我删除“-Credential $credentials”并在我正在调用该命令的同一台机器上运行它,它就会运行并且我们可以很好地返回测试结果。我可能在这里缺少什么?

0 投票
0 回答
654 浏览

visual-studio-2015 - TeamCity 无法启动 MSTest.exe 或 vstest.console.exe

当我尝试通过 teamcity MyTeamCity 版本为 9.1 并且我使用 Visual Studio 2015 运行单元测试时出现此错误。如果我更改 MSTest.exe 或 vstest.console.exe 的名称,则会引发另一个关于查找文件的错误。另外我认为问题不在于我的项目版本,因为我可以通过命令行使用我的测试 dll 运行 MSTest.exe 和 vstest.console.exe。我已经尝试安装 Visual Studio 2013 测试代理,但是当我尝试运行 MSTest.exe 时遇到了同样的错误。

这如何正常工作:

当我尝试使用 vstest.console.exe 时出现此错误:

另一方面,这可以通过控制台正常工作:

0 投票
1 回答
1137 浏览

jenkins - 为什么 vstest.console.exe 突然给我一个关于隔离模式的警告?

我有一个使用 vstest.console.exe 运行测试的 Jenkins 服务器。突然之间,在没有更改工作区内容的两个构建之间,它报告说它正在隔离模式下运行:

任何运行设置文件肯定没有变化。

也许服务器在运行之间重新启动。是否有任何与 vstest.console.exe 相关的更新导致此问题?某些默认运行设置文件是否有更改?

我还尝试在没有 /Codecoverage 开关的情况下运行测试,并尝试指定一个 .runsettings 文件,其中 DataCollectors 为空并被删除,但我仍然得到可怕的隔离模式。

0 投票
2 回答
1750 浏览

c# - vstset.console.exe 程序集解析失败

我有一个UnitTests.dll,Common.dll被引用(都是用 VS2015 构建的)。

我有以下目录结构:

UnitTests.runsettings内容如下:


我调用测试:

vstest.console.exeC:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe


我收到以下错误:

更多,启用 Fusion Log:

我是否面临某种缓存问题?如何说服vstest.console.exe寻找内部的依赖关系(理论上由元素C:\Bin\指出)?AssemblyResolution


更新:

在连接时作为错误提交给 MSFT (使用重现步骤 - 在底部的详细信息选项卡下)。

程序集分辨率的现有限制以及强制使用DeploymentItem属性根本无法扩展。冗余维护成本(开发人员被迫手动跟踪单元测试运行所需的依赖项)给测试带来了摩擦。由于这种摩擦而出现的任何问题都很难解决。

0 投票
1 回答
668 浏览

automated-tests - Coded UI Automated Test Case through Octopus Tentacle

I am trying to run my Automated test cases deployed on a virtual machine and trying to trigger it with the help of Octopus Deployment tool. I installed test agent and Octopus Tentacle on my machine. Octopus is triggering the DLL's for Automated test cases very well.But while Octopus trying to run the test cases it's giving me an Error as below:-

I setup my password in test agent and set it as intractive process but still i am facing the same issue.

I am triggering my DLL's as below through Octopus.

I tried each and every way i found.Please help me out in this.

Thanks in advance!!