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
しくじり先生ーアジャイルテスト自動化立ち上げ迷走記 #D3QA / Failure teaches success in automated testing development
Search
ぱいん
October 29, 2019
Technology
1
3.1k
しくじり先生ーアジャイルテスト自動化立ち上げ迷走記 #D3QA / Failure teaches success in automated testing development
ぱいん
October 29, 2019
Tweet
Share
More Decks by ぱいん
See All by ぱいん
カジュアル面談って、もっとカジュアルに していいの / informal session #jasstnano
pineapplecandy
0
180
アジャイルQA2年生が、過去の自分に伝えたいこと #テストラジオ
pineapplecandy
0
160
PO,SMに送るテスト自動化の8原則に5箇条を添えて / scrumniigata2023
pineapplecandy
2
1.5k
システムテスト自動化スクリプトのレビュー観点を挙げてみたの
pineapplecandy
0
410
E2Eテストのflakyと向き合う / stac2020
pineapplecandy
2
5.5k
これからシステムテスト自動化を始める組織のための勉強会(公開用)
pineapplecandy
2
2.6k
#WACATE 2019夏_夜の分科会_情報交換会_公開用
pineapplecandy
0
1.2k
#オンライン飲み会 経験ベースで語るテストエンジニアのための英語術 Ver.0.190113
pineapplecandy
0
950
#WACATE 2018冬 夜の分科会「テストの困りごとを ぱいんとみんなで答える会」
pineapplecandy
0
350
Other Decks in Technology
See All in Technology
【リラン】AIの光と闇?失敗しないために知っておきたいAIリスクとその対応 ①政府の動き編
tkhresk
0
140
令和版ソフトウェアエンジニアの情報収集術 PHPカンファレンス香川2024
ysknsid25
4
910
スクラムに出会って「できた」を実感できるようになってきた話 / Scrum makes me feel like I can do it
yayoi_dd
2
110
RubyKaigi 2024 - Make Your Own Regex Engine!
makenowjust
1
180
多言語化対応における TypeScript の型定義を通して開発のしやすさについて考えた / TSKaigi TypeScript Multilingualization
nabeliwo
2
400
#phpconkagawa レガシーコードにもオブザーバビリティを 〜少しずつ始めるサービス監視〜
yamato_sorariku
0
570
20240516 OpenID TechNight Vol.21 「OIDFシェアードシグナルフレームワーク(ID2)を利用してリアルタイムでセキュリティシグナルを共有するための最新情報」
oidfj
0
170
YJIT Makes Rails 1.7x faster / RubyKaigi 2024
k0kubun
4
570
SLOいつ決めましょう?
abnoumaru
3
860
マルチテナントマルチクラスタKubernetesでもUXを損なわない認証認可の勘所
pfn
PRO
0
110
Laboratories in Science and Technology: Deep Neural Networks
keio_smilab
PRO
3
180
Password cracking: past, present, future
openwall
0
300
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
133
6.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
22
6.5k
Being A Developer After 40
akosma
67
580k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Writing Fast Ruby
sferik
622
60k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
245
20k
BBQ
matthewcrist
80
8.8k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
126
32k
Thoughts on Productivity
jonyablonski
60
3.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
15
1.6k
Building Applications with DynamoDB
mza
88
5.7k
Code Review Best Practice
trishagee
56
15k
Transcript
~アジャイルテスト自動化 立ち上げ迷走記~ 2019/10/29 @D-Cubeソフトウェアテスト・QA勉強会 ぱいん
自己紹介 • ぱいん • テスト会社 • テストエンジニア/QAエンジニア • ドメイン •
組込機器 • Webアプリ開発(通信、行政) • テスト自動化ツール開発 • 現在のメインのお仕事: • システムテスト自動化のテックリード • 社外活動 • SeleniumConf Tokyo実行委員 • JaSST Review(ソフトウェアレビューシンポジウム)実行委員 など • 趣味 • Twitter, Togetter • Bリーグ観戦(川崎ブレイブサンダース) ぱいん
背景 • アジャイルプロジェクト • 受託案件 • 開発メンバ:数十名規模 • スプリントサイクル:2週間
当時のスペック • ぱいん • 当時のメインのお仕事: • 平テストエンジニア(上司と2名) • それまでは手動テスト実行経験のみ •
社外活動 • 特になし • 趣味 • Twitter
None
なんちゃって QAフロントローディング 1. テストケース作成時の不明点から、 開発側へ仕様不明点を明確化を促進 • QAは業務資料をひたすら読み込んで、業務シナリオを整理 • 開発メンバからの信頼を得て、QAが要件レビューを行うなど 2.
開発との距離が近く改善は盛り込まれる • 自動化に必要なIDは実装時に埋めてもらう • 開発用バッチを見ながらテストデータ作成ツールを作る
アジャイルQA楽しい!
社外コミュニティとの出会い、成長 1. Seleniumのコミュニティに出会う 2. Stack Overflowを読み漁る日々 ⇒昨日、出来なかったことが今日できるようになる 作ったコードが自分の代わりにテストしてくれる
テスト自動化楽しい
QAチームに課せられたミッション •PO「デグレを検知するために画面遷移の E2E自動テストを作ってほしい。Selenium で。」 •ぱいん「わかりましたっ!(キリッ」 •PO「現在はモックだ」 •ぱいん「わかりましたっ!(キリッ?」
ぱいんの数字① 1から15
ぱいんの数字① 自動化エンジニアの数 1から15
None
テストコードのメンテ辛い① • オフショアからのQ&A対応で時間が溶ける日々
テストコードのメンテ辛い② • 画面遷移が目まぐるしく変わる • 実装優先で画面遷移図が追従しない Click
テストコードのメンテ辛い② • 画面遷移が目まぐるしく変わる • 実装優先で画面遷移図が追従しない Click 注意 相手が嫌がる言動 はやめましょう 了解
Click
テストコードの増加が止められない • テストコードメンテの間にも、新機能は増えていく • テストケース新規作成メンバは、黙々とテストコードを増やし ていく
• テストコードメンテの間にも、新機能は増えていく • テストケース新規作成メンバは、黙々とテストコードを増やし ていく メンテ 新規 時間 テストコードの増加が止められない Q&A
しくじり(失敗)まとめ 1. テストコードのメンテが辛い 2. テストコードの増加が止められない • 終わらないQ&A対応 • 画面遷移への無限追従
学び その先へ
学び • 一気に自動化をスケールさせようとしない • 上司の方針を鵜呑みにしない • テスト自動化をする目的、必要性 • 開始するタイミングは開発フェーズとして合っているか •
QAエンジニアがやるのが適任なのか
その先へ • 2名体制で、シナリオテストの自動化を行う • シナリオ数をゆっくり増やす:1⇒3⇒5 • メンテの工数、作成工数、LOCを計測 • デプロイパイプラインに組み込んでビルドブレイクを検知 •
手動で約1hかかるテストが、約15mで終了 • IE複数Ver, Chrome最新で実行
None
おまけ1)おススメの本、その他 • 書籍「初めての自動テスト」 • 書籍「ソフトウェアテスト293の鉄則」 • 第5章 “テスト自動化” 40個 •
スライド「これからシステムテスト自動化を 始める組織のための勉強会」 • ぱいんのテスト自動化お悩み相談 (随時、パインアメ1袋~)
テスト自動化の8原則 (テスト自動化研究会製) https://sites.google.com/site/testautomationresearch/test_automation_principle • 1. 手動テストはなくならない • 2. 手動でおこなって効果のないテストを自動化しても無駄であ る
• 3. 自動テストは書いたことしかテストしない • 4. テスト自動化の効用はコスト削減だけではない • 5. 自動テストシステムの開発は継続的におこなうものである • 6. 自動化検討はプロジェクト初期から • 7. 自動テストで新種のバグが見つかることは稀である • 8. テスト結果分析という新たなタスクが生まれる 25