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

在Rider中运行Unity测试时报错The assembly for this test is not found怎么解决?

错误触发原因
  • 测试程序集配置错误:测试代码未放在标记为测试程序集的asmdef(程序集定义文件)对应的目录下,或测试asmdef未引用UnityEngine.TestRunner、UnityEditor.TestRunner必要依赖
  • Rider与Unity项目不同步:Rider缓存了旧的项目结构,与Unity实际生成的程序集配置不匹配
  • 编译失败:测试代码所在的程序集存在编译报错,未成功生成对应程序集文件
  • 版本不兼容:项目使用的Unity Test Framework包版本与Rider内置的Unity测试插件版本不匹配
  • 运行配置不匹配:Rider测试运行的目标平台与Unity当前设置的构建目标平台不一致,对应平台的测试程序集未生成
解决方案

1. 修正测试程序集配置

  • 所有测试代码统一放在单独的测试目录中,在该目录下创建asmdef文件,勾选Test Assembly选项
  • 测试asmdef的依赖项中必须添加UnityEngine.TestRunner和UnityEditor.TestRunner,如果是Editor模式测试,需额外勾选Only reference Editor assemblies
  • 禁止将测试代码放在非测试类型的asmdef目录下,避免程序集未被识别为测试程序集

2. 同步Rider与Unity的项目结构

  • 回到Unity编辑器,点击顶部菜单栏 Assets > Open C# Project 触发完整项目文件生成,自动同步Rider的项目配置
  • 若同步后仍然报错,关闭Rider,删除项目根目录下的所有.sln、.csproj文件,以及Library、Temp目录,重新打开Unity等待编译完成后再启动Rider
  • 确认Rider的Unity插件处于启用状态:打开 File > Settings > Plugins 找到Unity插件,确认开启且版本与当前Unity版本兼容

3. 排查编译与配置错误

  • 优先处理Unity控制台的所有编译报错,确保测试所在的程序集可以正常编译完成
  • 确认测试类添加了[TestFixture]属性、测试方法添加了[Test]/[UnityTest]属性,没有语法或配置错误
  • 清除Rider旧的测试运行配置:点击顶部菜单栏 Run > Edit Configurations,删除已有的测试配置,重新选中测试用例触发运行自动生成新配置

4. 匹配运行平台

  • 确认Unity编辑器当前设置的构建目标平台,与Rider测试运行配置中指定的平台完全一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 02:09:00