更新:增加2019年;发现/运行器集成机制与2017年和2015年相同,因此可能出错的关键问题是相同的。


我读过为什么xUnit运行者找不到我的测试,其中包括xUnit永远无法找到你的测试的原因,但我的问题是不同的-我相信我的测试没有微妙的事情发生;(他们在其他环境中工作,这似乎只是我的机器)- Visual Studio 2015[社区版]中的Visual Studio测试运行器根本不显示我的任何测试。我没有做任何令人兴奋的事情;测试的目标是桌面上的xUnit.net v2。

我已经看了输出窗口,并没有看到任何东西在测试下从选项卡显示输出。


当前回答

免责声明:这不是关于visual studio 2015的xunit,而是visual studio 2017的UWP单元测试应用程序(MSTest)。我到这个线程搜索同样的东西,所以也许其他人会做同样的事情:)

我的解决方案是更新MSTest的nuget包。TestAdapter和mste . testframework。当你为UWP创建一个单元测试应用程序时,你似乎不会自动获得最新的版本。

其他回答

在我的例子中,我在解决方案中有2个不同的测试项目。可以找到项目1的测试,但是项目2的测试找不到。我发现,首先卸载测试项目1,然后关闭VS >清理我的临时文件>重新打开解决方案>重建,允许VS发现我的项目2测试。

我假设两个测试项目之间一定有冲突,这是让我在几分钟内启动并运行的最快方法。问题可以稍后解决:)。

对我来说,最常见的罪魁祸首是Visual Studio试图使用与它所测试的库不同的架构运行测试。不幸的是,这似乎在很多地方都可能出错。

在VS 2017中,尝试创建一个运行设置文件,例如在你的测试项目中创建Default.runsettings。如果你的主库是x64,内容应该是:

<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
  <RunConfiguration>
    <TargetPlatform>x64</TargetPlatform>
  </RunConfiguration>
</RunSettings>

然后从Test -> Test Settings ->选择Test Settings file。

然后,在Test -> Test Settings, Default Processor Architecture下,再次选择正确的架构。

确保清洁和构建整个解决方案。您可能需要关闭并重新打开Test Explorer窗口。在Output -> Test窗口中寻找任何其他错误,以获得有关不正确架构类型的更多线索。

供参考,其他测试设置条目可以在这里找到。

为测试项目安装xunit.runner.visualstudio包

我使用的是xUnit 2.2.0。

我的问题是我的解决方案无法找到某些dll和app.config试图解决它们。错误没有显示在Visual Studio的测试输出窗口中。

当我安装xunit.runner.console并试图通过命令行运行测试时,我能够识别出错误。

如何在CLI中运行xunit测试。

两天之后…以上这些方法对我都没用。唯一的“解决方案”是: 进入项目属性->构建选项卡。然后单击窗格右下角的“高级”按钮。将“Debug Info:”修改为“full”,单击“OK”。

以下是截图: