特集Vista時代のVisual C++の流儀(後編)STL/CLRによるDocument/Viewアーキテクチャεπιστημη(えぴすてーめー)2007/05/11 |
|
|
おまけ:NUnitの活用
本特集では、C++/CLIとC#とのコンビネーションでDocument/Viewアーキテクチャを実現し、MFCで書かれたアプリケーションを.NET化する方策について解説してきました。
Document/Viewアーキテクチャをベースにアプリケーションを構築することでアプリケーションの実体とユーザー・インターフェイスとをきっちり分離できます。そしてそのことは効果的な単体テストを容易にします。つまり、Viewと分離されたDocumentはユーザー・インターフェイスを伴うことなく動作させられるので、たくさんのテスト項目を一気に実行/検証できます。
ここではNUnitを使って、今回実装したDocumentであるStringStackDocumentをテストしてみましょう。
NUnitのWebページからインストール・パッケージ「NUnit-2.4.0-r2-net-2.0.msi」(執筆時点の最新版)をダウンロードし、適当なディレクトリにインストールします。そしてその中に含まれる「NUnit-Gui」(=binフォルダにあるnunit-gui.exe)を、VS 2005(Express Editionも同様)のメニュー・バーの「ツール]−[外部ツール]に設定します。
[外部ツール]へのNUnitの設定 |
[タイトル]は分かりやすい名前(この例では「NUnit 2.4」)を付ける。[コマンド]にはインストールしたNUnit-Guiのパス、[引数]には「$(TargetPath)」を、[初期ディレクトリ]には「$(TargetDir)」を設定する。 |
StringStackDocumentをテストするクラス・ライブラリのプロジェクトを作ります。プロジェクトの参照設定に「nunit.framework」(.DLLファイル)と、テスト対象であるStringStackDocumentのアセンブリ(.DLLファイル)を追加します。
あとはNUnitの書式に従ってテスト・コードを書きます。本稿の場合は次のようになります。
|
|
StringStackDocumentをテストするテスト・コード(C#) |
このテスト・コードをビルドした後は、メニュー・バーから[ツール]−[NUnit 2.4](※タイトルで設定した名前になる)を起動するだけ。
StringStackDocumentに対するテストが実行されたNUnitのGUI画面 |
左のツリーで緑色のチェック・マークが付いている項目は、そのテストがパスしたという意味。 |
このように.NETでもDocument/Viewアーキテクチャを採用することで、テストが行いやすくなり、品質が向上するというメリットがあります。
INDEX | ||
[特集] | ||
Vista時代のVisual C++の流儀(前編) | ||
Vista到来。既存C/C++資産の.NET化を始めよう! | ||
1.Vista時代にC/C++はもはやお払い箱なのか? | ||
2.C/C++資産をどこまで生かせる? | ||
3.ネイティブ・オブジェクトをマネージ・コードでくるむ | ||
4.文字コード変換 | ||
Vista時代のVisual C++の流儀(中編) | ||
MFCから.NETへの実践的移行計画 | ||
1.C++/CLIによるWindowsフォーム・アプリケーション | ||
2.言語をまたいだDocument/Viewアーキテクチャ | ||
3..NET移行前のMFCサンプル・アプリケーション | ||
4.MFCのDocument/Viewアーキテクチャの.NET化 | ||
5.MFCで書かれたDocumentを.NET化する2つの方法 | ||
Vista時代のVisual C++の流儀(後編) | ||
STL/CLRによるDocument/Viewアーキテクチャ | ||
1.STL/CLRとは | ||
2.STL/CLRの特徴 | ||
3.Visual Studio 2005で試す | ||
4.おまけ:NUnitの活用 | ||
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|