9

我刚刚使用 yeoman 生成器创建了一个新的 asp.net 5 项目。到目前为止一切正常,我可以使用 Visual Studio Code 编辑和构建项目。

现在我想添加单元测试,但是它们在 VS Code 中是如何构建的?在 Visual Studio 中,通常的方法是添加一个包含测试的新项目,如xUnit.net 文档中所述。但是,在 VS Code 中,我不能只添加一个项目,对吗?我把测试放在哪里?yeoman 生成器也会创建一个新项目,但这意味着我必须运行第二个 VS Code 实例以及第二个 git repo 或奇怪的文件夹结构。

4

1 回答 1

9

没有什么可以阻止您在 Visual Studio Code 的单个实例中拥有多个项目。ASP.NET Core 项目的默认项目结构实际上使用了多个文件夹。您可以在 GitHub 上的所有 ASP.NET Core 项目中看到这种结构,例如MVC项目:

─ src
   ├─ Microsoft.AspNetCore.Mvc
   ├─ Microsoft.AspNetCore.Mvc.Abstractions
   ├─ Microsoft.AspNetCore.Mvc.Core
   └─ Microsoft.AspNetCore.Mvc.Razor
─ test
   ├─ Microsoft.AspNetCore.Mvc.Abstractions.Test
   ├─ Microsoft.AspNetCore.Mvc.Core.Test
   ├─ Microsoft.AspNetCore.Mvc.Razor.Test
   └─ Microsoft.AspNetCore.Mvc.Test

其中每一个都是一个包含完全独立项目的文件夹,它自己project.json定义项目并设置依赖项。

不幸的是,VS Code 中的 Yeoman 集成似乎不允许将项目搭建到子文件夹中。所以你需要做的是自己创建srcandtest文件夹,单独搭建你的项目并将它们移动到适当的文件夹中。例如,我开始创建一个名为 的“空 Web 应用程序” Example,然后创建一个名为 的“单元测试项目 (xUnit.net)” Example.Test。然后,我只是拖到Example文件src夹中,然后Example.Test进入test.

因此,项目的根目录,以及您使用 VS Code 打开的文件夹以及初始化存储库的位置,是这些srctest文件夹所在的目录。例如,我的项目(使用 Git 和 vscode 特定配置进行设置) 现在看起来像这样:

─ .git
─ .vscode
─ src
   └─ Example
─ test
   └─ Example.Test
─ global.json
─ README.md

这种结构的好处实际上是它还与 Visual Studio 在您创建新解决方案时所做的兼容。

于 2016-05-18T20:12:12.917 回答