Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Explore It! ワークショップをやってみた
Search
Atsushi Nagata
June 19, 2025
0
5
Explore It! ワークショップをやってみた
探索的テストの本Explore It をベースにワークショップのネタを考えてみました
Atsushi Nagata
June 19, 2025
Tweet
Share
More Decks by Atsushi Nagata
See All by Atsushi Nagata
BDD の実例マッピングのワークショップ
nagworld
0
24
アジャイル開発における品質保証部門によるシステムテストのアプローチ
nagworld
0
44
サイボウズにおけるアジャイル開発とドキュメント
nagworld
0
1.2k
品質観点でみたインセプションデッキとその改善
nagworld
1
1k
結合テストの自動化にQAはどうかかわっていったか
nagworld
0
2.5k
シン・モブプログラミング 第三形態
nagworld
0
170
社内勉強会で学んだQA2AQパターンの活用
nagworld
0
620
Improvement of Root cause analysis with iterative process
nagworld
0
170
反復プロセスと欠陥モデリングによる ソフトウェア要因分析の改善
nagworld
0
360
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Building Applications with DynamoDB
mza
96
6.6k
Faster Mobile Websites
deanohume
309
31k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.8k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Typedesign – Prime Four
hannesfritz
42
2.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Practical Orchestrator
shlominoach
190
11k
The Cult of Friendly URLs
andyhume
79
6.5k
Fireside Chat
paigeccino
39
3.6k
Transcript
Explore It! 勉強会 探索テストのワークショップ ON TESTING AND EXPLORATION 2022/2/1 COPYRIGHT
© ATSUSHI NAGATA 1
学習の目的、狙い 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 2 • 探索的テストとは何かを理解する •
探索的テストのプロセスと技術を学ぶ • まず、体験してみる サイボウズにおけるテストのオプションを増やしたい シン・探索的テストを学ぶ
アジャイルテスティングの4象限 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 3
テストの二つの考え方 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 4 1. 想定した条件で、意図どうりの動作をしているか? ⇒チェック(この本でCheckingと呼んでいる)
2. ほかにリスクはあるか? ⇒ 探索 “二つの重要な質問”に答えるテスト戦略が必要
チェック 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 5 ネット:網の交点が想定したテストポイント 事前に“想定した”ことを、確かめる 網の目が小さいほど、チェックによるカバー率は高くなる
探索 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 6 探索は、“想定していない”障害を探ること 探索的テストでは、 ネットがカバーしていない(チェックではできない)領域
を探し回ることになります。
Elisabethの探索テストの定義 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 7 “テスト実行結果で得た知見を次のテストに生かす” “テスト設計し、すぐに実行してしまう”
探索的テスト 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 8 テスト 実行 学習
テスト 設計 これが高速に回る
システムを学習するという姿勢 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 9 テスト結果の注意深い観察 バグが潜んでいる かもしれない場所
微妙な手がかり、におい システムの癖 自分の想定を超えて観察をする システムの特異性
テストの舵を切る 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 10 試行(テスト)を重ねる ソフトウェアの挙動につい て理解が深る
ソフトウェアが苦手とする 条件に気づき 発見すべき最も重要な情報に焦点を当てながら舵取りをする
テストの設計 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 11 学習したこと 経験 価値観
リスク認識 次に“テスト”:“試したい“こと システムの癖 システムの特徴 バグのにおい 好奇心 テスト設計技法 疑問 仮説
タイムボックスセッション 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 12 セッション 焦 点
を 決 め る 振 り 返 り か じ 取 り や す み 焦 点 を 決 め る 振 り 返 り
焦点を決める:チャーター 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 13 チャーター:憲章⇒プロジェクト憲章 目的、スコープ、責任;計画を立てるためのもの なぜ、探索的テストでチャーター?
詳細な計画は役に立たない:すぐに変わるかもしれない ”想定外“を探る冒険だから なんでテストをするか、何を探そうとするか、どこを探索する のか、それでなにが得られるのか でも、目的、指針、それを支える意思の表明は必要
ワークショップ 2月1日 手順 1. 軽い復讐 2. 作ったチャーターをちょっと共有 3. ロールの簡単な説明 4.
セッション: 10分 + 振り返り3分 : 3セッション 5. 記録したいこと 1. チャーターの修正(かじ取り) 2. 最初のテスト 3. 何回テストしたか 4. 学んだこと 5. かじ取りした回数 6. 不具合の情報 7. 不具合の回数 6. 振り返り 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 14
ロール:ドライバ 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 15 ドライバの画面を共有 テスト対象アプリ画面を出して、テストする
ロール:ナビゲータ 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 16 ドライバと伴走 一緒に観察し、設計を考え、 次の一手をサポートする
ロール:記録 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 17 探索的テストはテストに集中するあまり なかなか記録が残らない:再現性が欲しい 記録は大局的に見て、次のかじ取りを考える際に有用
何手打ったか 不具合数 何を学んだか:かじ取りの回数 チャーターの修正 不具合の内容(スクショ)
ワークショップ 2月1日 手順 1. 軽い復讐 2. 作ったチャーターをちょっと共有 3. ロールの簡単な説明 4.
セッション: 10分 + 振り返り3分 : 3セッション 5. 記録したいこと 1. チャーターの修正(かじ取り) 2. 最初のテスト 3. 何回テストしたか 4. 学んだこと 5. かじ取りした回数 6. 不具合の情報 7. 不具合の回数 6. 振り返り 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 18
テストは両者必要 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 19 テスト = チェック
+ 探索
探索的テストだけだと 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 20 ウィキペディアより 群盲象を評す
探索的テストとアドホックテスト 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 21 IT用語辞典 e-Words “アドホックは探索ではなく、放浪です”
放浪 = “その場の思い付きでの操作”
2022/2/1 COPYRIGHT © ATSUSHI NAGATA 22 お楽しみに 皆さん、どんどん現場で 試してみてください!! 次回は、よりよくするノウハウなど
ご紹介していきます
探索的テストのチャーターのテンプレートの例 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 23 ⚫ テストのターゲット どこを探索するのか:
どの機能:どの要求に対して?:どのモジュールをテストする? ⚫ どのような情報をもとめているのか? 使いにくいところ、わかりにくいところ、 弱いところ、性能、信頼性、セキュリティ ⚫ リソース 探索にあたり、使えるリソース:ツール、データセット、技法
完璧なテストを目指して:テストの7原則 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 24 1. テストは欠陥があることは示せるが、欠陥がないことは示せない 2.
全数テストは不可 3. 早期テストで時間とコストを節約 4. 欠陥の偏在 5. 殺虫剤のパラドックスにご用心 6. .テストは状況次第 7. 「バグゼロ」の落とし穴 包括的なテストケースを完璧にそろえることではない JSTQB Foundation Level シラバス http://jstqb.jp/syllabus.html
探索テストの定義 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 25 James Bach “探索的テストとは、学習、テスト設計、テスト実行の同時進行である”
"システムについて学ぶためのテストの設計・実行し、 前回の実験(テスト)で得た知見を次のテストに生かす“ Elisabeth Hendrickson
テストの実行 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 26 即時実行 事前に”すべての”テストを設計することはない 実行してみないと、次に取り上げるべき“質問”は分からない
実行してみると、もっと先にテストするべきものが見えてくる 探索が始まったら、すぐ手を動かしテストを実行する つまり
テーマをまとめると 2022/2/1 COPYRIGHT © ATSUSHI NAGATA 27 チェックと探索の違い 包括的なテスト戦略にはチェックと探索両方が必要 探索的テストは
テストの結果から、システムについて学ぶ 学んだ知見から、 最適な次のテストにかじ取りをして行う それを短いイテレーションで行う