テスト技法|JSTQB FLシラバスをイラストベースでまとめてみた4
はじめまして、QAエンジニアの富永です。
本記事ではJSTQB FL(Foundation Level)の概要を初心者向けにまとめていきたいと思います。
JSTQB FLシラバスをイラストベースでまとめてみた1「テストの基礎」
JSTQB FLシラバスをイラストベースでまとめてみた 2「ソフトウェア開発ライフサイクル全体を通してのテスト」
JSTQB FLシラバスをイラストベースでまとめてみた 3「静的テスト」
第4回目は「テスト技法」です。
JSTQB FL(Foundation Level)とは
JSTQB FL(Foundation Level)とは、ソフトウェアテスト技術者の入門的な資格です。
「テストとは」から始まって「具体的なテスト技術」まで学ぶことが出来ます。資格試験は年に2回あり、だいたい8月と2月に行われています。
合格率が50%前後なので、テストを初めて学ぶ方にも十分可能性がある資格試験となっています。
ちなみに筆者は勉強を始めて3か月ほどで取得しました。
4.1 テスト技法のカテゴリ
テスト技法とはテスト条件、テストケース、テストデータを決定(テスト分析、設計)するための方法。
シラバスではブラックボックス、ホワイトボックス、経験ベースにカテゴリしている。
ブラックボックス
ソフトウェア要件、仕様、ユースケースなどからテスト分析、設計を行う
ホワイトボックス
コード、ソフトウェアアーキテクチャ、詳細設計などからテスト分析、設計を行う
経験ベース
テスト担当者、開発担当者、ユーザーなどの経験からテスト分析、設計を行う
4.2 ブラックボックステスト技法
代表的なブラックボックステスト技法
①同値分割法
同等に処理されると想定したデータすべてを同じパーティションに振り分け、各パーティションから少なくても1個の値を選んでテストする方法
例えば、20歳以上と20歳未満の人で値段が違うチケットがあるとします。
年齢を入力した際に自動で値段が確定するシステムのテストを行うことを考えると「20歳以上」と「20歳未満」の2つのケースを考えればOK。
②境界値分析
同値分割法の拡張で、パーティションが数値または順序付け可能な値で構成される場合に、パーティションの最小値と最大値(または最初の値と最後の値)を選んでテストする方法
例えば、同値分割方法と同じ例だと、「0歳」、「19歳」、「20歳」、「130歳(上限は適当)」のケースを考えればOK。
③デシジョンテーブルテスト
条件と結果的に起こる動作を表の行、条件の一意な組み合わせとその結果として実行するアクションにより表される判定規則を表の列とし、規則ごとにテストする方法
例えば、男性は10%OFF」、「女性と子供は30%OFF」、「老人は50%OFF」というルールがあった場合、以下のようなデシジョンテーブルになる。
■デシジョンテーブル作成とテストケース作成の流れ
④状態遷移テスト
無効と有効の状態遷移を実行するテストケースを設計する方法
システムの動きや流れのテストなどをする時に使用する
例えば、ストップウォッチの動きを状態遷移図と状態遷移表に表すと以下のような状態遷移図、状態遷移表になる。
■状態遷移表作成とテストケース作成の流れ
⑤ユースケーステスト
ユースケースのシナリオを実行するテストケースを設計する方法
例えば、レンタルビデオ屋さんでビデオを貸す場合以下のようなユースケース図、ユースケース記述になる
■テストケース作成の流れ
4.3 ホワイトボックステスト技法
①ステートメントテストとカバレッジ
実行可能なステートメントをテストする
※ステートメント:実行の最小単位
②デシジョンテストとカバレッジ
判定をテストする
4.4 経験ベースのテスト技法
①エラー推測
②探索的テスト
テスト設計・実行・ログ記録・評価を同時に行うということ。
テストベースに加えてテスト実行結果の情報を元にしたテストを考えられるというメリットがある
③チェックリストベースドテスト
※ハイレベルなチェックリスト:抽象的な事前条件で作成されたもの
例)
・三辺の長さとして、5,5,5を入力すること(ローレベル)
・三辺の長さとして、同じ値の自然数3つを入力すること(ハイレベル)
お問合せはお気軽に
https://service.shiftinc.jp/contact/
SHIFTについて(コーポレートサイト)
https://www.shiftinc.jp/
SHIFTのサービスについて(サービスサイト)
https://service.shiftinc.jp/
SHIFTの導入事例
https://service.shiftinc.jp/case/
お役立ち資料はこちら
https://service.shiftinc.jp/resources/
SHIFTの採用情報はこちら
https://recruit.shiftinc.jp/career/