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
テスト自動化チームでペアプロにトライした話 / trying to pair programm...
Search
YoshikiIto
June 13, 2019
Technology
1.1k
0
Share
テスト自動化チームでペアプロにトライした話 / trying to pair programming on test automation team
YoshikiIto
June 13, 2019
More Decks by YoshikiIto
See All by YoshikiIto
アーキテクチャで理解する テスト自動化システム Developers Summit 2023 Summer
yoshikiito
6
7.4k
迷いながらも前に進むための テスト自動化ツールの選定ポイント
yoshikiito
2
840
60分で学ぶE2Eテスト(テスト設計編)
yoshikiito
0
590
ソフトウェアテスト自動化、一歩前へ
yoshikiito
7
3.1k
テストエンジニアのための初めてのプログラミング
yoshikiito
0
720
テスト自動化Learn&Unlearn
yoshikiito
0
3.9k
テスト自動化プロジェクトを支える技術と仕組み
yoshikiito
2
3.4k
テスト自動化とお掃除ロボット
yoshikiito
0
4.8k
抜け出そう、テスト自動化あるある
yoshikiito
4
6.5k
Other Decks in Technology
See All in Technology
変化の激しい時代をゴキゲンに生き抜くために 〜ストレスマネジメントのススメ〜
kakehashi
PRO
5
1.3k
全社統制を維持しながら現場負担をどう減らすか〜プラットフォームチームとセキュリティチームで進めたSecurity Hub活用によるAWS統制の見直し〜/secjaws-security-hub-custom-insights
mhrtech
1
410
ワールドカフェ再び、そしてゴール・ルール・ロール・ツール / World Café Revisited, and the Goals-Rules-Roles-Tools
ks91
PRO
0
150
会社説明資料|株式会社ギークプラス ソフトウェア事業部
geekplus_tech
0
220
オライリーイベント登壇資料「鉄リサイクル・産廃業界におけるAI技術実応用のカタチ」
takarasawa_
0
390
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.5k
Claude Code / Codex / Kiro に AWS 権限を 渡すとき、何を設計すべきか
k_adachi_01
5
1.2k
AI対話分析の夢と、汚いデータの現実 Looker / Dataplex / Dataform で実現する品質ファーストな基盤設計
waiwai2111
0
430
AI 時代の Platform Engineering
recruitengineers
PRO
1
160
2026-05-14 要件定義からソース管理まで!IBM Bob基礎ハンズオン
yutanonaka
0
140
Shiny New Tools Won't Fix Your Problem
trishagee
1
120
データモデリング通り #5オンライン勉強会: AIに『ビジネスの文脈』を教え込むデータモデリング
datayokocho
0
260
Featured
See All Featured
A Soul's Torment
seathinner
6
2.8k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Paper Plane (Part 1)
katiecoart
PRO
0
7.3k
RailsConf 2023
tenderlove
30
1.4k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
180
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
54k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
360
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Transcript
テスト自動化チームで ペアプロにトライした話 2019/6/13 伊藤由貴(@yoshikiito)
自己紹介 伊藤由貴(@yoshikiito) 株式会社ベリサーブで テスト自動化エヴァンジェリスト的なお仕事。 ・教育、研修 ・社内外の知見の蓄積、共有を活性化 ・技術調査 などなど JaSST東北実行委員。 2
今回のお話について 概要 • テスト自動化チームのペアプロによる学びをシェア • まとまった期間の知見ではなく、単発のお話 • 同じような経験がある方ぜひお話し聞かせてください 3
参考:ペアプログラミング • ペアでプログラミングすること • 指示を出す「オペレーター」と、実際にコードを書く「ドラ イバー」の2つの役割があり、これらを入れ替えながら開発を 進める 4
目次 1. 自己紹介と前説 2. ペアプロにトライした背景 3. やったこと ① 事前の準備など ②
本番 ③ 実施後 4. ペアプロの効果と反省点 5. まとめ 5
目次 1. 自己紹介と前説 2. ペアプロにトライした背景 3. やったこと ① 事前の準備など ②
本番 ③ 実施後 4. ペアプロの効果と反省点 5. まとめ 6
チームと業務について テスト自動化チーム • 約10名(月1, 2名ずつJoin)でSelenium+Javaで自動化 • テスト自動化経験はバラバラ • テスト自動化に慣れた人もいれば、テストに詳しいけど 自動化はあまり経験ない、という人も
業務内容 • 自動テスト手順に基づき、コーディング • メンバー間で相互にコードレビュー 7
補足:自動テスト手順 • テスターさんにはおなじみExcelのテスト手順を 自動化向けに詳細に書いたもの 8 ID 機能 手順 期待結果 備考
ABC-001 機能A 1. ほげほげ 2. ふーばー ***である こと ABC-002 : : : ABC-003 : : : ABC-004 : : :
困りごと • 自動テストコードの質に個人差がある • コーディング規約はあるものの、規約以外の部分で 書き方がばらける • 共通クラスにメソッドがあるのに独自実装する • コードレビューでの指摘件数が多い
• レビューも修正も工数がかかる • 「よりよくするには」といった建設的な指摘ではなく、 重複の指摘や書き方の指摘など本質的でない指摘が多い 9
(一応)やっていた対策 • CheckStyleで規約違反を検出 • SpotBugsで冗長な処理や明らかな問題の検出 ただ、上記対策では見つけられない問題もある • 無駄な待機 • 処理の重複
• ロケータが変 • 少しでも条件が変わったらNo such elementになるような 書き方(!) 10
結果・・・ 指摘をされると気分も良くないし、 対応する時間もかかる ↓ 仕事がなかなか進まず、残業して疲れる ↓ 些末なミスが増える ↓ コードレビューで指摘をうける ↓
: 11 止めたい
そうだ、ペアプロしよう!
ペアプロに期待したこと • コードレビュー時の指摘件数が減ること • 修正工数削減 • 気分↑ • チーム全体の作業品質向上 •
開発のプラクティスに関心を持ってくれること 13
目次 1. 自己紹介と前説 2. ペアプロにトライした背景 3. やったこと ① 事前の準備など ②
本番 ③ 実施後 4. ペアプロの効果と反省点 5. まとめ 14
事前の準備など そもそも「ペアプロとは」の説明 • メンバーはペアプロが初耳だったため。 • 特に「心理的安全性大事に!」を強調した。 人と場所と時間の確保 • ペアの選定 •
会議室の確保 • 1週間程度前から時間の確保 • ペアプロ本番時の説明用資料作成 15
本番 参加者 • 伊藤が進行役 • 実際に手を動かすペア • 次の進行役になってほしい後輩もオブザーバー参加 流れ •
ペアプロのルール説明 • やることリストの提示(ブランチ切って、**書いて・・・) • 30分コーディング→役割交代してもう30分 16
実施後 ヒアリング実施 • 実際やってみてどうだったかを、ペアの2名にヒアリング • 「時間が短かった」 • 「インフラ面が難しい」(※後述) • 「楽しい」
2回目実施へ • チーム内の別のペアで再度実施 • 初回ペアにヒアリングした結果を踏まえて一部改善 17
目次 1. 自己紹介と前説 2. ペアプロにトライした背景 3. やったこと ① 事前の準備など ②
本番 ③ 実施後 4. ペアプロの効果と反省点 5. まとめ 18
ペアプロの効果と反省点 効果 • ペアプロの場でナレッジ共有が進んだ • 効率のよいコードの書き方 • IDEのショートカット操作 etc… •
メンバーが「ペア作業する」発想を得た • 「この実装大変そうだからペアでやってみない?」と椅子持って ペア作業が発生 • やろうと言った側からするととてもうれしい変化 19
ペアプロの効果と反省点 反省点 • インフラ面でテスト自動化のペアプロが難しかった • テスト手順・ブラウザ・IDEで3画面ほしいが、 ペアプロ時はPCとプロジェクタの2画面しかない • 待ちの時間が多い •
「実行して動くのを眺める時間」が発生するため、 ペア作業ではもったいなく感じられる • 効果を定量的に出せていない • 言い出しっぺの自分が異動したことなどから、 当初の課題だったレビューの件数や割合などを 継続的に終えていないのが無念 20
目次 1. 自己紹介と前説 2. ペアプロにトライした背景 3. やったこと ① 事前の準備など ②
本番 ③ 実施後 4. ペアプロの効果と反省点 5. まとめ 21
まとめ • テスト自動化(特にGUI動かすE2E)だと、ペアプロ がきつい部分もある • 実際にやってみるとメンバーの行動がポジティブに 変化した • (データ取って変化を追うまでできなかったが) ペアプロをやる価値はありそう
22
以上、 ありがとうございました ツッコミ・質問は、 ぜひ個別にお声がけください☺