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
自動化して開発者に喜んでもらえたこと
Search
oikawa
July 30, 2020
Programming
0
460
自動化して開発者に喜んでもらえたこと
oikawa
July 30, 2020
Tweet
Share
More Decks by oikawa
See All by oikawa
自動テストを運用して直面した時間の問題を解決した方法
oikawat
0
2.7k
E2E自動テストを浸透させるために工夫したこと
oikawat
1
4.1k
Other Decks in Programming
See All in Programming
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
230
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
3
390
飲食業界向けマルチプロダクトを実現させる開発体制とリアルな現状
hiroya0601
1
390
Android 15 でアクションバー表示時にステータスバーが白くなってしまう問題
tonionagauzzi
0
130
リリース8年目のサービスの1800個のERBファイルをViewComponentに移行した方法とその結果
katty0324
5
3.4k
C#/.NETのこれまでのふりかえり
tomokusaba
1
150
現場で役立つモデリング 超入門
masuda220
PRO
12
2.8k
EventSourcingの理想と現実
wenas
5
2k
WEBエンジニア向けAI活用入門
sutetotanuki
0
300
Vitest Browser Mode への期待 / Vitest Browser Mode
odanado
PRO
2
1.6k
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
4
300
Identifying User Idenity
moro
6
7.4k
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
31
1.5k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Done Done
chrislema
181
16k
Writing Fast Ruby
sferik
626
60k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
664
120k
Building Your Own Lightsaber
phodgson
102
6k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
328
21k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Facilitating Awesome Meetings
lara
49
6k
Happy Clients
brianwarren
97
6.7k
Transcript
自動化して開発者に 喜んでもらえたこと Wingarc1st, 及川
自己紹介 名前 及川 住まい 北海道札幌市 所属 ウイングアーク1st 株式会社 普段は製品のテストをしたり、 自動テスト支援活動してます
わりとアクティブ趣味
今回登場するターゲット 集計表をWebとExcelで扱うUI製品を主に担当 してます
いま運用 している 自動テスト WebのUI自動テスト ExcelのUI自動テスト API自動テスト 速度評価
自動化って開発や品質が単独でやろうとすると 失敗する例が多い(と思っている) 開発 開発スピード! テストパターン! 品質 知識! 仕様変更!
定着に至った一つ の例です
災厄の章
自動テスト運用前の(本当にあった)悪夢 敗因 - 極めて重大な不具合の発生 バグが発生した! え、このバグは、 中断リジェクト! 製品βビルドができました 開始条件確認テストをします
自動テスト運用前の(本当にあった)悪夢 敗因 - 不具合数/テストケース数 9% ・・・ ・・・・ リジェクト 直しました テスト再開します
自動テスト運用前の(本当にあった)悪夢 敗因 - テストケース数/バグチケット 12% - 重大な不具合 18件 バグが発生した! たくさん発生した!
リジェクト! 直して強化しました テスト再開します
自動テスト運用前の(本当にあった)悪夢 リグレッションテストケースを 与えます(数百件) 1か月後にフェーズ進行を強行するの で品質はどうにかしてください ビルドのたびに 実施するとよいでしょう(手動)
悪夢の裏側(意訳) 隙はない。やれるものならやってみろ 徹底的にたたけ。1日で滅ぼせ。 拝承 戦争だったんだ。
復活の章
悪夢はもうイヤ 内部品質を向上するため、 大規模リファクタリングが決定する 「開発、内部コード するってさ」 リメイク
None
作り直しても変わってないことを保証 これって、自動テスト向きなことですね
開発にとって バグが多い
品質にとって バグが多い
共通認識はあったので 協力した体制を敷くことができた
成長の章
できたこと 1st 変更方法を聞いて そこに対する自動 テストをQAで実 装 2nd インタフェースか らテストするため にテストに使える
APIをテストツー ルとしてDevに実 装してもらう 3rd 暗黙な仕様などを Dev/QAで協力し て洗い出し片っ端 から自動テスト実 装 4th 開発プロトからテ ストFW実装し、 開発テストを自動 テスト化
変更方法を聞いてそこに対する 自動テストをQAで実装 • 弱点だったり、不安なところを共有してもらったり、自動テス トに向いているところ、やりかたを相談したり • すくなくとも出てきてから初めて触るとかはない • ゆるやかな開発と品質の協力体制
テストに使えるAPIをテストツールとして Devに実装してもらう • 開発に内部APIを利用したテストツールを作ってもらった • テストケースは品質担当の実装 • 積極的な開発と品質の協力体制 • 自動でできるテスト量の増大化
Dev/QAで協力して洗い出し片っ端から自 動テスト実装 • 誰かしか知らない情報など洗い出し資料化 • 知識の統合 • テスト実装も協力 • 連携した品質向上の体制
• 開発者自身からも見えにくかった影響への安心感が生まれる
開発プロトからテストFW実装し、開発テ ストを自動テスト化 • 開発設計中に情報共有しテストを考える • プロトを触らせてもらって自動テストのFWを実装してしまう • 開発テストで作った資産をそのまま自動テストにしてしまう • 一体化した品質向上へのアプローチ
• 安定した品質の地盤
担当者の声 あのプロジェクトは自動 テストがなかったら爆死 してた 自動テストのおかげで 安心して新規開発も既 存修正もできる 助かってる
成功要因 開発、品質ともに 課題を共有できて いたこと 開発者の不安を解 決するものを用意 したこと 開発者がメリット を感じられるよう にしたこと
いま取り組んでいること 品質を意識した開発ができる活動 機能設計と並行してテスト設計 テスト設計を開発とモブドキュメンティング 開発時にUnitレベルでの品質作りこみ テスト設計時に自動テスト種別を判定 Unitレベルのテストが有効な部分は実装を依頼 一部はブログで書きました 「medium wingarc」で検索!
おしまい