コース: Visual Studio:ユニットテスト

今すぐコースを受講しましょう

今すぐ登録して、23,200件以上登録されている、業界エキスパート指導のコースを受講しましょう。

テストのライフサイクルを知る

テストのライフサイクルを知る - Visual Studioのチュートリアル

コース: Visual Studio:ユニットテスト

テストのライフサイクルを知る

このレッスンでは MSTest のテストクラスの ライフサイクルについて解説します。 画面は Visual Studio で MSTest のプロジェクトを作成し テスト用のクラスを追加した画面です。 class CalcTests はテスト用のクラスで TestClass 属性が作られています。 実際にテストを行うメソッドは TestMethod 属性が付けられた TestA と TestB です。 それ以外に TestInitialize TestCleanup ClassInitialize ClassCleanup という属性をつけたメソッドが 存在します。 ClassInitialize のみ 引数として TestContext という型をとります。 それではこのテストをデバッグ実行して メソッドが呼ばれる順番について 確認しましょう。 今回は「テスト」の 「すべてのテストをデバッグ」 を実行します。 まずデバッグは ClassInitialize で 停止します。 この中でクラス全体を初期化するような 処理を記述していきましょう。 デバッグを進めます。 続いて TestInitialize が呼ばれます。 これはそれぞれのテストを 実行する前に呼ばれるメソッドです。 もう少し処理を進めてみましょう。 続いて TestA が呼ばれました。 出力を確認すると ClassInitialize TestInitialize の後に テストが実行されることがわかります。 デバッグを進めます。 するとテストが実行され TestCleanup が呼ばれます。 テスト終了後に行いたい処理を 記述すると良いでしょう。 さらにデバッグを進めると もう一度 TestInitialize が 呼ばれます。 その後に TestB が呼ばれます。 そして TestB に対して TestCleanup が呼ばれます。 もう一度出力を確認してみましょう。 まず ClassInitialize が呼ばれました。 続いて TestA に対する TestInitialize が呼ばれ TestA が実行され TestCleanup が実行されました。 続いてもう一度 TestInitialize が 呼び出されますが、これは TestB を行う前の処理です。 デバッグを進めると 処理は…

目次