You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio 2017下NUnit3测试项目Resharper显示测试无结论且报testadapter.dll不存在

解决VS2017中NUnit 3 .NET Core测试显示"Inconclusive"及Resharper适配器错误的方案

我之前在VS2017里搭建NUnit3的.NET Core单元测试项目时,碰到过和你完全一样的问题:所有测试都显示Inconclusive: Test not run,Resharper还弹出testadapter.dll does not exist on disk的错误提示。折腾了好一阵才搞定,给你整理几个最有效的解决步骤:

1. 务必检查NuGet包的完整依赖

这是最容易踩坑的点,很多人会漏掉关键的测试SDK包:

  • 你的测试项目必须同时安装以下三个NuGet包:
    • NUnit:NUnit核心测试框架
    • NUnit3TestAdapter:适配Visual Studio测试运行器的组件,Resharper也依赖它
    • Microsoft.NET.Test.Sdk:.NET Core测试项目的核心SDK,这个包很容易被忽略,但没有它测试根本跑不起来
  • 操作方法:
    1. 右键测试项目 → 「管理NuGet程序包」
    2. 切换到「已安装」标签,确认三个包都存在且版本兼容(建议选最新稳定版,NUnit3TestAdapter版本尽量和NUnit主版本匹配)
    3. 缺少的话直接搜索安装,版本不兼容的话先卸载再重新安装对应版本

2. 修复Resharper的缓存和适配器配置

Resharper的报错大概率是缓存混乱或者没正确识别适配器路径:

  • 清理Resharper缓存:
    1. 点击顶部菜单栏的「Resharper」→ 「选项」→ 「环境」→ 「常规」→ 「清除缓存」
    2. 重启Visual Studio后再尝试运行测试
  • 手动指定适配器路径(如果清理缓存没用的话):
    1. 打开Resharper → 「选项」→ 「工具」→ 「单元测试」→ 「测试运行程序」
    2. 找到NUnit的设置项,确保「启用NUnit支持」已勾选,然后点击「浏览」手动指向你项目的packages目录下,NUnit3TestAdapter文件夹里的testadapter.dll文件

3. 确认VS2017的测试组件已安装

有时候VS默认安装没包含.NET Core测试相关的组件:

  1. 打开Visual Studio安装程序 → 点击「修改」
  2. 在「工作负载」里勾选「.NET Core跨平台开发」,在「单个组件」里勾选「测试工具核心功能」
  3. 点击「修改」完成安装后重启VS

4. 清理重建项目,清除冗余缓存

项目的bin/obj文件夹或者生成缓存也可能导致问题:

  • 右键解决方案 → 「清理解决方案」
  • 右键解决方案 → 「生成解决方案」
  • 手动删除测试项目下的bin和obj文件夹,然后重新生成整个解决方案

5. 检查测试项目的目标框架

确保测试项目的目标.NET Core版本和你的主项目兼容:

  1. 右键测试项目 → 「属性」
  2. 切换到「应用程序」标签,确认「目标框架」和主项目的版本一致(比如主项目是.NET Core 2.2,测试项目也选2.2,高版本兼容低版本,但尽量统一避免兼容性问题)

内容的提问来源于stack exchange,提问作者Andrew Radford

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 07:51:57