Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
テスト自動化のツボ
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Takahashi Kohei
April 06, 2015
Technology
46
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
テスト自動化のツボ
Takahashi Kohei
April 06, 2015
More Decks by Takahashi Kohei
See All by Takahashi Kohei
ファシリしてますか?
takkohei
0
27
Other Decks in Technology
See All in Technology
[JAWS-UG彩の国埼玉#12]そろそろ準備する?re:Invent2026をやさしく解説 / reinvent2026-sainokuni
sh_fk2
1
350
M5Stackで作る BLEマウス GPSログの世界
tomokusaba
PRO
0
430
AIカンパニーへの転換を支えた、エンジニアの仕事の再定義
kworkdev
PRO
2
1.3k
Kiro Crewをはじめよう
kizawa2020
1
160
AI駆動で「他アプリの音を加工できる」アプリを作った
satomasahiro2005
0
170
触りたくないデータに、どう触るか AI時代のRBACアクセスガバナンス
ivry_presentationmaterials
0
270
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
630
ウォンテッドリーの最近のプロダクトと技術の紹介
stomk
0
120
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
Persisting Massive Data with Rails ~Designing for 60 billion rows, and fighting the bottlenecks~ Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
0
730
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
190
WasmをRustにする
sansantech
PRO
0
250
Featured
See All Featured
Mind Mapping
helmedeiros
1
400
Music & Morning Musume
bryan
48
7.4k
BBQ
matthewcrist
90
10k
The Limits of Empathy - UXLibs8
cassininazir
2
720
A Tale of Four Properties
chriscoyier
163
24k
The Curious Case for Waylosing
cassininazir
1
570
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
480
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
730
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
Chasing Engaging Ingredients in Design
codingconduct
0
360
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
930
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
530
Transcript
テスト自動化のツボ ~システムテスト自動化の失敗と成功~
自己紹介 名前:髙橋耕平 人種:ソフトウェアテストエンジニア 主なミッション: アジャイルテスティング 品質指標の分析と活用 システムテスト自動化 Twitter:@tak_kohei mailto:
[email protected]
「テスト自動化」 してますか?
「テスト自動化」 続いてますか?
生存期間の理想形 開発 運用 改修 運用 自動システムテスト Check Check Check Check
Check Check Check Check Check 製 品 と 共 に 生 き 続 け る Check Check Check Check Check Check
でも続けていくのは難しい 気付かずに 踏んじゃう 罠 多数!
失敗した自動テストの末路
テスト自動化失敗の原因 失敗原因の多くは 技術面 ではなく
期待と現実のギャップ ≠
失 敗 を ど う や っ て 克 服
し て き た の か メ イ ン テ ー マ
目次 過去 現在 未来
目次 過去 現在 未来
過去の失敗事例 1. スコープ 2. コスト 3. 品質と納期
過去の失敗事例 1. スコープ 2. コスト 3. 品質と納期
何を自動化対象とするか 手動テストケースを再利用? 過去の手動テストを自動化? 手動回帰テストを不要にする?
期待 「人の作業が置換できる」 「人と交代してくれる」
現実 テストケースの変換が必要 無意味な自動テストケースの量産 “自動化率”というバズワード
結論 手動テストケースは人間用 知恵は自動化できない 知恵抜きでは意義が失われる
TIPS:TestingとChecking 自動テストはChecking Testingは賢く人間が行う 自動テストの設計にこそ賢さを
過去の失敗事例 1. スコープ 2. コスト 3. 品質と納期
費用対効果をどう見積るか 手動テスト=実施工数×回数 自動テスト=開発工数 +(実行工数×回数) 実行回数が多ければコスト回収?
期待 「人手を減らせる」 「時間を短縮できる」
現実 運用コストが置き去り どれだけメンテナンスが必要か テスト結果NGの場合のコストも
結論 実行回数の多さはROIと無関係 運用コスト全体で考える メンテコストは技術で抑制できる
過去の失敗事例 1. スコープ 2. コスト 3. 品質と納期
品質と納期への効果 テスト自動化で品質が良くなる? テスト自動化で納期が早まる?
期待 「デグレを検出できる」 「品質が上がる」
現実 影響範囲を深堀りはしてくれない デグレが頻発するとお手上げ
結論①:品質 品質を上げるのは設計と実装 自動テストはコラボレーション基盤 必要なテストケースを皆で考える
結論②:納期 自動化してもバグが多ければ崩壊 納期は品質が生みだす 品質が上がれば納期も短くなる
目次 過去 現在 未来
成功を拾い集めた現在 1. テスト範囲 2. 自動化範囲 3. メンテナンス性 4. 継続性
成功を拾い集めた現在 1. テスト範囲 2. 自動化範囲 3. メンテナンス性 4. 継続性
担保する範囲を明確にする 手動テスト再利用論は妖しい香り 危なっかしい部分をテストする 単体テストと共闘しよう
成功を拾い集めた現在 1. テスト範囲 2. 自動化範囲 3. メンテナンス性 4. 継続性
半自動テストはやらない 実行前準備を全て自動にする 結果判定も全て自動にする 全て自動化できないなら諦める
誤解しないで欲しいこと 全自動を簡単に諦めちゃダメ 自動化する手段は生みの苦しみ 手段が無ければ自分で作ろう
成功を拾い集めた現在 1. テスト範囲 2. 自動化範囲 3. メンテナンス性 4. 継続性
メンテコストを小さくする 脱キャプチャリプレイツール 製品を自動テストにあわせる テストから仕様を分離する
TIPS:テストと仕様の分離 テスト対象 アプリケーション 要求理解と 画面操作 テスト スクリプト テスト対象 アプリケーション テスト
スクリプト 仕 様 変 更 が 入 っ た 場 合
TIPS:仕様変更時のメンテ テスト対象 アプリケーション 要求理解と 画面操作 テスト スクリプト テスト対象 アプリケーション テスト
スクリプト 修 正 は 1 個 所 の み
成功を拾い集めた現在 1. テスト範囲 2. 自動化範囲 3. メンテナンス性 4. 継続性
小さく作って繰り返す 理想は高くしておこうよ でも一度に多くはやらない 後戻りできるようにね
小さく作るのも難しい 歩幅と方角は常に確認する 優先順位を正しく見極める 崩さずに積み上げる為の設計
目次 過去 現在 未来
テスト自動化の恩恵 無駄や退屈からの解放 素早いフィードバック プロダクトに対する自信
自動テストを育む4C活動 Communication Collaboration Cultivation Continuation
現場はまだまだ問題だらけ 業務委託構造の壁 顧客との認識のズレ 人材の不足
諦 め ず に 走 り 続 け る それでもやっぱり大切な事
書籍のご紹介
Happy Test Automation for Our Future To Be Continued …