【问题标题】:.NET Core MSTests fail because of "Illegal characters in path".NET Core MSTests 因“路径中的非法字符”而失败
【发布时间】:2018-04-17 05:05:57
【问题描述】:

当我单击运行所有 .NET Core 测试(MSTest 版本)时,它们不会运行。它未能在左下角显示“检测到意外错误。请检查测试输出窗格以获取详细信息”。

我检查了输出,这是错误:

[4/8/2018 19:29:53 信息] ------ 运行测试开始 ------ [4/8/2018 19:29:53 错误] System.ArgumentException:路径中有非法字符。

我创建了一个名为“Thing.Tests”的空白项目。路径是

C:\Users\james\OneDrive\Documents\visual studio 2017\Projects\Thing.Tests\Thing.Tests\Thing.Tests.csproj

问题是什么??

【问题讨论】:

  • 路径可能太长。尝试在 c:/code/ 之类的地方创建项目
  • 这并没有什么不同:(
  • 路径中没有空格怎么办?在黑暗中拍摄...
  • 这也没什么区别:"C:\test\UnitTestProject1\UnitTestProject1\UnitTestProject1.csproj"

标签: unit-testing .net-core mstest


【解决方案1】:

检查您的系统路径:

echo %PATH%

我最终得到了一个带有双引号的条目(Visual Studio 不太喜欢它)。一旦我删除了那个条目,它就像一个魅力。

你可以通过环境变量编辑它

Control Panel > System > Advanced System Settings > Environment Variables

【讨论】:

  • 另请注意,在您执行此操作后,我需要关闭并重新打开命令提示符和 Visual Studio。我将 " 和 ' 都作为坏字符,删除了两者,重新打开并且很好。但是 VS 中的真正愚蠢的错误!哈哈
  • 我从我的 PATH 中删除了包围的双引号。 "C:\Program 文件 (x86)\Java\jre7\bin";到 C:\Program Files (x86)\Java\jre7\bin.
  • 在我的情况下,我的 PATH 变量中没有 C:\Program Files (x86)\Java\jre7\bin...我添加了它并解决了我的问题
  • 在我的例子中,一个随机的应用程序决定它应该用双引号放入一个路径。请注意,在编辑路径时引号不会显示,因此您必须更改单个路径条目,保存,然后将其更改回不带引号。为什么这个砖VS? ?
  • 您必须重新启动计算机才能更改 PATH var。使用上面建议的命令进行测试,看看它是否已被应用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多