🎸

AIアシスタントChatGPTを活用:同値分割法による効果的なテスト設計 JSTQB Foundation Level新シラバスのキーワード

2023/12/06に公開

同値分割法とは?

同値分割法(Equivalence Partitioning, EP)は、一般的なテスト技法の一つです。この技法では、テスト対象のデータを「同値パーティション」と呼ばれるグループに分割し、各パーティションの要素がテスト対象に対して同等に処理されると仮定します。

動画解説はこちら!

動画リンク

詳細な説明は「同値分割法:効率的なテストケース設計のための基本ガイド JSTQB Foundation Level新シラバスのキーワード解説!」を参照してください。

ChatGPTを使った例

画像リンク

入力文章

以下のように入力します。

オンラインフォームでユーザーが自身の年齢を入力します。このフォームは10歳から100歳までのユーザーを対象に設計されています。
同値分割法で有効パーティション、無効パーティションに分け、テストケースを作成してください。

入力時のポイント

  • 要件を明確に入力すること
    • このフォームは10歳から100歳までのユーザーを対象に設計されている。
  • させたいことを明確にすること
    • 同値分割法で有効パーティションと無効パーティションに分ける。
    • テストケースを作成する。

論理的に指示をしないと、適切な回答が返ってこない可能性があります。

ChatGPTの回答

同値分割法に基づいてオンラインフォームのテストケースを作成する際には、まず有効な入力値(10歳から100歳まで)と無効な入力値を識別する必要があります。以下に、年齢入力フォームの有効パーティションと無効パーティションを定義します。

有効パーティション

  1. 下限境界近傍の値: 10歳(境界値)
  2. 上限境界近傍の値: 100歳(境界値)
  3. 典型的な有効値: 55歳(下限と上限の間の任意の値)

無効パーティション

  1. 下限境界未満の値: 9歳(下限より小さい値)
  2. 上限境界超過の値: 101歳(上限より大きい値)
  3. 非数値入力: 文字列や特殊文字(例: "二十歳", "@#¥%")

テストケースの例

  1. 有効パーティションのテストケース:

    • テストケース 1: 年齢を10歳と入力。
    • テストケース 2: 年齢を100歳と入力。
    • テストケース 3: 年齢を55歳と入力。
  2. 無効パーティションのテストケース:

    • テストケース 4: 年齢を9歳と入力。
    • テストケース 5: 年齢を101歳と入力。
    • テストケース 6: 年齢入力欄に"二十歳"と入力。
    • テストケース 7: 年齢入力欄に特殊文字("@#¥%")を入力。

これらのテストケースを通じて、フォームが有効な入力値を適切に処理し、無効な入力値に対して適切なエラーメッセージを表示するかどうかを確認できます。

メリット

今回の例では、無効パーティションとして2バイト文字や特殊文字も考慮に入れてくれました。筆者は数値のみの前提で考えていたため、ChatGPTが抜け漏れを防止するのに役立ちました。

最後に

きちんとした答えが返ってきたら、褒めましょう(笑)
よかったことを伝えると、回答の精度が上がる気がします。

Discussion