NUnitunit testing在安装了testing适配器的testing资源pipe理器中不显示

我已经安装了适用于VS2012 + 2013的NUnittesting适配器。当我第一次安装适配器testing显示,但他们今天停止出于某种原因。 在构build,重build,清理,重新启动之后,Test Explorer中没有任何内容显示。 为什么会这样呢? 我正在使用VS2013旗舰版。

如果您的testing项目设置为以64位平台为目标,testing将不会显示在NUnittesting适配器中。

如果您使用的是NUnit3 +版本 ,则可以使用新的testing适配器。

转到“工具 – >扩展和更新 – >在线”,然后search“NUnit3testing适配器” ,然后安装。

我的testing程序集是64位的。 从visual studio 2012顶部的菜单栏中,我可以select'Test' – >'Test Settings' – >'Default Processor Architecture' – >'X64'。 在“Build”菜单中的“Rebuild Solution”之后,我可以在testing浏览器中看到所有的testing。 希望这有助于未来的其他人= D。

安装“NUnittesting适配器”

工具 – >扩展和更新 – >在线 – >search“Nunittesting适配器” – >点击结果列表中的“NUnittesting适配器” – >点击下载button

检查NUnit版本不匹配。 目前可用的NUnittesting适配器仅适用于NUnit版本2.6.4及以下版本。 要将NUnit从版本3.x降级到软件包pipe理器控制台> update-package NUnit -version 2.6.4

http://jeremybytes.blogspot.co.ke/2015/11/review-of-unit-testing-makes-me-faster.html

在我的情况下,'NUnit3testing适配器'已被禁用。 要重新启用它,请进入菜单

工具 – >扩展和更新…

在左侧select“已安装” – >“全部”。

在右上angularsearch“nunit”。

如果您安装了“NUnit3testing适配器”,您可以启用/禁用它。

在这里输入图像说明

这个答案看起来很基本,但起初对我来说并不完全明显。 如果您(重新)构build解决scheme,则只会构build在“ Build -> Configuration Manager中configuration为构build的项目

这是我的问题,我必须无意中更改了一个构buildconfiguration设置,或导致我的testing项目不能build立(当他们以前)。 因此,“ Test Explorer窗口正在查看已过期的dll。 我清楚地看到,在做Clean之后,我的大部分testing都消失了,在rebuild之后没有再回来。对bin文件夹的进一步检查表明,这些项目根本没有被build立。

检查是否已经声明了[TestFixureSetUp]和[Test]

在testingclass

样品:

 namespace ClassLibrary1 { public class SimpleCalculator { public Calculator _calculator; [TestFixtureSetUp] public void initialize() { _calculator = new Calculator(); } [Test] public void DivideTest() { int a = 10; int b = 2; int expectedValue = a/b; int actualValue = _calculator.Divide(a, b); Assert.AreEqual(expectedValue, actualValue, "Functionality not working properly!"); } } 

}

转到Nuget包pipe理器并按照下面的步骤下载Nunit适配器。

在这里输入图像说明

  1. 工具
  2. NuGet包pipe理器
  3. 为解决schemepipe理NuGet包
  4. 浏览
  5. NUnitTestAdapter.WithFramework
  6. Ctrl + R,A构build/运行testing

在这里输入图像说明

使用NUnitTestAdapter.WithFramework确保在NUnit和NUnit适配器的版本之间几乎没有不一致(即“它正常工作”)

如果您在http://www.alteridem.net/2017/05/04/test-net-core-nunit-vs2017/上使用;VS 2017和.net核心 ,则应该添加对testing框架NUnit 3.6的引用。 1 ,testing运行器NUnit3TestAdapter 3.8.0-alpha1,并testingSDK Microsoft.NET.Test.Sdk 15.0.0

我解决了使用这个版本:

NUnit – > 3.2.0

NUnit3TestAdapter – > 3.0.8-ctp-8

我认为其他版本兼容性有一些麻烦。

我有一个工作设置(对于NUnit2和NUnit3,取决于解决scheme以及2012和2017之间的多个版本的Visual Studio),并且有一天突然停止工作:在VS的任何解决scheme或版本中都没有检测到任何testing。

在我的情况下,它有助于删除%localappdata%\Temp\VisualStudioTestExplorerExtensions 。 VS重新启动后,一切都像以前一样工作。

在我们的例子中是NUnittesting适配器版本不匹配。 基本上我们的NUnit是3.x和testing适配器是2.x.

完成以下

Visual Studio扩展>为Visual Studio安装单元3.x适配器,并开始工作。

我还发现,当我卸载nunit v3.2.1时,v3.2.1的nunit框架参考仍在我的解决scheme资源pipe理器项目中。 解决scheme资源pipe理器> ProjectName >引用

如果你右键点击它会显示版本。 删除这个然后右键单击参考>添加引用。

search版本2.x版本,然后添加然后重build解决scheme。

这对我有效!

唯一有用的是在NUnit和NUnit3TestAdapter上回到早期的版本。

我遇到了op提到的问题

我的情况是,我递交了一个旧项目,testing实际上是被测系统的一部分。 我假设他们正在使用外部testing跑步者。

这个任务链为我解决了这个问题

  • 创build了一个testing项目,
  • 把testing文件移到了那里
  • 添加引用,以便testing项目可以编译
  • 将Nunit和Nunit适配器NuGet包添加到testing项目中
  • 重新编译

我能够成功地运行Nunittesting。

如果您正在使用TestCaseSource属性,请确保源代码存在并遵守文档 ,否则您的testing将不会被发现。

我不得不卸载然后重新安装xunit.runner.visualstudio nuget包。 在尝试所有上述build议之后我尝试了这个,所以可能是混合的东西。

我有一个类似的问题,其中没有被发现的testing。 我有正确版本的NUnit,NUnit和适配器之间的版本匹配,以及正确标记的testing。 我当时不是以pipe理员身份运行VS 2017 Enterprise。 以pipe理员身份启动VS后,testing出现。

造成这个问题的另一个原因是,如果您从映射的驱动器打开项目 – Visual Studio正确处理这样的项目,但显然Nunit不支持它们。

将项目复制到物理上解决了问题。

我开始了一个testing项目的新解决scheme,并将其与我原来的问题项目进行比较。 原来,由于某种原因,它有一个app.config 。 我从项目中排除了该文件,并在testing浏览器中看到我的testing重新出现。

我也有这个问题,但原因是不同的。 我用F#4.0使用VS2017。

首先,Visual Studio中的控制台没有给出足够的细节,为什么无法findtesting; 它只会无法加载与testing的DLL。 所以在命令行中使用NUnit3console.exe,因为这给你更多的细节。

在我的情况下,这是因为testing适配器正在寻找更新版本的F#Core DLL(4.4.1.0)(F#4.1),而我仍然使用4.4.0.0(F#4.0)。 所以我只是把这个添加到testing项目的app.config中:

  <dependentAssembly> <assemblyIdentity name="FSharp.Core" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-65535.65535.65535.65535" newVersion="4.4.0.0" /> </dependentAssembly> 

即redirect到早期的F#核心。