1. HOME
  2. ソリューション
  3. 変更前のテスト

変更前のテスト

「変更前のテスト」で目標として作りこむ“振舞い”を確認する

リファクタリング」の注意すべきことポイントの一つは「振る舞い」を変えないということです。そうすることにより、「リファクタリング」の影響を局所的にとどめることができます。

とはいえ、いきなりコードを変更したものを置き換えて実行するのは、危険を伴う可能性があります。まずは「リファクタリング」箇所とその周りのモジュールとのインタフェースを確認するためのテストプログラムを作成することから始めます。

「リファクタリング」のbefore/afterで振舞いを変えない

テストプログラムでは、「リファクタリング」対象の部分をブラックボックスとして、周りのモジュールとのインターフェイスについて、それぞれ正常値・異常値・境界値を入力した場合をテストします。

「リファクタリング」前にテストを実施し、テスト結果を保存しておきます。このテスト結果が、「リファクタリング」における振舞いの仕様となります。

【リファクタリングbeforeのプログラム】「リファクタリング」箇所と関係するモジュールとのインタフェースを抽出⇒【テストプログラム】関係するモジュールを模すテストプログラムを作成⇒【リファクタリングbeforeのプログラム】+【テストプログラム】=【変更前テスト結果】「リファクタリング」実施前のプログラムでテストした結果が、目指すべき振舞いの仕様となる

頑張ってるけど、ちっとも楽にならない…何で?

すぐに成果を出すために頑張ってるけど、自前ではもう限界

効果的だろうけど高額なコンサルには手がでない…

あなたに合う一番最適な解決方法を
エクスモーションがご提案いたします。

レガシーリファクタリングの関連サービス

適用支援

レガシーリファクタリング実施支援サービス

ソースコード診断による問題の把握から、あるべき姿への改善まで、設計技術支援とプロセス設計によって、レガシーコードの改善を総合的に支援します。

適用支援

要求仕様書作成サービス

「要求仕様書」を作成したいのに作成する工数が取れないといったお客様に向けて、エクスモーションが制御仕様書や機能仕様書などの既存資料の調査や開発者へのヒアリングを行って「要求仕様書」を作成します。

「リファクタリング」による品質改善についての理論を学び、問題発見・コードの変更・CIフレームワークを使ってのテストまでを実践する本格的トレーニングです。テスト自動化ツール「Google Test」とCIフレームワーク「Jenkins」を使用します。

レガシーリファクタリングに関する記事を見る

他のソリューションを見る

最新コラム