gpt4 book ai didi

c# - MSTest 单元测试在 VS 代码 : VS namespace doesn't exist? 中不起作用

转载 作者:行者123 更新时间:2023-12-05 02:45:15 25 4
gpt4 key购买 nike

我正在尝试在 Visual Studio Code 中编写一个 .NET Core 3.1 控制台应用程序,当我尝试运行我为应用程序的一部分所做的 MSTest 单元测试时,出现以下错误:错误 CS0234:命名空间“Microsoft”中不存在类型或命名空间名称“VisualStudio”(是否缺少程序集引用?)

我按照 this Microsoft tutorial 中的说明进行操作.

查看an older question here提示我可能无法在 VS Code 中运行那种单元测试:

The namespace Microsoft.VisualStudio... is defined in assemblies which are not part of the standard Installation of Visual Studio. It is available only if you installed the Visual Studio SDK.

我尝试在两台不同的计算机(Windows 机器和 Linux 机器)上运行测试,并且尝试将项目更改为 .NET 5 而不是 .NET Core 3.1。两者都不起作用,如果不会破坏任何东西,我想将它改回 .NET Core 3.1。

我有两个 csprog 文件。项目名称已被编辑。

主项目的csprog文件:

<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace>redacted</RootNamespace>
</PropertyGroup>

</Project>

以及测试项目的csprog文件:

<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>

<IsPackable>false</IsPackable>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.5.0" />
<PackageReference Include="MSTest.TestAdapter" Version="2.1.0" />
<PackageReference Include="MSTest.TestFramework" Version="2.1.0" />
<PackageReference Include="coverlet.collector" Version="1.2.0" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\redacted.csproj" />
</ItemGroup>

</Project>

是否可以在不安装 Visual Studio 本身的情况下安装 Visual Studio SDK?我尽可能地尝试使用 VS Code,而不是完整的 VS。如果是这样,我该怎么做,因为 Microsoft 站点没有帮助?如果没有,是否有另一种编写单元测试的方法?我已经接受重写单元测试可能是不可避免的,但理想情况下我希望不必重写它们。

最佳答案

终于明白了。我需要创建一个解决方案文件,将测试项目添加到解决方案中,然后在 VS Code 中打开解决方案(不仅仅是文件夹)。最后一部分是我遇到了一些障碍。

关于c# - MSTest 单元测试在 VS 代码 : VS namespace doesn't exist? 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66037633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com