it「googletest」はGoogleが公開しているC++のユニットテストのフレームワークです。Symbianなど色々なプラットフォームに対応しています。そんな衝動に駆られ、試してみました。ちなみに、公開されているドキュメントでは、Xcodeの場合は別の手順(フレームワークを作る方法)も書かれていました。Xのシェルツールとしてビルドになります。iOS向けの場合は、Xcode組み込みのテストフレームワークを使って、Objective-Cとしてテストする方が良さそうです。■セットアップまずは、「googletest」をダウンロードします。Code」で公開されています。http://code.google.com/p/googletest/この記事を書いている時点での最新バージョンは1.6.0です。この記事は、1.6.0に基づいて書いています。Xcodeで使う場合には、少し手順があります。他の環境と同じようにスタティックライブラリをビルドするという方法でも、もちろんできますが、フレームワークを作るようにした方が、SDKやコンパイラの変更などが簡単です。詳しいことは、ここに書かれています。http://code.google.com/p/googletest/wiki/XcodeGuideダウンロードしたアーカイブを展開すると、「xcode」というディレクトリがあるので、その中の「gtest.xcodeproje」を開きます。次に、使えるようにするために設定します。ナビゲータエリアから「gtest」を選択して、プロジェクトの設定を開きます。Settings」を選択し、設定を最新の開発環境に合わせた設定にアップデートします。次にいくつか設定を変更します。このとき、ターゲットではなく「PROJECT」の「gtest」(プロジェクトファイル)が選択されていることを確認してから操作します。SDKを使用するSDKに変更。「gtest-internal-intl.h」の「pretty_」変数がエラーになるので、コメントアウト■ビルド「Product」メニューから「Archive」を実行します。終わったらオーガナイザウインドウで「Distribute」ボタンをクリック。Products」を選択して、ビルドしたフレームワークを出力します。出力したフォルダの中にある「gtest.framework」を「/Library/Frameworks」にコピーすれば完了です。■使ってみるプロジェクトを作って使ってみます。既存のプロジェクトを使いたいときは、ターゲットを追加します。Tool」を選択します。Typeは「C++」を選択します。Phases」で「gtest.framework」を追加します。Paths」に「/Library/Frameworks」を追加します。プロジェクトの準備はこれで完了です。次に動くか確認します。次のようなものをmain.cppに書いてみました。動くかどうかをみたいだけなので、絶対に失敗するコードです。RUN_ALL_TESTS();}[/cc]100%失敗するコードです。関数「something」は渡されたものをそのまま返すだけですので、1を渡せば1が返る。0が返ることを期待するテスト。実行すると、次のように表示されます。TEST[/cc]予定通り、失敗が検出されました。関数「something」に渡す引数を0にします。今度は成功するので、成功したログが出力されればOKです。test.[/cc]これで、Xcodeから「googletest」が使用できるようになりました。