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

为何Visual Studio 2022中.Net Standard项目的.Net Framework测试无法运行但Core测试正常?

.Net Framework下NUnit测试返回“0 of 0 tests run”的排查方案
  • 检查NUnit及测试适配器版本兼容性
    确保NUnit框架版本和NUnit3TestAdapter版本匹配,针对.Net Framework的测试项目,NUnit 3.x必须搭配对应版本的NUnit3TestAdapter,旧版适配器可能无法识别测试类。在NuGet包管理器中查看并更新到兼容版本,同时确认测试项目目标框架(如.NET Framework 4.7.2及以上)与适配器版本适配。

  • 验证测试类和方法的特性标记
    检查测试类是否标记了[TestFixture]特性,测试方法是否标记了[Test]特性,避免特性误删或引用了其他测试框架的同名特性。示例代码:

    using NUnit.Framework;
    
    [TestFixture]
    public class MyTests
    {
        [Test]
        public void TestMethod()
        {
            // 测试逻辑
        }
    }
    
  • 检查测试项目的输出路径和文件完整性
    编译完成后查看测试项目输出目录(如bin/Debug/net472),确认生成了测试程序集,且程序集包含测试类元数据。可通过ILSpy工具打开程序集,检查是否存在带TestFixture和Test特性的类型,排除程序集生成异常问题。

  • 重置测试运行器配置
    在Visual Studio中执行清理解决方案(Build -> Clean Solution),删除项目的bin和obj目录后重新编译。同时在Test Explorer中点击“Settings”图标,选择“Configure Run Settings -> Reset to Default”,避免自定义配置导致测试识别失败。

  • 确认测试项目的目标框架设置
    确保测试项目的目标框架为正确的.Net Framework版本,且与被测试的.Net Standard项目兼容(如.Net Standard 2.0兼容.Net Framework 4.6.1及以上)。若测试项目目标框架版本过低,会导致无法正确加载被测试项目,进而无法识别测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 19:13:25