テスト自動化パターン言語プロジェクト

建て増し旅館

文脈

テスト自動化が職場に導入され、少しずつ適用範囲が増えていっている。

問題

自動化システムが、場当たり的な改修によりメンテナンス性が損なわれていってしまう。たとえば、類似のスクリプトをコピペで量産し始めたり、自動化対象(SUT)と自動化システムのギャップを強引な手法で解決し始めたりする。

フォース

自動テストの実装を進めていくと、当初の想定とは異なる状況に出くわすことはよくある。そんなときに、立ち止まって考えず、「とりあえず動かそう」という気持ちで実装を進めてしまう。 特に、自動化ハイに陥った自動化チームは、全体を考えずに自動化実装をまい進することが多い。

解決

テスト自動化はそれ自体が複雑なシステムであることを理解しよう。それぞれが勝手な実装を進めればいつかは崩壊してしまう。 まずは、実装を進める前に全体像を描くことを習慣づけよう。もし、すでに建て増された部分がある場合は、ブラックジャックに依頼して改修をするか、作りなおそう。

結果

建て増されたテストのうち、有用なものの効果を残しながらも、メンテナンス性を確保した自動化システムを創ることができる。