Visual Studio 2015 Professional VB.NET 単体テストの作成

Visual Studio 2015 Professional VB.NET(以下、VB)にて、MSTestを利用した単体テストの自動化を試しています。ユニットテストフレームワークはたくさんありますが、VisualStudio標準の「MSTest」から使ってみようというところです。

手順を確認した際に、VBにおいてコードエディタ上のコンテキストメニューから「単体テストの作成」が行えない現象が発生する場合がありました(※VB単体テストプロジェクトを手動で作成する方法や、C# の場合には問題なく行えました)。 現時点で、他の端末での動作等は未確認のため、端末依存の問題であるかどうか不明で、また、設定が不足している、VisualStudioの不具合とも断定できない状況ではあります。
ただ、VBにおいても、コードエディタ上で右クリックから単体テストの作成を行えた方が便利と思い、コンテキストメニューから「単体テストの作成」が行えない現象を回避する方法を見つけましたので、記載しておきます。

■前提

前提としては、コードエディタ上のコンテキストメニューに「単体テストの作成」を表示する設定が行われていることです。まずは、「単体テストの作成」をコンテキストメニューに表示する設定を行う必要があります。

以下のサイトはVisualStudio2012の手順にはなりますが、参考になりました。
VisualStudio2015でも同様の手順で設定が行えます。
すがろぐ – visualization

■手順(例)
VBでコードエディタ上のコンテキストメニューから「単体テストの作成」を行うための操作
(1) メニュー[ファイル]から[新規作成]で[プロジェクト]を選択します。


(2) VBのクラスライブラリを選択します。OKボタンを押下します。


(3) (VB)メソッドを追加し、メソッド名を右クリックするとメニューに[単体テストの作成]は表示されているのですが、選択できない状態となっています。


(4) ソリューションエクスプローラーで、ソリューションを右クリック→[追加]→[新しいプロジェクト]を選択します。


(5) C#のクラスライブラリを選択します。OKボタンを押下します。


(6) ソリューションに「VB」と「C#」のプロジェクトがある状態になります。


(7) (C#) クラスを右クリックし、[単体テストの作成]を選択します。


(8) (C#)以下のエラー画面が表示されます。[OK]ボタンを押下します。

f:id:masawan-guitar:20160917085540p:plain

(9) (VB)その後、再度、VBのメソッドを右クリックすると[単体テストの作成]が選択できる状態になっています。[単体テストの作成]を選択します。


(10)(VB)単体テストの作成画面が表示されます。[OK]ボタンを押下します。


(11)(VB)単体テストの作成中のウインドウが表示されます。

f:id:masawan-guitar:20160917085228p:plain

(12)(VB)単体テストのプロジェクト、テストコード(テンプレート)が自動生成されます。

その後、C#のプロジェクトを削除しても、
問題なくVBのコードエディタ上からの右クリックで「単体テストの作成」は行える状況でした。

■バージョン情報

■暫定的なまとめ

Visual Studio 2015 Professional VB.NETにて
コードエディタ上で右クリックメニューから[単体テストの作成]が行えない時には、
ソリューションにC#のプロジェクトを追加して、
一度、C#のコードエディタ上から[単体テストの作成]の操作を行えば、
その後、VBのコードエディタ上での右クリックメニューから「単体テストの作成」が行える状態になる。