Upgrade to Pro — share decks privately, control downloads, hide ads and more …

use-case-testing2016s

k.i.
July 31, 2016

 use-case-testing2016s

WACATE2016夏という勉強会の資料のうち、私が作成した部分(ユースケーステストの説明)を抜粋して少し整えたもの。テスト設計のワークをする前に設けられた、テスト技法のおさらいをする目的のセッションでした。勉強会が終わってまもなく作成した資料です。
別の場所で公開していますが、現状メインで使っているのはこちらのspeakerdeckであるため、アップロードしてみました。
名前が他のスライドと違いますが、同一人物です。
(記 2023年11月)

k.i.

July 31, 2016
Tweet

More Decks by k.i.

Other Decks in Technology

Transcript

  1. この資料について •ユースケーステストについて説明してみた資料。 •ベースは、WACATE2016夏という勉強会の資料。 • 中でも、テスト設計のワークをする前に設けられた、テスト技法のおさらいをする 目的のセッションの資料のうち、筆者が作成した部分。 • 但し、本資料は、 WACATE2016夏のためではなく、筆者個人の思いと判断で作成 したもの。

    •ベースとの主な違いは、話しただけの部分や追加情報を補足したこと。 • 1年後の自分でも読める資料にすることを念頭に置いて更新。 • ワークの前提という位置づけではなく、テスト技法の紹介をすると仮定した場合に 書いたであろう情報を追加。 2
  2. 「顧客が映画館のチケットをオンラインで購入する」ユースケース記述(主な部分) 7 1 顧客 映画を選ぶ 2 システム 選択可能なチケット種類を表示する … 7

    顧客 購入ボタンを押す 8 システム 購入情報を登録し、決済システムに情報を送信する 9 システム チケット番号をメールで送信する
  3. ユースケーステスト 「顧客が映画館のチケットをオンラインで購入する」ユースケース記述(主な部分) …ここから考えられる「顧客が映画館のチケットをオンラインで購入する」テスト ◦ 画面を開いて映画を選択する ◦ →チケット種類が画面に表示されるので、選択する ◦ → …

    ◦ →購入したチケットの番号をメールで確認できることを検証する 8 1 顧客 映画を選ぶ 2 システム 選択可能なチケット種類を表示する … 7 顧客 購入ボタンを押す 8 システム 購入情報を登録し、決済システムに情報を送信する 9 システム チケット番号をメールで送信する
  4. 手順 •ユースケース記述が既にある場合 • 要求定義など上流でつくられている場合は、ベースにしてテストを考 える • 但し、更新が必要なこともある • 最新でない場合 •

    スコープや仕様の変更は反映されているか • テストの検討に使うには過不足がある場合 • 範囲や抽象度がちょうどいいとは限らない •ユースケース記述がない場合 …次ページから手順を説明 • ユースケース記述をつくって、テストを考える 11
  5. 手順 映画館のオンラインチケット購入システム チケットを買いたい 座席を予約したい 顧客 劇場の窓口の 受付担当者 システム管理者 … …

    STEP1:利用例は? 関わる人やシステム(役割)は? 人やシステムごとに シナリオが変わる場合も 例:一般ユーザと管理者 人やシステムは役割毎に出す 1人=1役割とは限らない 12
  6. 手順 顧客がチケットを購入する 1 顧客 映画を選ぶ 2 システム 選択可能なチケット種類を表示する … 7

    顧客 購入ボタンを押す 8 システム 購入情報を登録し、決済システムにデータ送信する 9 システム チケット番号をメールで送信する STEP2:どんなシナリオになる? 13
  7. 「顧客がチケットを購入する」3つのフロー 1 … 2 7 8 9 9a 8a-2 フロー:

    1→2…7→8→9 1→2…7→8a-1→8a-2 1→2…7→9a … 9a メールアドレスが登録されていない 9a システム チケット番号を画面表示する(メール送信なし) 8a 決済に失敗する 8a-1 システム 決済エラーを登録し購入失敗を表示する 8a-2 顧客 トップページに戻る 1 顧客 映画を選ぶ 2 システム 選択可能なチケット種類を表示する … 7 顧客 購入ボタンを押す 8 システム 購入情報を登録し決済システムにデータ送信する 9 システム チケット番号をメールで送信する 8a-1 15
  8. 「顧客がチケットを購入する」3つのフロー 1 … 2 7 8 9 8a 決済に失敗する 8a-1

    システム 決済エラー情報を登録し購入失敗を表示する 8a-2 顧客 トップページに戻る 9a 8a-2 フロー: 1→2…7→8→9 1→2…7→8a-1→8a-2 1→2…7→9a 1 顧客 映画を選ぶ 2 システム 選択可能なチケット種類を表示する … 7 顧客 購入ボタンを押す 8a-1 … 9a メールアドレスが登録されていない 9a システム チケット番号を画面表示する(メール送信なし) 8 システム 購入情報を登録し、決済システムにデータ送信する 9 システム チケット番号をメールで送信する 16
  9. 「顧客がチケットを購入する」3つのフロー … 1 … 2 7 8 9 8a 決済に失敗する

    8a-1 システム 決済エラー情報を登録し購入失敗を表示する 8a-2 顧客 トップページに戻る 9a 8a-2 フロー: 1→2→…7→8→9 1→2→…7→8a-1→8a-2 1→2→…7→9a 9a メールアドレスが登録されていない 9a システム チケット番号を画面表示する(メール送信なし) 9 システム チケット番号をメールで送信する 1 顧客 映画を選ぶ 2 システム 選択可能なチケット種類を表示する … 7 顧客 購入ボタンを押す 8 システム 購入情報を登録し、決済システムにデータ送信する 8a-1 17
  10. 注意点 2/2 ユーザの視点が中心であることをお忘れなく。 粒度が難しい。 映画一覧ファイルをエクスポートする …ユーザが達成したいこと ファイルの書込み開始位置をずらす …??? ユースケース記述やテストの過不足を確認するとよい。 仕様が複雑な場合、ユースケース記述つまり文章だけでは抜け漏れが判りにくい。

    関係する人やシステムとユースケース記述の紐付けに過不足はないか? ユースケース記述とテストの紐付けに過不足はないか? 表形式での情報整理や突合せをして確認するタイミングを設ける。 テストで使う具体的なデータは別途考える必要あり。 入力値など。 22
  11. 参考文献 はじめて学ぶソフトウェアのテスト技法, リー・コープランド (著), 宗 雅彦 (翻訳), 日経BP社 (2005/11/3) ユースケース実践ガイド―効果的なユースケースの書き方

    (OOP Foundations), アリスター コーバーン (著), Alistair Cockburn (著), ウルシステムズ株式会社 (著), 山岸 耕二 (著), 矢崎 博英 (著), 水谷 雅宏 (著), 篠原 明子 (著) , 翔泳社 (2001/11) 【改訂版】初歩のUML:第8回 顧客の要求をユースケースに反映させる  http://www.itmedia.co.jp/im/articles/0307/05/news002.html テスト技術者資格制度 シラバス  http://jstqb.jp/dl/JSTQB-SyllabusFoundation_Version2011.J02.pdf  http://jstqb.jp/dl/JSTQB-Syllabus.Advanced_TA_Version2012.J01.pdf テスト技法ポジショニングマップ  http://www.hayst.com/pages/positioning.aspx 第三者評価におけるシナリオテストプロセスの提案  https://www.juse.or.jp/sqip/workshop/report/attachs/2011/SQiP5-B.pdf 特に感謝!:本資料のベースとなった資料をレビューし意見をくださったWACATE2016夏の実行委員とOBの皆さん 23