当前位置: 首页 > 知识库问答 >
问题:

Xunit.runner.visualstudio 是否不适用于 Visual Studio

傅旺
2023-03-14

我已经完成了如下的 nuget 安装:

Install-Package xunit.runner.visualstudio -Version 2.2.0

关于我的测试项目。

我有一个类似的测试:

public class When_Doing_Stuff_I_Want_To_Test
{

    [Fact]
    public void Can_Do_Stuff()
    {
        var result = DoStuff();

        result.ShouldNotBeNull();
        result.Success.ShouldBeTrue();
    }
}

我能做些什么来解决这个问题并查看我的测试?

补遗

我在4.6.1下工作,所以还不是核心。

关于同一个主题但没有帮助的问题:

  • 为什么xunit运行程序找不到我的测试
  • 此响应
  • 和这个类似的
  • xunit.runner。visualstudio无法在Visual Studio 2013更新4上工作

所以到处都有,但都没用...

更新

我也无法让NUnit工作,它也不会出现在测试资源管理器中。

更新2

我删除了我的项目并重新创建了如下项目:

然后我复制了我的原始代码并添加了所有必要的引用,没有任何区别。

共有2个答案

家志学
2023-03-14

转到菜单测试-

璩俊雅
2023-03-14

在互联网上搜索之后,似乎目标是网络标准。库不能用于测试项目。。。

这些是我获得信息的链接:

  • 在可视化工作室 2017 中未发现单元测试
  • 视觉工作室 2017 RC 未检测到裸核测试
  • 运行 .NET 标准 1.6 库中包含的 xunit 测试

可以做的是让您要测试的项目使用NETStandard.Library并让您的测试项目目标Microsoft.NETCore.App.然后您的测试项目可以引用要测试的项目,测试将运行。

您的测试项目的. csproj将如下所示(版本可能会更改):

<PropertyGroup>    
  <TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>

<ItemGroup>
  <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.0.0" />
  <PackageReference Include="xunit" Version="2.2.0" />
  <PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
</ItemGroup>

要测试的项目是这样的:

<PropertyGroup>
  <TargetFramework>netstandard1.4</TargetFramework>
</PropertyGroup>

<罢工> 最近我不得不逃跑 在解决方案上进行dotnet还原以运行测试,因此您可能需要执行相同的操作。 结果。NET Core SDK 1.0.1而不是1.0.4成为目标(我没有安装x86版本)。

 类似资料:
  • 问题内容: 我正在尝试使用选择器将图像放置在另一个图像上,但是我发现将图像放置在一个元素之前(仅在其他某个元素之前)根本不起作用。具体来说,我的风格是: 我发现这很好用: 但这不是: 我可以使用或元素代替它,浏览器可以将我的图像正确地覆盖在该元素中的图像上,但是如果我将overlay类应用于自身,则无法正常工作。 我希望这项工作能够正常进行,因为这会让我感到不舒服,但更重要的是,我有大约100个我

  • 我正在将tomcat服务器从tomcat7升级到Tomcat8。但Struts1.1似乎不能在Tomcat8上工作。有人知道Tomcat8不支持Struts1.1吗。 下面是堆栈跟踪

  • 问题内容: 特别是,我正在编写Django RESTful API来支持iOS应用程序,每当编写用于处理POST请求的方法时,我都会不断遇到Dj​​ango的CSRF保护。 我的理解是,iOS管理的cookie不会被应用程序共享,这意味着我的会话cookie是安全的,并且没有其他应用程序可以使用它们。这是真的?如果是这样,我可以将我所有的API函数都标记为CSRF免除吗? 问题答案: 那不是CSR

  • 我已经使用GCM创建了一个应用程序,它可以在Android平台4.1和4.03上正常运行(即获取RegId并在我的服务器中注册自己,甚至可以接收GCM),但是当我启动Android 2.3(API 10)模拟器时,该应用程序会被安装但从未注册,即从未获取RegId。当我第一次启动(安装)应用程序时,它会收到一条GCM消息,我不知道该消息来自何处,但我可以看到该设备未在我的服务器中注册。我还使用了H

  • 问题内容: 我想在android上现有的sqlite数据库上执行以下操作,该数据库的构建方式类似于该列:id — rule — path —someotherdata 现在,规则例如包含文件名的一部分(或者只是一些琐碎的东西,例如“ mypicture”,也可能是文件类型,例如“ jpg”)。现在我想做的是,我想编写一个查询,该查询将获取我的所有规则,其中包含输入字符串的一部分。我尝试了以下示例:

  • 我收到一个编译错误: 然而,当我移除mapstruct注释处理器时,它可以很好地编译。 所以我认为mapstruct是在类生成之前扫描它们?对此有什么解决方案吗?