Visual Studio 不会将 Unity 项目的二进制文件放入输出文件夹

Пав*_*вле 2 c# unit-testing build unity-game-engine visual-studio

我正在研究包含默认 Unity 项目 ( Assembly-CSharp )的解决方案。

我在解决方案中添加了一个测试项目,并引用了Assembly-CSharp。根据 IntelliSense,测试项目确实看到了来自Assembly-CSharp的类型,但是当我尝试构建解决方案时,我收到以下错误

Metadata file 'MyProjectFolder\Temp\bin\Debug\Assembly-CSharp.dll' could not be found.

因此,我无法在我的 Unity 项目上运行单元测试

实际上,当我构建 Unity 项目时,.\Temp\bin\Debug即使 VS 认为构建成功,该文件夹仍然是空的。

Пав*_*вле 5

该问题是由Disable the full build of projectsUnity Tools 扩展中的新设置引起的。它可以防止创建二进制文件,这会加快实际上没有使用它们的情况,例如启动调试器时。

在此处输入图片说明

在 Visual Studio 设置中关闭此设置可解决此问题。现在所有构建产品都放在./Temp/bin/Debug文件夹中,我可以运行单元测试。

功能要求

我向 VS 提出了一个功能请求,以便可以在解决方案级别定义此设置,以便您可以拥有 1 个速度解决方案和 1 个单元测试解决方案。我希望它会得到足够的投票:https : //developercommunity.visualstudio.com/idea/798543/make-it-possible-to-manipulate-the-disable-the-ful.html