テストにおけるデザインパターン

そういえば、今日のJaSSTのパネルディスカッション(ディスカッションの内容は、「テスト技法からテストメソドロジへの進化を目指して」)で、西 康晴 先生が、「テストでもデザインパターンみたいなものがあると良い」という旨の話をしていたのですが、これはその通りだと思います。


設計においては、設計技法だけでなく、「GoFのデザインパターン」「PofEAA」といった、パターンが多く存在します。パターン自体が重要ではないとは思うのですが、パターンはベストプラクティスであり、それを適切に利用することができれば、設計品質も向上するでしょう。


テストについては、いろいろな技法はありますが、設計におけるパターンのようなものがない。私が知っているものは、「xUnit Test patterns」ぐらい。
同値分割」「境界値」といった基本的な技法を使っている人は多いと思いますが、「直交表」「デシジョンテーブル」のようなものになると、技法自体は知っていても、使いどころを知らない人が多いような気がします。

そのため、テストに関するデザインパターンのようなものがあると、確かに便利だと思いました。
例えば、以下のようなもの。

  • フィールド入力に関するパターン
  • 画面操作に関するパターン
  • データ更新に関するパターン
  • 負荷テストに関するパターン


私も、社内では観点をまとめることはしているのですが、それだけではなく、どのようにテスト分析/設計を行い、テストを実施するか、パターン化できると面白いと思います。


ソフトウェア業界は、他の製造業などと比べると、業界標準というものがほとんどない。
そのために、同じ業界で、同じようなシステムを開発していても、会社が変われば、テスト仕様書の内容も全く異なります。
その結果、テストケース漏れなども、見つけにくいものになっていると感じます。


上記のようなパターンができることで、そのような問題が解決できればと思います。