ページ更新: 2014-06-09 (月) (1441日前)

関連: 書籍/組み込み, 組み込み/自動テスト/CppUTest?

(2014-05-03 新規作成)

組み込み用のテスティングフレームワーク Unity について。

目次

[編集]

情報源 #

[編集]

Unity #

[編集]

ブログなど #

[編集]

書籍 #

  • テスト駆動開発による組み込みプログラミング (Test Driven Development for Embedded C)
[編集]

メモ #

[編集]

CppUtest → Unity 変換 #

(書籍 テスト駆動開発による組み込みプログラミング, p.110 より)

CppUTest付属のRubyスクリプトで、CppUTestをUnityテストに変換できる。らしい。 よって、同一のテストをホストでCppUTestを、ターゲット(組込)でUnityを使うこともできるとのこと。

[編集]

テストランナーの自動生成 #

test_runnnerの生成用Rubyスクリプト generate_test_runner.rb が付属している。

[編集]

テストのビルドに必要なファイル #

テストのビルドに必要なファイルは、以下のディレクトリの *.c, *.h。

src/			Unityの実装、unity.h
extras/fixture/src/	UnityMain関数、デフォルトのsetUp(),tearDown()関数
[編集]

extras/fixutre/src/UnityMain のargv仕様 : #

(書籍 テスト駆動開発による組み込みプログラミング, p.320より)

UnityMain(int argc, char *argv[], void関数) のargvの仕様

-v		verboseモード。各テストの実行前にテスト名を出力する。
-g グループ名	指定した名前を含むテストグループを実行する
-n ケース名	指定した名前を含むテストケースを実行する
-r [count]	テスト実行をcount回数繰り返す。countを省略したときは2回繰り返す。
[編集]

ターゲット上での文字列出力先の変更 #

(書籍 テスト駆動開発による組み込みプログラミング, p.320より)

デフォルトでは putchar() を用いている。UNITY_OUTPUT_CHAR マクロを定義すると、出力先を差し替えられる。