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
継続的テストモデルを実現するためにスリーアミーゴスを用いた10Xでのシフトレフトの事例
Search
nihonbuson
PRO
March 28, 2024
Technology
3
1.8k
継続的テストモデルを実現するためにスリーアミーゴスを用いた10Xでのシフトレフトの事例
nihonbuson
PRO
March 28, 2024
Tweet
Share
More Decks by nihonbuson
See All by nihonbuson
テストを実施する前に考えるべきテストの話 / Thinking About Testing Before You Test
nihonbuson
PRO
15
2.4k
テストコードにはテストの意図を込めよう(2025年版) #retechtalk / Put the intent of the test 2025
nihonbuson
PRO
17
2.9k
ソフトウェアテスト 最初の一歩 〜テスト設計技法をワークで体験しながら学ぶ〜 #JaSSTTokyo / SoftwareTestingFirstStep
nihonbuson
PRO
6
700
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB #JaSST #JaSSTTokyo / Readable test code
nihonbuson
PRO
14
13k
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
PRO
3
7.9k
シフトライトなテスト活動を適切に行うことで、無理な開発をせず、過剰にテストせず、顧客をビックリさせないプロダクトを作り上げているお話 #RSGT2025 / Shift Right
nihonbuson
PRO
4
3.5k
品質管理の歴史学 / Quality Management History
nihonbuson
PRO
42
14k
境界値分析
nihonbuson
PRO
4
440
振る舞い駆動開発(BDD)における、テスト自動化の前に大切にしていること #stac2024 / BDD formulation
nihonbuson
PRO
7
3.8k
Other Decks in Technology
See All in Technology
Zephyr RTOSを使った開発コンペに参加した件
iotengineer22
0
130
Lambda Web Adapterについて自分なりに理解してみた
smt7174
5
140
WordPressから ヘッドレスCMSへ! Storyblokへの移行プロセス
nyata
0
330
rubygem開発で鍛える設計力
joker1007
2
270
Tokyo_reInforce_2025_recap_iam_access_analyzer
hiashisan
0
140
GitHub Copilot の概要
tomokusaba
1
150
React開発にStorybookとCopilotを導入して、爆速でUIを編集・確認する方法
yu_kod
1
100
事業成長の裏側:エンジニア組織と開発生産性の進化 / 20250703 Rinto Ikenoue
shift_evolve
PRO
1
130
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
1.3k
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
200
LangSmith×Webhook連携で実現するプロンプトドリブンCI/CD
sergicalsix
1
150
ビギナーであり続ける/beginning
ikuodanaka
1
200
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
134
9.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
A Tale of Four Properties
chriscoyier
160
23k
Embracing the Ebb and Flow
colly
86
4.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Raft: Consensus for Rubyists
vanstee
140
7k
Balancing Empowerment & Direction
lara
1
390
Documentation Writing (for coders)
carmenintech
72
4.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
940
Unsuck your backbone
ammeep
671
58k
BBQ
matthewcrist
89
9.7k
Transcript
©2024 10X, Inc. 継続的テストモデルを実現するために スリーアミーゴスを用いた 10Xでのシフトレフトの事例 シフトレフトテストの推進と今後の展望 風間 裕也(ブロッコリー) #shiftleft_autify_findy
©2023 10X, Inc. 2 自己紹介 • 風間裕也(ブロッコリー) • 所属 ◦
株式会社10X 品質管理部 ◦ 株式会社iCARE フェロー(QAE技術顧問) ◦ B-Testing(個人事業主) • 社外活動 ◦ JaSST Review実行委員長 ▪ ソフトウェアレビューシンポジウム ◦ WACATE実行委員長 ▪ ソフトウェアテストの合宿型ワークショップ形式勉強会
©2023 10X, Inc. にてキャリアの記事を寄稿しました 3 高速道路の出口案内のようなQAエンジニアでありたい ─自動テストより前にやるべきことがあると気づいた話
©2024 10X, Inc. 継続的テストモデルを実現するために スリーアミーゴスを用いた 10Xでのシフトレフトの事例 シフトレフトテストの推進と今後の展望 風間 裕也(ブロッコリー) #shiftleft_autify_findy
©2023 10X, Inc. 5 「継続的テストモデル」とは何か
©2023 10X, Inc. 継続的テストモデル 6 「継続的テストモデル」とは何か Continuous Testing in DevOps…
に掲載の画像を元に発表者が翻訳
©2023 10X, Inc. 継続的テストモデル 7 「継続的テストモデル」とは何か Continuous Testing in DevOps…
に掲載の画像を元に発表者が翻訳 テストの 範囲に なりがち
©2023 10X, Inc. シフトレフトで行うテスト 8 「継続的テストモデル」とは何か Continuous Testing in DevOps…
に掲載の画像を元に発表者が翻訳 コード実装前 に行う テストがある
©2023 10X, Inc. シフトライトで行うテスト 9 「継続的テストモデル」とは何か Continuous Testing in DevOps…
に掲載の画像を元に発表者が翻訳 リリース後 に行う テストがある
©2023 10X, Inc. 継続的テストモデル 10 「継続的テストモデル」とは何か テストはフェーズ ではなく アクティビティである
©2023 10X, Inc. 11 今回発表する シフトレフトテストの範囲
©2023 10X, Inc. シフトレフトで行うテスト 12 今回発表するシフトレフトテストの範囲 Continuous Testing in DevOps…
に掲載の画像を元に発表者が翻訳 コード実装前 に行う テストがある
©2023 10X, Inc. CODE時点でのテスト活動(今回は話しません) 13 今回発表するシフトレフトテストの範囲 TDD など
©2023 10X, Inc. PLANやBRANCH時点でのテスト活動 14 今回発表するシフトレフトテストの範囲 今回の 事例
©2023 10X, Inc. 15 「スリーアミーゴス」とは何か
©2023 10X, Inc. 16 「スリーアミーゴス」とは何か スリーアミーゴスとは何か 引用:Agile Testingのエッセンス #devsumi
©2023 10X, Inc. 実例マッピングという手法で整理することもできる 17 「スリーアミーゴス」とは何か 払い戻しを 処理する 14日以内なら 返品できる
払い戻しには 購入の証明が 必要 先週買った ケトルを 返金したい →営業が 払い戻しの 処理を行う アイテムの 在庫数を増やす 領収書がない →銀行の明細書 を使って マネージャが 払い戻しの 処理を行う お客に お金を返す 倉庫内の人に 返品が来たこと を伝える
©2023 10X, Inc. 実例マッピングについて詳しくはこちら 18 「スリーアミーゴス」とは何か 事例から学ぶ実例マッピングのやり方 【翻訳記事+α】受け入れ基準の 設定時などに役立つプラクティス 「実例マッピング(Example
Mapping)」
©2023 10X, Inc. 19 スリーアミーゴスを用いた 受け入れ基準作成時の テスト活動の事例
©2023 10X, Inc. 適用したタイミング 20 スリーアミーゴスを用いた受け入れ基準作成時のテスト活動の事例 スプリント プランニング レトロ スペク
ティブ リファイン メント スクラムとは(オージス総研) を参考に一部書き換え ※リファインメントは スクラムイベントではない
©2023 10X, Inc. 元々の受け入れ基準 • hogehogeメソッドが注文の締め切り時間の前に 呼ばれているので対応する 21 スリーアミーゴスを用いた受け入れ基準作成時のテスト活動の事例
©2023 10X, Inc. 出てきた疑問点 • hogehogeメソッドが注文の締め切り時間の前に 呼ばれているので対応する 22 スリーアミーゴスを用いた受け入れ基準作成時のテスト活動の事例 これって、アプリの振る舞いで言うと、
どの画面のどんな操作なんですかね? QA
©2023 10X, Inc. 修正後の受け入れ基準 hogehogeメソッドが注文の締切時間の前に 呼ばれているので対応する ⇨ ・注文変更の締切時間の前の場合、パッキング画面で
「完了」ボタンを押したときにエラーにする。 かつ、エラーを表示したあと前画面に戻る。 ・注文変更の締切時間の前の場合、パッキング画面で 「完了」ボタンを押さなくても15秒後にエラーを返す。 かつ、エラーを表示したあと前画面に戻る。 23 スリーアミーゴスを用いた受け入れ基準作成時のテスト活動の事例
©2023 10X, Inc. 修正後の受け入れ基準 hogehogeメソッドが注文の締切時間の前に 呼ばれているので対応する ⇨ ・注文の締切時間の前の場合、パッキング画面で
「完了」ボタンを押したときにエラーにする。 かつ、エラーを表示したあと前画面に戻る。 ・注文の締切時間の前の場合、パッキング画面で 「完了」ボタンを押さなくても15秒後にエラーを返す。 かつ、エラーを表示したあと前画面に戻る。 24 スリーアミーゴスを用いた受け入れ基準作成時のテスト活動の事例 何をもって、 このタスクが完了となるのか ハッキリした
©2023 10X, Inc. 余談:シフトレフトの活動を行うと良いこと • 早い段階で行うべきことがハッキリしていると、 バグが混入されづらくなり、追加コストが不要になる ◦ バグチケット起票のコスト ◦
開発内容を思い出すコスト ◦ 修正するコスト ◦ もう一度テストするコスト ◦ 関連部分にデグレードが無いか確認するコスト ◦ 起票したバグチケットを完了にするコスト 25 スリーアミーゴスを用いた受け入れ基準作成時のテスト活動の事例
©2023 10X, Inc. その他のシフトレフトで行うテストの事例 26 スリーアミーゴスを用いた受け入れ基準作成時のテスト活動の事例 TODOリストの整理を通じて 実行すべきテストを考える #tddbc 「テストは単純作業ではなく創造的な活動だ」
という意識を浸透させた物語 #RSGT2021
©2023 10X, Inc. 27 おわりに
©2023 10X, Inc. 28 おわりに まとめ • シフトレフトとシフトライトを整理した表現の1つに 継続的テストモデルがある ◦
テストはフェーズではなくアクティビティである • スリーアミーゴスという取り組みを用いて、 受け入れ基準作成時からテストを考える ◦ 払い戻しの処理の例 ◦ アプリの振る舞いをハッキリさせた事例
©2023 10X, Inc. 継続的テストモデル(再掲) 29 おわりに
©2023 10X, Inc. シフトライトの事例を知りたい方は…… 30 おわりに テストの完了をゴールにしない!~仮説検証を繰り返し、開発・QA・ユーザーが 交流しながら開発することで見えてくる理想の姿~ - #RSGT2024
#DevSumi / Shift left and Shift right
©2023 10X, Inc. 31 ご清聴ありがとうございました おしまい