2016-05-14 10 views
8

私はちょうどyeomanジェネレータを使用して、新しいasp.net 5プロジェクトを作成しました。これまでにすべてうまくいきましたが、私はVisual Studio Codeでプロジェクトを編集してビルドすることができます。Visual Studioコードで単体テストを使用してasp.net 5 dnxプロジェクトを構成する方法は?

ユニットテストを追加したいのですが、VSコードでどのように構造化されていますか? Visual Studioでは、普通の方法は、xUnit.net documentationで説明されているテストを含む新しいプロジェクトを追加することです。しかし、VSコードでは、プロジェクトを追加することはできません。どこにテストを置くのですか? Yeomanジェネレータも新しいプロジェクトを作成しますが、それはVSコードの2番目のインスタンスを実行し、2番目のgit repoまたは奇妙なフォルダ構造を持つ必要があることを意味します。

+0

これまではVisual Studioに切り替えることで問題を解決しましたが、デフォルトのジェネレータがこれをサポートしていないのは不思議です。 – looper

答えて

7

Visual Studioコードの1つのインスタンス内に複数のプロジェクトを作成することはできません。 ASP.NETコアプロジェクトの既定のプロジェクト構造は、実際には複数のフォルダを使用します。 GitHubのすべてのASP.NET Coreプロジェクトでその構造が実際に動作していることがわかります。 MVC one

─ 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との完全な独立したプロジェクトとフォルダです。

残念ながら、YeomanのVSコードとの統合では、プロジェクトをサブフォルダに足場を置くことができないようです。だからあなたがする必要があるのはsrctestフォルダを自分で作成し、あなたのプロジェクトを個別に足場にして適切なフォルダに移動さ​​せることです。たとえば、名前がExampleの「空のWebアプリケーション」を作成し、Example.Testという名前の「ユニットテストプロジェクト(xUnit.net)」を作成しました。次に、Examplesrcフォルダにドラッグし、Example.Testtestにドラッグするだけでした。

プロジェクトのルート、VSコードで開くフォルダ、リポジトリを初期化する場所は、srctestのフォルダが存在するディレクトリです。たとえば、私のプロジェクト(セットアップ)Gitのとvscode特定のconfigsで、今のようになります。

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

この構造の利点は、それはまた、あなたが新しいソリューションを作成するときにVisual Studioがどうなるのかと互換性のあることを、実際にあります。

+0

私のaspnetコアアプリケーションをGitHub経由でAzureにCIでデプロイする場合、どのようにフォルダを整理すればよいですか? srcとtestフォルダが1つのリポジトリにある場合、Azureはどのフォルダからdeployスクリプトを実行するのか理解していますか? –

+0

@DmitryGorshkov同じ問題があります。Azureに展開のためにsrcのプロジェクトを選択させる方法。何か案が? –

関連する問題