首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xunit单元测试将不运行

Xunit单元测试将不运行
EN

Stack Overflow用户
提问于 2017-12-19 20:34:34
回答 9查看 44K关注 0票数 40

我在这个问题上完全被困住了。所以我的团队在服务测试项目中有一个单元测试项目。但是,在测试资源管理器窗格中发现测试时,当我尝试运行测试时,会得到以下错误:

找到了具有相同uri‘executor://xunit/VsTestRunner2 2’的多个测试适配器。忽略适配器'Xunit.Runner.VisualStudio.TestAdapter.VsTestRunner'.请卸载冲突的适配器以避免此警告‘ “xUnit.net 00:00:00.0251250跳过:(找不到依赖程序集'Microsoft.Extensions.DependencyModel,Version=1.1.0')‘ “C:.中没有可用的测试,请确保注册了测试发现者和执行器,并确保平台和框架版本设置是合适的,然后再试一次。”

背景信息:

  • Xunit 2.2.0
  • 15.5.2
  • Windows 10 1709构建: 16299.125

我的测试项目project.json:

代码语言:javascript
复制
{
   "version": "1.0.0-*",
   "testRunner": "xunit",
    "dependencies": {
       "dotnet-test-xunit": "2.2.0-preview2-build1029",
       "Microsoft.AspNetCore.Mvc.ViewFeatures": "1.1.3",
       "Microsoft.DiaSymReader": "1.0.8",
       "Microsoft.DiaSymReader.Native": "1.4.1",
       "Microsoft.Extensions.Logging.Abstractions": "1.1.2",
       "Microsoft.Extensions.Testing.Abstractions": "1.0.0-preview2-003121",
       "Newtonsoft.Json": "9.0.1",
       "WebServices": "1.0.0-*",
       "xunit": "2.2.0",
       "xunit.abstractions": "2.0.1",
       "xunit.assert": "2.2.0",
       "xunit.core": "2.2.0",
       "xunit.extensibility.core": "2.2.0",
       "xunit.extensibility.execution": "2.2.0",
       "xunit.runner.utility": "2.2.0"
   },
   "frameworks": {
    "net461": {
        "dependencies": {
            "Microsoft.NETCore.Platforms": "1.1.0"
        }
    }
}

奇怪的是它适用于我的团队成员。但不是我。我们环境中的不同之处是: Windows和Visual的最新更新,而它们落后于一两个更新。

有人知道解决办法吗?

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2018-01-19 03:11:55

我也遇到了同样的问题,我通过将Visual 2017从15.5.2更新到15.5.4并从以下位置更新我的测试项目引用来修复它:

代码语言:javascript
复制
<ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0-preview-20170628-02" />
    <PackageReference Include="xunit" Version="2.2.0" />
    <PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
</ItemGroup>

至:

代码语言:javascript
复制
<ItemGroup>
    <PackageReference Include="xunit" Version="2.3.1" />
    <PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
</ItemGroup>

并重新启动Visual (显然是VS缓存并使用以前的版本,即使在您进行了更新之后)。

不确定这三件事中是否有一件是固定的,还是三者的组合。

票数 41
EN

Stack Overflow用户

发布于 2018-03-28 04:27:18

安装或更新"xunit.runner.visualstudio“软件包对我起了作用。在此之前,它没有使用框架462。

票数 52
EN

Stack Overflow用户

发布于 2018-01-25 14:33:58

我遇到了同样的问题,但我已经安装了Visual 2017 15.5.4。为了使其正常工作,我更新了所有xunit相关引用,现在我的.csproj相关引用如下所示:

代码语言:javascript
复制
<ItemGroup>
   <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0" />
   <PackageReference Include="xunit" Version="2.3.1" />
   <PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
</ItemGroup>

不太确定什么不起作用,但我的建议是确保这些引用在csproj中,并具有这些最小版本。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47894776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档