CppUTestを試してみた


TDD(テスト駆動開発)やりたいなー。でもC言語で良さげなテスティングフレームワークってなんだろ。しかもいま俺が触ってるのって、組み込み系で先祖代々受け継がれしレガシーコードだしなぁ。どーしたもんだろーか。と思ってた矢先に、良さげな本を見つけたので、早速購入してみた私だよ?

そいつを読み進めてると「C言語のテスティングフレームワークはUnity(ゲームじゃない方の)とかCppUTestがおすすめだよ!」という話が載ってたので、とりあえずどっちも触ってみた。Unityはゲームの方のやつと被ってなんかアレなので、CppUTestを本格的に使ってみる事にした。

このフレームワーク、Cppと銘打ってはあるものの、ちゃんとC言語でも使えるらしい。CppUTest公式からソース落としてきたらVisualC++用のプロジェクトが入ってたので、そのままビルドしたらlibが出てきたやっほい!さっそくそいつをVCプロジェクトに組み込んで使ってみる事にしてみた。

includeしてくるヘッダはよく分からんので手探り。あと当たり前なんだけど、C++からC言語の関数を呼び出す時は、呼出規約に気をつける(cdecl)。とりあえず魔法のおまじない「extern “C”」をつけときゃなんとかなるって、じっちゃがいってた。

会社のプロジェクトでCppUTest使い始めてから1ヶ月ぐらい経つんだけれども、既存のコードに適用するのは難しいので、とりあえず新規に追加する機能とかで試してる。境界チェックとかで凡ミスそこそこ拾ってくれるので、結構重宝してる感じ。仕様変更が入るたびに実機でデバッグするの超だるおなので、テストファースト極めて楽できるようになりたいね。

俺からは以上だ!

コメントを残す

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

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)