1. ホーム
  2. unit-testing

[解決済み] レガシーコードへのユニットテストの追加 [終了しました]

2023-06-21 19:28:50

質問

レガシーなコードに後からユニットテストを追加したことがありますか? コードはどれほど複雑で、すべてをスタブやモックにすることはどれほど困難だったでしょうか? 最終的な結果は価値あるものだったでしょうか?

どのように解決するのか?

私が見つけた最良の方法は、ユニットテストを徐々に追加していくことです。

ですから、もしあなたがバグフィックスやリファクタリングのためにコードを触るつもりなら、最初にユニットテストを書いてください。 バグのためのユニットテストは、問題がどこにあるのかを証明するのに役立ちます。

リファクタリングの場合、ユニットテストを書きたいところですが、テストが書けないということもあるでしょうから、リファクタリングされる関数を呼び出す、高レベルのものを見つけて、その部分をユニットテストする必要があるかもしれません。 そして、攻撃的な関数をリファクタリングしながら、テストを書いて、その関数があるべきように動作していることを確認できるようにします。

これを簡単に行う方法はありません。

この質問は、より多くの提案の助けになるかもしれません。 どのように大規模でレガシーな(C/C++)コードベースにユニットテストを導入するのですか?