「テスト自動化、はじめの一歩」アジャイルひよこクラブイベントレポート
こんにちは!
アジャイルひよこクラブ今回のブログ担当そうだです。
アジャイル歴は、何も考えずに生きていた期間を含めると8年、能動的に考えてきたのはここ4年くらいなひよっこです。
アジャイルひよこくらぶとは、熟練のにわとり達と一緒にアジャイルを上手く進めていくうえでの、考え方や道筋を考えることができるコミュニティです。 私自身考え方について学ぶところが多くあります。
今回の6月23日開催イベントでは山口 鉄平さんに登壇していただきました!テーマは「テスト自動化、はじめの一歩」です。
私自身、テスト自動化について原理主義的な考え方に凝り固まっていたので気づきが多くあり勉強になりました!
メインスピーカー: 山口 鉄平さん
ヤフー株式会社 第6代黒帯「テスト自動化」
Twitter:@teyamagu
- 認定スクラムプロフェッショナル
- 一般社団法人「スクラムギャザリング東京実行委員会」理事
- 一般社団法人「アジャイルチームを支える会」役員
- 『Fearless Change アジャイルに効く アイデアを組織に広めるための48のパターン 』 (丸善出版) 翻訳者
自動化のメリットは?
数字につながるもの
- デグレの抑制による「失敗低減」
- 人の手で行うよりも早くできるから「効率化」につながる
数字にはならないけど大きいもの
- 「安心感」を実感しながら開発を進められる
壊してもすぐに気づくことができたり、仕様が容易に理解できたりするので安心感につながります。
自動化のデメリット
おいしいところだけじゃないのが現実。
テスト自動化にもメリットだけでなくデメリットもあります。
- 導入コスト
自動化有償ツール高い問題 - 運用コスト
自動化しているテストがこけた際の判断スキルが必要。
ツールのせいでこけたのかテスト対象に問題があってこけたのかなど、無視していい失敗なのかすぐに対応を入れないといけない失敗なのか判断する必要がある。
なぜ注目されるのか?
おいしいところだけじゃないテストの自動化。
なぜ注目されるのでしょうか?
- 今日のリリース頻度の高さ
何度もリリースするようになって導入のコストをPayできる - 具体的にどれくらいから効果が出だすかは慣れ具合とリリース回数に依存する
- コストにフォーカスしたラインチャートなどを活用して具体的な数字も出せる
何からはじめたらいい?
そんな魅力的なテストの自動化、どこから始めたらいいのでしょうか。
- やりたいと思ったものからはじめる
・スモークテスト, ユニットテスト
・ユニットテストはプログラマ手動で進めやすい - 基本的なテストから始めるのがベター
・スマホアプリでいうとアプリが起動することを担保できるようなテスト - 気をつけたいポイント
・意味のないテストを自動化しても効果はない
・避けるためにテスト技法を学ぼう!
・既存のコードがレガシーな場合は改善を入れてテスト可能な状態にする - テストにより自動化する難易度も異なる
・ユニットテストは難易度が低いがユーザビリティテストは自動化しにくい
・機能テスト(ストーリーテストなど)はチームを支援するが自動化しにくい - 壊れにくいテスト(ユニットテストなど)をより充実させ、壊れやすいテスト(GUIのテスト)を基本的なところだけにしておく
Q&A
Q. リファクタリングとテストはどちらを先に導入するといいでしょうか?
A. テストの導入が先。E2Eテストからの導入するのがいい。
テスト自動化3行でまとめると?
単純なところから少しずつ試す!
一気にやろうとしない!
基本的なところからやる!
メインスピーカーのお話の後に「お悩み」についてグループに分かれてディスカッションではそれぞれのグループで大いに盛り上がりました!
次回は8月24日開催予定です!