はじめに
テスト駆動開発による組み込みプログラミング ―C言語とオブジェクト指向で学ぶアジャイルな設計で組込みTDDを勉強中です。本書ではC専用テストハーネスとして、Unityが紹介されています。これの環境構築を行います。ゲームじゃないほうです。
環境
| OS | Ubuntu 20.04.1 LTS |
|---|
$ sudo apt install cmake
ファイル構造
ファイル構造は以下のようになります。
├── CMakeLists.txt
├── include
│ └── add.h
├── lib
│ └── Unity
├── src
│ └── add.c
└── test
├── runner
│ ├── add_test_runner.c
│ └── all_tests.c
└── testcases
└── add_test.c
| フォルダ名 | 内容 |
|---|---|
| src | テスト対象のソースコード |
| include | テスト対象のヘッダファイル |
| lib | Unityコードを格納 |
| test/testcases | 個別のテストケースのコード |
| test/runner | テストケースを実行するコード |
| CMakeLists.txt | ビルドシナリオファイル |
ソースコード
テスト環境に必要なファイルを作成したものをGitHubに登録しています。
github.com
テストの実行と結果
$ cd unity_trial $ cmake . $ make
$ ./unity_test Unity test run 1 of 1 unity_trial/test/testcases/add_test.c:23:TEST(Add, return_2):FAIL: Expected 2 Was 0
おわりに
入門できた感じがするので、本を読み進めていきたいと思います。