組み込みソフトウエアのテストにCppUTestを使っている。そもそもは、テスト駆動開発による組み込みプログラミング ―C言語とオブジェクト指向で学ぶアジャイルな設計という本に触発されてのことである。
例にあるような、LEDドライバーなどのテストを、この手法でやるのは大変だし、結局、実機でしかテストできないことも多く、実行には移せなかった。
しかし、世の中が変わり、ハードウエアに近いレベルのドライバーは、マイコンメーカー提供のものを使うようになって、少しテスト戦略を変えた。ドライバーそのものは、やはり、従来通り実機でテストする。しかし、このドライバーを使ったソフトウエアは、CppUTestを使うことにした。
メーカー提供のドライバー関数をモックでシミュレートし、PC環境でテストするのである。
最近の組み込みのコンパイラは、大抵、GCCなので、PC環境で同じソースをコンパイルしても、コンパイルエラーが出ることはほとんどない。そんなに凝ったソフトウエアも作らないので、機能試験なら十分にPC環境でテストできる。
yです
以前何回かコメントさせていただきました。
James W. Grenningさんの本は良い本ですね。組み込みだけでなく、Windowsソフト開発などでの注意点として使っています。
100冊のうちの5冊くらいに入る良い本だと思っています。
yさん
TSSです。
はい。良い本だと思います。実践でも使えますから。IT関連は、本は多いのですが、組み込みの実務で使える本となるとあまりありません。ITは、応用分野の裾野が広いし、近年はAIが多いですからね。