Toshiyuki Kawanishi Blog


2008
5 . 5

組み合わせテスト for TestLink

TestLinkのテストをおこなているTestLink Test Task Force (TTF)。先日リリースされたTestLink 1.8 beta 1に対してのTTFによるテストが終了しました。これで次はbeta 2。TestLink 1.8のリリースへ着実に前進していますね!

さて、そのテストの中で以下のような機能に対してテストを設計する必要があったのですが、皆さんならどう設計されますか?

  • 条件1:オプションを選択して画面に何が表示されるかテストしたい。
  • 条件2:オプションが以下の通り7つある。
1. Table of Contents 
2. Test Suite texts 
3. Test Case Summary 
4. Test Case Scenario 
5. Test Case Author 
6. TC related Requirements 
7. TC related Keywords 
8. Test results 
  • 条件3:今回の新規機能は6と7のみで、この項目を重点的にテストをしたい。なお、他の項目は以前のバージョンで確認済み。

結局、TestLink日本語化プロジェクトの方と相談して以下のように設計しました。
  • ステップ1: 新機能である6と7をグループAとして、これらの全組み合わせを考える。それ以外のオプションはオールペア法で組み合わせて、これらの組み合わせをグループBとする。
  • ステップ2: さらにオールペア法でグループAとグループBの組み合わせて、最終的なテストケースを作る。(実際には他のオプションもこのステップ2で考慮してテストケースを設計。)
この組み合わせに従って、32ケースのテストを実行した結果、無事に8に関連したバグを発見できました。新機能ではなく、こんなところにバグがあったとは......と思いましたが、実はこの部分、前回のリリースからソースが変更されていた部分だったようです。beta 1のうちにバグが見つかってよかった!というのがテストをチャントやった時の歓びですね。

しかし、いまさら、オールペア法って2因子間網羅を保障しているから、グループAとグループBを分ける必要がなかったのではとも思いました(その場合は10ケース)。まあ、このようにグループ分けしてから組み合わせる手法を試してみるという意味で良かったと思っています。

今晩中にTTFのWebサイトにTestLinkから生成したレポートをアップロードする予定です。


なお、オールペア法のアルゴリズムについて詳しく知りたい方は以下の書籍を参考にしてみてください。

ソフトウェアテスト293の鉄則
Cem Kaner James Bach Bret Pettichord
日経BP社


また、以下のブログでも直交表などと共に紹介されいますね(このブログ結構参考にしています)。
それから、オールペア法に従って組み合わせを作ってくれるコマンドラインツールAllPairsは以下のサイトからダウンロードすることができます。

ただ、TestLinkのβ版を組み合わせに従ってテストして、その結果をTestLinkに登録する。ってよほど好きじゃないとできないような気がしてきました......
とにかく、テスト結果が反映されるであろう次のリリースTestLink 1.8 beta 2に期待です!