Ask The Expert
【Q&A】テストケースを設計する方法
質問:テストケースを設計する際、どのような点を注意すべきでしょうか?
設計に当たっては、実用的で再利用可能なテストケースの作成を目指すことが大切だ。設計プロセスに役立つアイデアを以下にまとめたので参考にしていただきたい。
最初に考えなければならないのは、利用者のことである。誰がテストケースを読み、それを使用するのかということだ。テストケースの利用者が新米テスターなのか、経験豊富なテスターなのか、それともオフショア(海外)アウトソーサーのテスターなのかによって、テストケースのデザインは異なる。
新米テスターやオフショアテスターが各テストケースで必要な「すべての情報」を提供するようなテストケースを作成するのであれば、テストケースはかなり詳細なものにする必要がある。テストケースの目的は明確に示さなければならない。テストデータをテストケースに添付してもよい。テストデータを含めるのであれば、テストデータは「指定通りに」使用しなければならないのか、それともサンプルとして添付してあるだけなのかを明記する必要がある。
テストデータはテストで非常に重要な部分である。テストケースに書き込まれたテストデータが、使用するデータタイプのサンプルであり、テスターが創造性を発揮して、ほかのテストデータを使用しても構わないのであれば、テストケースにその旨を明記しなければならない。場合によっては、定義されたすべてのテストケースについてその旨を明記し、テストチームに周知徹底する必要があるだろう。
具体的な例を見てみよう。同一の認証情報を使って2つのユーザーアカウントを作成できないことを示すためのテストケースを設計する場合を考える。筆者がテスターであれば、このテストケースの目的として記載された要件に違反するための手段を思いつく限り試そうとするだろう。例えば、1つのアカウントを作成し、それをいったん無効にした上で、同じ認証情報を使って別のアカウントを作成し、その後で、最初のアカウントを再び有効にするといった具合だ。
この例とは対照的に、ジョー・スミスという名前のユーザーアカウントを作成し、そのアカウントが作成されたことを確認した上で、ジョー・スミスという名前で別のアカウントの作成を試みよというテストケースの具体的な指示に従うという方法もある。
筆者は、テスターが創造性を発揮するやり方が望ましいと考えている。テストの目的がテストケースで最も重要な側面であると思うからだ。テストデータを具体的に指定する理由があるのでなければ、すべてのテストデータを可変要素として指定する方法を筆者は好む。テスターが新たなアイデアを思いつき、異なるテストデータでテストすることが望ましいと考えているからだ。
テストケースを指定通りに実施する必要がある場合と、テスターに創造性を発揮してもらいたい場合を明確化すること。つまり、添付したテストデータが指定通りに使用される必要がある場合と、テスターが異なる値を試すことができる場合を明確化するということだ。筆者はテストデータが可変要素であることを明確に示すために、変更可能なテストデータをカラーで強調したことがある。
コンテンツも考慮すべき事柄の1つである。誰がテストケースを使用するかが分かれば、テストケースの説明のトーンや詳細を決めやすい。では、コンテンツの詳細はどのように決めればいいのだろうか。規制を受けた環境の中でテストを行い、テストする製品が監査の対象になるのであれば、選択の余地はない。指針となる手順に従い、要求された事項を順守しなければならないのである。規制を受けず、急速に変化する環境の中でテストを行うのであれば、詳細な手順を示したテストケースは融通が利かないので、更新しにくかったり実用性に欠けるなどして、使い捨てになってしまう恐れがある。テスト環境の状況およびテスト対象となる製品も、考慮すべきファクターなのだ。また、テスト実施経験および対象となる製品に関する経験の両面において、テストチームの経験レベルを考慮する必要もある。
フォーマットも考慮すべき事柄の1つである。ただし筆者は個人的には、フォーマットはそれほど重要ではないと考えている。テストケースの要はコンテンツであり、フォーマットではないからだ。しかしテストケースを保存するツールを購入し、そのツールを使わざるを得ない人もいるかもしれない。あるいは、テストケースはWordやExcelまたはTestDirectorで記述しなければならないといった指針を定めている企業もあるだろう。筆者は、フォーマットがテスターにとって実用的であることが望ましく、テスターの仕事を増やしたり、ソフトウェアをテストするという最終的な目標を見失わせたりするものであってはならないと考えている。
最後に考慮すべき事柄として、テストケースのランク付けが挙げられる。テストケースが多くなってくれば、テストケースのメンテナンスも重要な要素となる。テストケースの作成を重ねる中で、製品およびテストケースが時とともに進化するということが理解でき、テストケースをランク付けしようと考えるようになるだろう。ここで言うランク付けとは、必ず実施しなければならないテストケースと、比較的重要度が低いテストケースを決めることを意味する。テストケースが各リリースのリグレッションテスト用に設計されており、そのテストケースが重要な機能をカバーしているのであれば、そのテストケースのランク付けを検討することが望ましい。
筆者は以前、各テストケースを1~3のレベルに分類することによってランク付け問題を解決した。レベル1のテストケースは基本的な機能をチェックするものであるため、各ビルドごとに実施する必要がある。レベル2のテストケースは製品の機能変更に基づいて選択し、レベル3のテストケースはリグレッションテストスイートをすべて実行するときに使用するようにした。一般的には、各製品リリースごとにすべてのテストケースを評価し、実施の優先順位を見直すことになるだろうが、テストケースの開発を重ねていけば、現在のリリースだけにフォーカスするよりも、製品全体に対して各テストケースがどの程度重要であるか考えるようになるだろう。
以上を要約すれば、まず、実用性と再利用性を重視することである。また、利用者に応じて、テストケースを詳細に記述する必要がある。各テストケースの目的を明確化するとともに、添付されたテストデータは「そのまま」使用するのか、それともサンプルとしてテストデータを示しているだけなのかを明記する。そしてメンテナンス可能なフォーマットを使用すること。
TechTargetジャパンへのご登録はお済みですか?
**「TechTargetジャパン」メンバーシップのご案内**
会員登録を行うことで、300点以上の技術資料がそろったホワイトペーパーや興味・関心分野ごとに情報を配信するメールマガジン、ITmediaや@ITの特集記事がPDFでまとまって読める電子ブックレットなど、各種サービスを無料で利用できます。**会員登録(無料)はこちらから**
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
2
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
3
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
4
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
5
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
6
【漫画付き】ひとり情シス協会が明かす、RAG導入でしくじる企業「2つの共通点」
-
7
AI時代のITインフラ戦略とは? 販売代理店が知っておきたい最新トレンド
-
8
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
9
人間のせいでAIエージェントの生産性が上がらない
-
10
「IBM i(AS/400)はクローズドなシステム」という誤解 DXに寄与する一歩
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー