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
-
事例
[日本オラクル株式会社] ピンチをチャンスに変えたEPR製品は? 先行企業の導入事例3選 -
技術文書・技術解説
[日本オラクル株式会社] 無自覚なリスク 秘伝Excelファイルが監査の壁、不正・ミスの温床となる理由 -
製品資料
[日本オラクル株式会社] 戦略的経理の第一歩 失敗のない「脱Excel」を実現する秘訣とは? -
技術文書・技術解説
[日本オラクル株式会社] いまさら聞けないオンプレERPとクラウドERPの違い 最適な製品をどう見極める? -
事例
[株式会社ビザスク] 連結売上高が約2倍に成長、富士フイルムが実践した新規事業創出の戦略とは?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
2
1200万円のSaaS導入を回避 スギ薬局「運用費10万円」のAIエージェント構築術
-
3
年収700万超エンジニアに共通するスキルと「もっと勉強すべきだった分野」
-
4
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
5
クラウド資格コレクターは評価されない? 年収1000万を分ける“OSの理解度”
-
6
脱VMwareか、継続か? 仮想化ソフト主要6製品の機能とスペックを徹底比較
-
7
JSONをやめてPythonで送る トークン消費を約7割抑えるAIの設計
-
8
「0.3秒のスピード顔認証」の入退室管理が社員に好評 事例に学ぶオフィス改革
-
9
「ノートPC派」は損をしている? Dellと考える“自作PC”のメリット
-
10
慶應義塾が「Notion」を選んだ理由 AI導入の盲点になる“情報のサイロ化”
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
DX/AI投資の壁を突破、現代の最高財務責任者が直面する課題と克服のヒント
-
3
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
4
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
5
システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
-
6
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
7
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
8
“あのファイル転送”で暗躍するノーウェアランサム
-
9
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー