5/27(金)に行われたJaSST'22 Tohokuに参加してきました! 開催地・盛岡で久々に現地参加してきたので、会場の熱気も感じられました。
基調講演
自動化に取り組むにあたり
松尾 和昭さん
講演メモ
- テストピラミッド
- テスト自動化を進めるときは底から
- 逆ピラミッドになると失敗しやすい
- 実行サイズの例 過去の松尾さんの発表スライド
- スコープを区切る
- テスト範囲を狭めることで、問題発生時の原因の特定を補助、実行時間の短縮などメリットが
- デモ
- UI 40s
- Integration 3s
- Unit 0.001s
- 自動化を学んで行くために
- 社内の助けを得ることが可能な技術から始めるとよいことが多い
- OSS、公式ドキュメント
Q. テストピラミッドの構築具合を可視化したい
A. やりやすいのは件数ベース。
他には実行時間、UIテストの環境依存の失敗率、変更してないのに失敗しているテストの数
感想
テストの実行時間、対象の性質上差はあるのは理解してたんですが、あまり意識できてなかったので数字でぱっと見せてもらうとこんなに差が出るのかと驚きました。現状で自分のやってる範囲はUIがほとんどなので、目的と実現可能性を考えて範囲を分けられるようになりたい。
ランチセッション
- 松尾さんに実行委員の根本さんがインタビューしていく形式
- 事前に集めた質問がmiroに貼ってあり、インタビューが進むにつれてそこにグラフィックレコードが加えられていく
- なぜアメリカに行ったのかの話からスキルの話まで率直に答えていただけた
- グラレコが的確でイラストがかわいい。これをリアルタイムにやるの本当にすごい。
- 根本さんのぶっこんだ質問にも答えていただけて、ランチ時間も充実した楽しめるセッション!
- オンライン参加だとランチ時間はわりともくもくご飯を食べることが多いけど、これだとオンラインも楽しめて良さそう!
事例セッション
テスト自動化導入後の課題の改善のビフォアアフター
江村 禎昭さん
江村さんの発表資料はこちら。
qiita.com
講演メモ
- テスト自動化の利用状況
- 毎日実施、各サービスは2~3週に一度リリース
- 小さいチーム(サービス)- マニュアルテスト
- チームの拡大- サービス複数、テストも並行
- →各サービスのテストが不明確、自動化が仕様変更で失敗増える
- Phase1 組織が大きくなる- 自動化チームの役割がさまよう
- 自動テストの責任の範囲を明確に
- 既存リグレッションと、仕様変更で修正が入る既存機能
- 新規機能は余裕があれば、プロジェクト内で終わらせる必要はなく次の仕様変更までに使えるようにという優先度を置く
- テストが成功している限り気にしないが、実行時間がかかるようになってきた
- 原因:テストデータ等が肥大化、テスト間の依存関係
- Phase2 テスト自動化の問題があるのに気づかない
- データの蓄積、可視化
感想
各段階で取り組まれている内容やさらっとAutoHealingの仕組みを構築してるのもすごいし、改善のビフォアアフターをちゃんと数値で出せるよう準備できてるのすごいですよね(つい取り組みを先にやっちゃってデータとってないことが多いという自戒を込めて)
リグレッションテストをほぼ100%自動化した話
橋本 悠我さん
講演メモ
- 自動化前 テスト以降は一気にやっている(アジャイルになりきってない)
- テスト結果のフィードバックが遅い
- MagicPodと契約があった
- ステップ(もう少しあった気がする。メモ抜けてました)
- 現状のテストの見直し
- 環境の準備
- 手動→自動へのテストステップ見直し
- 実際の自動スクリプト作成
- 目的としていた部分以外の変化
- 開発者からの信頼を得られた E2Eが強力
- PR単位で実行することでFBが速くなる
- いつ自動テストやるの?今でしょ!
- 「最大のリスクはリスクを取らないことだ!」
感想
自動化取り組み前の現状の見直しや、手動のテストの見直しをきっちりされている点が良いなあと思いました。E2Eが強力で開発者からの信頼が得られるのも素敵な流れ。
あと講演最後のメッセージが熱くて素敵でした!
初めての自動化導入は慎重に、計画的に
二河 亮さん
講演メモ
- E2E初心者の壁 未経験ゆえの漠然とした不安感
- 壁の原因の深堀
1. どう自動化するのかから考える必要あり
→小さな一歩から試す
テスト自動化にこだわらず身近な作業から自動化
効果が出た。壁が下がった
2. ノウハウがない
過去の失敗から学ぶ(アンチパターンの研究)
アンチパターン
3. コーディングスキルなどの技術不足による不安感
ツールベンダー(Autify)のサポートを利用
スクリプトに対する不安感も薄れる
- 不安感を解消していった結果、次のステップも明確になる
感想
不安なところを一つずつ解消していって結果につなげていく過程が分かりやすかったです。漠然とした不安感で止まってしまうことは自動化に限らず多いと思うので、不安に感じている理由を丁寧に分解して対処した点が素敵でした。
ワークショップ
あなたの1票が未来を決める、参加者投票式マルチエンディングストーリーなワークを行います。テスト自動化にまつわるストーリーを体験する、ゲームブック形式のセッションです。選択にDiscordを使用します。(JaSST Tohokuサイトより)
ワークだったこともあってあまりメモできてないけど、楽しみながら自動化の勉強できるよう構成されていてすごかったです。こちらのワークの内容は後日ゲームで公開されるとのことなのでワクワクしながら待っています!以下メモと感想。
- ゲームブック形式で自動化の進め方を学べるワークショップ
- 参加者の選択で自動化のプロジェクトが進められ、プロジェクトをハッピーエンドに導けるか?というストーリー
- シチュエーションと提示される選択肢があるあるな内容でリアル
- 参加者もある程度経験のある人の割合が多いからかだいたい正解の選択肢を選ぶが、バッドエンドが見たい勢が一定数いるようだったw(カバレッジ100%にしたいというか、ストーリー全部回収したいというか気持ちはよく分かりますw)
- 選択肢の内容について、なぜそれが正解と考えられるのか、失敗と考えられるのかの解説があり面白さと勉強と納得感があって工夫がすごい
- 「かまいたちの夜」をオマージュしたグラフィックも音声もあって演出が素敵
招待講演
テスト自動化の成功を支えるためのチームと仕組み
井芹 洋輝さん
井芹さんの発表資料はこちら
speakerdeck.com
講演メモ
- テスト自動化の目的
- 妥当な対価で目的を達成すること
- 費用・効果・目的が釣り合う
- 妥当な対価で目的を達成すること
- 適切な目的を立てる
- その時のチームにとって有益で実現可能な目的を設定
- 広い活動スコープでも目的を設定する(テスト担当→開発+テストに広げる→ビジネスを巻き込む)
- ステップバイステップで目的達成を目指す
- 成功しやすいものから始める。持続可能性が重要
- 自動テストにとってのテスタビリティを高める
- 費用対効果を改善する
- 自動テストにとってのテスタビリティを高める
- テストの妥当性を高める 自動化する価値のあるテストケース
- 自動テストの内部品質を作りこむ
- テスト自動化の計画とアプローチを工夫する
- テスト自動化の成功を支えるチームと仕組み
- 開発とテスト
-
- テスト自動化の成功を支えるチーム文化の指向性
1.チームのテスト自動化の能力を確保し高める
2. Whole Teamでテスト自動化を推進する
3. チームでの自動テストの責務を確立する
4. チームにとっての自動テストの価値を高める
5. チームで自動テストの持続可能性を保つ
6. チームでテスト自動化の動機付けを行う
感想
自動化の成功に必要なことを、担当→チーム→ビジネスと視野を広げていく形で整理・解説いただけて本当に良かったです。本当はビジネスの視点から考えられるのが良いと思うのだけど、担当の立場だとつい目の前のことに目が行きがちなので、この公講演で全体感をみえるようにしてもらえる感覚がありました。すごくよいお話だったのでJaSSTの次の月曜に早速社内に紹介しました!
全体的な感想
久々の会場参加でリアル拍手ができたのが、なんだか感慨深かったです。ついオンラインのイベントの癖で、ついセッションが終わるとチャンネルに「88888888」を書き込もうと思ってしまいました。
基調講演から事例発表、ワーク、招待講演まで自動化にどっぷり浸れて勉強になることが多々ありました。とくに招待講演の内容でそれまでの講演がつながって一つにまとまる感覚があってよかったです。
会場とオンラインのハイブリッド開催はとても大変だと思うので、実行委員の方々には感謝しかないです。素敵な会をありがとうございました!