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

编程运行NUnit测试出现无法找到nunit.core程序集引用报错如何解决

问题原因及解决方案

核心原因

这个报错是程序加载时无法找到对应版本的nunit.core依赖程序集导致的,常见触发原因有三个:

  • 主控制台项目引用nunit.core时未开启复制本地配置,编译后主程序输出目录没有对应dll文件
  • 你本地引用的nunit.core版本与报错要求的2.6.4.14350版本不匹配,或是误装了结构完全不同的NUnit3.x版本
  • 你动态编译生成的test.dll输出在桌面目录,桌面路径下没有配套的NUnit依赖文件,加载测试程序集时找不到依赖

修复步骤

  1. 首先确认依赖版本:你当前使用的SimpleTestRunner属于NUnit2.x的运行器,NUnit3.x已经废弃了nunit.core相关组件,如果你安装的是NUnit3.x请先卸载,通过NuGet包管理器控制台执行命令安装匹配版本:
    Install-Package NUnit -Version 2.6.4
  2. 配置引用复制属性:在解决方案资源管理器的引用列表中找到nunit.core、nunit.core.interfaces,右键点击选择「属性」,将复制本地选项设置为True,编译后所有依赖会自动复制到主程序的运行目录。
  3. 调整输出路径或同步依赖:你可以将代码中compilerParams.OutputAssembly的输出路径改为主程序的bin/Debug或bin/Release运行目录,或是把主程序输出目录里所有NUnit相关的dll全部复制到test.dll输出的桌面目录,确保加载测试程序集时能找到对应依赖。
  4. 可选:如果仍存在版本不匹配问题,在主项目的App.config文件中添加程序集绑定重定向配置,强制所有nunit.core引用使用指定版本:
<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="nunit.core" publicKeyToken="96d09a1eb7f44a77" culture="neutral" />
      <bindingRedirect oldVersion="0.0.0.0-2.6.4.14350" newVersion="2.6.4.14350" />
    </dependentAssembly>
  </assemblyBinding>
</runtime>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 02:54:02