Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

ASP.NET

ASP.NETの単体テストプロジェクトを新規に作成する方法

投稿日:2021年4月6日 更新日:

<目次>

(1) ASP.NETの単体テストプロジェクトを新規に作成する方法
 (1-1) ASP.NET MVCにおける単体テスト機能について
 (1-2) ASP.NET MVCにおける単体テストの実施手順

(1) ASP.NETの単体テストプロジェクトを新規に作成する方法

(1-1) ASP.NET MVCにおける単体テスト機能について

「単体テスト」は各ユニット単位で行うテストで、そのユニット単独で正しく動作するか?を確認する目的のテストです。システム開発においては必ず単体テストを行ってから、モジュール間の結合を実施します。テスト対象の「ユニット」は具体的には以下のように定められる事が多いです。

・手続き型言語の場合:ファンクションやプロシージャ単位
・オブジェクト指向言語の場合:インターフェイスやクラス単位など(メソッド単位の場合もある)

目次にもどる

(1-2) ASP.NET MVCにおける単体テストの実施手順

(1-2-1) 新規プロジェクトの作成

①作成画面を開く

VisualStudioを開き「新しいプロジェクトの作成」を選択

(図121)①

②種類は「C#」「Windows」「Web」等で絞り込み、「ASP.NET Webアプリケーション(.NET Framework)を選択します

(図121)②

③任意のプロジェクト名や保存場所等を指定します
(図121)③

④新しいASP.NET Webアプリケーションを作成
④-1:「テンプレート」は「MVC」を選択
 
MVCを選択すると「フォルダーおよびコア参照を追加する」のMVCにも自動で✔が入ると思います。
 
(参考)「フォルダーおよびコア参照を追加する」について
この設定はASP.NETのサブフレームワークである「Webフォーム」や「ASP.NET MVC」や「ASP.NET Web API」等を導入するためのチェックボックスです。
 
例えば、テンプレート「MVC」の場合は「MVC」が必ず入っており、「Webフォーム」と「Web API」は任意といった具合に、テンプレートに応じて必ず含まれるものと、オプションで追加できるものとが異なっています。
 
④-2:「詳細設定」で「単体テストのためのプロジェクトを作成する」を選択
 
これを選択する事で、ASP.NET Webプロジェクトの本体に加えて、テスト用のプロジェクトが自動生成されます。
(図121)④

④-3:設定できたら「作成」を押下します

目次にもどる

(1-2-2) 新規プロジェクトの全体像

作成されたソリューション配下にプロジェクトが2つ含まれていると思います。上のプロジェクトが通常のASP.NET Webアプリで、下のプロジェクトがその単体テスト用のプロジェクトです。

[指定したプロジェクト名]

[指定したプロジェクト名].Tests

(図122)①

ASP.NET Webアプリのプロジェクトは、MVCのテンプレートを使って作ったため、予めControllerやView等のサンプルファイルが含まれた状態になっています。

(図122)②

実際にIIS Expressで実行してみると、次のようにサンプルのページが表示されます。

(図122)③

(1-2-3) 単体テストの実行

次に単体テスト用のプロジェクト(例:MVCUnitTestSample.Tests)を用いて、単体テストを実行していきます。
 
自動作成されたプロジェクトを確認すると、「HomeControllerTest.cs」というC#プログラムがあり、その各メソッドがControllerの各メソッド(Viewの表示メソッド)と対応関係にあり、それぞれのメソッドをテストするイメージです。

(図123)①

①単体テストの実行

上段メニューより「テスト」⇒「すべてのテストを実行」と選択すると、単体テストが実行されます。

(図123)②

②結果確認

「テストエクスプローラー」という画面が起動し、テスト結果が表示されます。

(図123)④

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-ASP.NET

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

ASP.NET MVCにおけるSessionオブジェクトについて

<目次> (1) ASP.NET MVCにおけるSessionオブジェクトについて  (1-1) Session(セッション)とは?   (1-1-1) セッションの開始と終了  (1-2) Sess …

ASP.NET MVC(C#)でHelloWorldする手順

<目次> (1) ASP.NET MVC(C#)でHelloWorldする手順  (1-1) プロジェクトの作成  (1-2) Controller(コントローラー)の作成  (1-3) Veiw(ビ …

ASP.NET MVCでformをSubmitする方法

<目次> (1) ASP.NET MVCでformをSubmitする方法  (1-1) 概要  (1-2) HTMLを使ってformをsubmitする方法  (1-3) サンプルプログラム  (1-4 …

ASP.NETのActionResultの戻り値の種類について

  <目次> (1) ASP.NETのActionResultの戻り値の種類について  (1-1) はじめに  (1-2) ASP.NETのActionResultの戻り値の種類  (1-3 …

ASP.NET MVCのRouteConfigを追加する方法を2つご紹介

  <目次> (1) ASP.NET MVCのRouteConfigを追加する方法を2つご紹介  (1-1) やりたい事の整理  (1-2) 方法1:通常のルーティング  (1-3) 方法2 …

  • English (United States)
  • 日本語
Top