私は組み込みシステム上にかなり古いCコードの大きなコードベースを持っていますが、残念ながら自動テストケース/スイートはありません。これにより、コードの再構築とリファクタリングが危険な作業になります。C関数呼び出しとパラメータトレース - テストケースとモック生成
テストケースを手動で書くのは非常に時間がかかるため、たとえば、すべての関数呼び出しをトレースして入力値と出力値を記録するなど、このプロセスの少なくとも一部を自動化できるはずです。私はテストケースでこれらの値を使用することができます(これは少なくとも一部の機能では機能しません)。収集されたデータに基づいて模擬機能を作成することも可能でしょう。
このようなテストケースを持つと、リファクタリングがあまり危険でない動作になります。
既にこれを行うことができるソリューションはありますか?自分でコードを作成しなければならない場合、これを動作させる最も簡単な方法は何ですか?
ctags
を使用して関数定義を見つけ、パラメータ値を記録する関数にラップすることを考えました。別の可能性はおそらくgccコンパイラプラグインでしょう。
この質問は、superuser.comに属していないと思いますか? –
@ Mr.32:これはプログラミングに関連する質問ですので、ここには必ず含まれています。 –