Asp.Net でのユニット テスト: 完全なチュートリアル
テストはあらゆるプログラミング言語にとって不可欠な要素です。 テスト ASP.Net アプリケーションの場合は、Visual Studio の助けを借りて可能です。
Visual Studio はテスト コードの作成に使用されます。また、ASP.Net アプリケーションのテスト コードの実行にも使用されます。このようにして、ASP.Net アプリケーションのエラーを簡単にチェックできます。Visual Studio のテスト モジュールには、すぐに使用できる機能が付属しています。ASP.Net プロジェクトのテストをすぐに実行できます。
ASP.Net のテストの概要
ASP.Net プロジェクトのテストの最初のレベルは、ユニット レベル テストです。このテストは、アプリケーションの機能に関するものです。テストは、アプリケーションが期待どおりに動作することを確認するために行われます。ASP.Net では、最初のタスクは Visual Studio でテスト プロジェクトを作成することです。テスト プロジェクトには、アプリケーションをテストするために必要なコードが含まれます。
以下の Web ページについて考えてみましょう。このページには、「Guru99 – ASP.Net」というメッセージが表示されます。では、ASP.Net プロジェクトの実行時に正しいメッセージが表示されることを確認するにはどうすればよいでしょうか。これは、ASP.Net ソリューション (Web ベースのアプリケーションの開発に使用) にテスト プロジェクトを追加することで実行できます。このテスト プロジェクトにより、ユーザーに正しいメッセージが表示されることが保証されます。
ここでさらに詳しく見て、ASP.Net でテストに取り組む方法を見てみましょう。
.NET単体テストプロジェクトの作成
テスト プロジェクトを作成する前に、以下の大まかな手順を実行する必要があります。
- 前のセクションで使用した「DemoApplication」を使用します。 これはテストする必要があるアプリケーションになります。
- DemoApplication に新しいクラスを追加します。 このクラスには、「Guru99 – ASP.Net」という文字列が含まれます。 この文字列はテスト プロジェクトでテストされます。
- 最後に、テスト用のプロジェクトを作成します。 これは、ASP.Net アプリケーションをテストするために使用されます。
それでは、上記の大まかな手順に従って、テストを実装する方法を見てみましょう。
ステップ1) Visual Studio で DemoApplication が開いていることを確認します。
ステップ2) ここで、DemoApplication に新しいクラスを追加しましょう。 このクラスには、「Guru99 – ASP.Net」という文字列が含まれます。 この文字列はテスト プロジェクトでテストされます。
新しいクラスを追加するには、以下の手順に従ってください。
- Visual Studio のソリューション エクスプローラーで、「DemoApplication」を右クリックします。
- コンテキスト メニューから [追加] -> [クラス] オプションを選択します。
ステップ3) このステップでは、
- 新しいクラスに「Tutorial.cs」という名前を付けます。
- 「追加」ボタンをクリックしてファイルを DemoApplication に追加します。
これで、新しいクラスがファイル「DemoApplication」に追加されました。
ステップ4) 「DemoApplication」から新しい Tutorial.cs ファイルを開きます。 「Guru99 – ASP.Net」という文字列を追加します。
ファイルを開くには、ソリューション エクスプローラーで Tutorial.cs ファイルをダブルクリックします。
ファイルには、デフォルトのコードがすでに書き込まれています。 このコードについては気にせず、次のコード行を追加するだけです。
namespace DemoApplication { public class Tutorial { public String Name; public Tutorial() { Name = "Guru99 - ASP.Net"; } } }
コードの説明:-
- Name 変数は文字列型です。
- 最後に、Tutorial クラスのコンストラクターで、Name 変数の値を割り当てます。 値は「Guru99 – ASP.Net」に割り当てられます。
ステップ5) 次に、demo.aspx ファイルに移動し、「Guru99 – ASP.Net」というテキストを表示するコード行を追加します。
<!DOCTYPE html> <html xmlns="http://www.w3.ore/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server”> <div> <% DemoApplication.Tutorial tp=new DemoApplication.Tutorial();%> <%=tp.Name%> </div> </form> </body> </html>
コードの説明:-
- 最初の行では、「Tutorial」クラスのオブジェクトを作成します。 これは、クラスとオブジェクトを操作するときの最初のステップです。 オブジェクトに付けられた名前は「tp」です。
- 最後に、demo.aspx ファイルから「tutorial.cs」を呼び出します。 Name 変数の値が表示されます。
上記のプログラムを Visual Studio で実行すると、次の出力が得られます。
出力:-
出力には、「Guru99 – ASP.Net」というメッセージが表示されます。
ステップ6) 次に、テスト プロジェクトをデモ アプリケーションに追加します。これは Visual Studio を使用して行います。
- ソリューション – DemoApplication を右クリックします。
- コンテキスト メニューで、[新しいプロジェクト] オプションを選択します。
ステップ7) このステップには、単体テスト プロジェクトをデモ アプリケーションに追加することが含まれます。
- 左側のパネルで項目タイプ「テスト」をクリックします。
- ダイアログ ボックスの中央部分に表示されるリストから、「ユニット テスト プロジェクト」項目を選択します。
- テスト プロジェクトの名前を付けます。 この場合、指定された名前は「DemoTest」です。
- 最後に「OK」ボタンをクリックします。
最終的に、DemoTest プロジェクトがソリューション エクスプローラーに追加されたことがわかります。 これにより、UnitTest1.cs やプロパティなどの他のファイルもデフォルトで生成されることがわかります。
テストプロジェクトの実行
前のセクションで作成したテスト プロジェクトは、ASP.Net アプリケーションをテストするために使用されます。次の手順では、テスト プロジェクトを実行する方法について説明します。
- 最初のステップは、ASP.Net プロジェクトへの参照を追加することです。 この手順は、テスト プロジェクトが ASP.Net プロジェクトにアクセスできるようにするために実行されます。
- 次に、テストコードを記述します。
- 最後に、Visual Studio を使用してテストを実行します。
ステップ1) デモ アプリケーションをテストするには、最初のテスト プロジェクトがデモ アプリケーションを参照する必要があります。 Demo.aspx ソリューションへの参照を追加します。
- デモ テスト プロジェクトを右クリックします
- メニューから「追加」->「参照」のオプションを選択します。
ステップ2) 次のステップでは、DemoApplication への参照を追加します。
- ダイアログボックスの左側からプロジェクトオプションを選択します。
- DemoApplicationの横にあるチェックボックスをクリックします
- 「OK」ボタンをクリックします。
これにより、demotest プロジェクトで DemoApplication をテストできるようになります。
ステップ3) 次に、テスト コードをテスト プロジェクトに追加します。
- まず、ソリューション エクスプローラーで UnitTest1 (UnitTest1 ファイルは、テスト プロジェクトの作成時に Visual Studio によって自動的に追加されます) ファイルをダブルクリックします。
- これは、ASP.Net プロジェクトをテストするために実行されるファイルです。
UnitTest1.cs ファイルに Visual Studio によって追加された以下のコードが表示されます。これは、テスト プロジェクトを実行するために必要な基本コードです。
ステップ4) 次のステップでは、文字列「Guru99 – ASP.Net」をテストするために使用するコードを追加します。
using System; using Microsoft.VisualStudio.TestTools.UnitTesting; using DemoApplication; namespace DemoTest { [TestClass] public class UnitTestl { [TestMethod] public void TestMethodl() { Tutorial tp = new Tutorial(); Assert.AreEqual(tp.Name,"Guru99 - ASP.Net"); } } }
- タイプ「tp」の新しいオブジェクトを作成します。 チュートリアル
- Assert.AreEqual メソッドは、値が何かと等しいかどうかをテストするために .Net で使用されます。 したがって、私たちのケースでは、tp.Name の値を Guru99 (ASP.Net) と比較しています。
ステップ5) それでは、テスト プロジェクトを実行してみましょう。 このためには、メニュー オプション [テスト] -> [実行] -> [すべてのテスト] に移動する必要があります。
出力:-
Visual Studio にテスト エクスプローラー ウィンドウが表示されます。ここに上記の結果が表示され、Visual Studio でテストが正常に実行されたことが示されます。
まとめ
- ASP.Net で追加できるのは 単体テスト アプリケーション用。
- アプリケーションをテストするには、単体テスト プロジェクトを ASP.Net ソリューションに追加する必要があります。
- すべてのテストは Visual Studio で実行できます。テスト エクスプローラーにはすべてのテストの結果が表示されます。