私は単体テストの概念を初めて使いました。現在、私はそれをより快適にしようとしています。マイクロコントローラでタイマ機能のユニットテストを行う方法
私は、Cで書かれたマイクロコントローラ用のタイマドライバでユニットテストをしなければなりません。今、関数のユニットテストは、別の関数の結果に依存すべきではないと聞きました。私の問題は、これらの条件でタイマーを停止するはずの関数をどのようにテストすることができますか?タイマーを開始する必要はありませんか、それを初期化する必要があります!
ユニットテストをどのレベルで検討する必要があるかを知りたいと思います。 1つの機能レベル(この場合、上記の問題が発生します)か、それともドライバ自体のレベルですか(この場合、1つのユニットテストでドライバの複数の機能を使用できます)。
このテーマについての経験が豊富な人からの感想を聞いてみたいと思いますが、今はどこにも行きません。
以下の回答/コメントと同様に、機能のためには、少なくとも通常のユースケースでは機能をテストする必要がありますが、おそらく通常のユースケースからの設計に依存します。だから通常のユースケースは、タイマーを起動してその機能を準備する(時間を読む)ために、タイマーを起動して初期化する必要があります。しかし、time関数を読み込んでも、タイマーが初期化されていないことが検出された場合は、タイマーを初期化せずにテストし、正しく検出するかどうかを確認する必要があります。 –