Upgrade to Pro — share decks privately, control downloads, hide ads and more …

E2Eテスト自動化の本質 - 品質と開発スピードを支えるテスト自動化時代へ / The Essence of E2E Test Automation

E2Eテスト自動化の本質 - 品質と開発スピードを支えるテスト自動化時代へ / The Essence of E2E Test Automation

CEDEC 2021 スポンサーセッション資料
https://cedec.cesa.or.jp/2021/session/detail/s60c83bd1df94c

---
ソフトウェア開発プロセスにおいては、アジャイル開発の普及が進み、さまざまな現場でスクラムが活用されるようになりました。DevOpsというキーワードを聞かない日はないぐらい、開発スピードと品質への関心は高まっています。

技術面でもCI/CDがSaaSとして提供されるようになり、誰でも簡単にビルド&リリースパイプラインを作れるようになりました。さらに、コンテナ技術が発達し、使い捨てのテスト環境も当たり前になってきています。

一方で、テストや品質保証(QA)はどのように変わってきたでしょうか?

テストや品質保証分野も、その他の技術領域に負けじとどんどん進化をし続けています。

その結果、「テストがボトルネックになりがち」や 「マニュアルテストのチームがコストセンターになってしまった」といったマンパワーの課題が解決に向かい、テスト自動化による開発スピードへの投資がはじまっています。

このセッションでは、アジャイル・DevOps時代におけるテストと品質について、最近のテスト自動化のトレンドや、技術を交えながら、テスト自動化の本質を議論します。

A760a90c9afd981004343b9861f1e8b4?s=128

Dai Fujihara

August 26, 2021
Tweet

Transcript

  1. E2Eテスト自動化の本質 開発スピードと品質を支えるテスト自動化時代へ Dai Fujihara, mabl Inc. CEDEC 2021, Aug 24-26

  2. About Me 『アジャイル開発とスクラム』 https://www.amazon.co.jp/dp/4798129704/ 、『リーン開発の現場』 https://www.amazon.co.jp/dp/427406932X 藤原 大 / Dai

    Fujihara Japan Lead at mabl Inc. CEO at Sekai Co., Ltd. • 現在: 独立してスーパーアジャイルコーチ 開発組織の技術顧問(プロセス、 QA中心) CTOやEMへのコーチング mablの日本顧客向け業務全般担当 • メルカリ: エンジニアリングマネージャ( EM) Software Engineer in Test(SET) テスト自動化、QA組織立ち上げ • 楽天: EM、アジャイルコーチ • 某SIer: Javaエンジニア • 活動: ◦ 『アジャイル開発とスクラム』寄稿 ◦ 『リーン開発の現場』翻訳 ◦ Twitter: @daipresents ◦ https://daipresents.com/service/
  3. Outline アジャイル・DevOps時代における テストと品質のトレンド テストツール弱点と進化 テスト自動化の本質

  4. 現状をとりまいているもの アジャイル・DevOps時 代に突入 • イテレーティブ&インクリメ ンタル • すばやいリリースとフィー ドバック •

    正しいものを正しく作りた い アジャイル・DevOpsを 支える技術の進化 • CI/CDサービスのコモディ ティ化 • Docker, k8s の急速な広 がり • クラウド環境の繁栄 求められるアジャイル なテスト • 従来からテストフェーズが ボトルネックになりがち • アジャイルなテスティング の事例不足・マニュアル 依存 • さてどうしよう?
  5. QAがボトルネックという問題 設定 コード 更新 API、依存関係

  6. 一言でいうと スプリントの最後に テストをしない。 そのためには? QAが最後の砦になっていませんか?

  7. 継続的テストするしかない スプリントレビュー スプリントプランニング ふりかえり スプリント ここでも テスト デ リ バ

    リ ! 仕様 設計 実装 テスト ここでも テスト ここでも テスト ここでも テスト たまに第三者検証 フェーズ デザイン・プログラミング テスト・テスト自動化 インフラ構築などあらゆる開発アクティビティ
  8. Outline アジャイル・DevOps時代における テストと品質のトレンド テストツール弱点と進化 テスト自動化の本質

  9. インテリジェントなブラウザテスト自動化 • クラウド/SaaSで初期コスト低 • 簡単操作でテストの作成や修正可能 • AIでテストを自動修復、自動画面分析 • クロスブラウザ対応、並列/同時実行、など クラウドならではの恩恵多数

    • CI/CDへの組み込みも簡単
  10. キャプチャリプレイ型の弱点と進化 弱点 • イニシャルコストが高い • UI変更に弱い(E2Eフレーム ワークも同じ) • テストコードの作成コストが 高い

    • テストコードや環境のメンテ ナンスコストが高い 進化 • SaaS型でイニシャルコスト削減 • AI/MLの活用で変化に対応 • ノーコード化で運用コスト削減 • 共通部品やローコードによって再 利用性や柔軟性の向上
  11. これまでやってきたこと テストケース作成、自動テストコード実装、自動テストのリファクタリング、テスト実行環 境構築、クロスブラウザ環境構築、並列・直列実行サポート、テスト結果データ基盤構 築、テスト結果レポート作成、定期実行基盤構築(CI)、CI/CD連携実装、通知機能実 装、画面崩れ検知、JSエラー検知、ネットワークエラー検知、APIテスト実行環境構築、 モバイルアプリテスト環境構築・・・

  12. これまでやってきたこと テストケース作成、自動テストコード実装、自動テストのリファクタリング、テスト実行環 境構築、クロスブラウザ環境構築、並列・直列実行サポート、テスト結果データ基盤構 築、テスト結果レポート作成、定期実行基盤構築(CI)、CI/CD連携実装、通知機能実 装、画面崩れ検知、JSエラー検知、ネットワークエラー検知、APIテスト実行環境構築、 モバイルアプリテスト環境構築・・・

  13. AIがUI変更を検知してテストを自動修復

  14. AIによる画面差分の検知

  15. ノーコードでかんたんにテスト作成 • mablトレーナー(Chrome拡張か デスクトップアプリ)がテスト作成や 修正サポート • ひとつの動きをステップで記録 • ステップを並べてシナリオとして管 理

    • プログラミングの経験が不要
  16. かんたんなデモ

  17. デスクトップアプリ

  18. ローコードでかんたんにテスト作成 • ローコードプログラミングも可能 • IF文、関数化、変数も利用可能 ◦ 例:パラメタ付き関数を作れ る「FLOWS」 • …細かい操作もJSで対応可能

  19. APIテスト

  20. CLIによるローカル実行

  21. Outline アジャイル・DevOps時代における テストと品質のトレンド テストツール弱点と進化 テスト自動化の本質

  22. テスト自動化の本質 - テスト自動化設計は必須 • OSSでもツールでも、テストを自動化し てメンテナンスしていくことは変わりない • つまり、コストはかかる • そのコストが低いか高いかは現場に

    よって異なる • 単純作業であれば自動化で十分。ただ し、良い設計は「まだ」自動化できない
  23. テスト自動化の本質 - 本当に必要なテストを作る • 簡単に作れる ≒ E2Eが増えす ぎる • 質の低いテストをたくさん作って

    も、品質に貢献しなかったり、コ ストが高くなったりしてしまう • APIやUTへのカバレッジアップ が必要
  24. mablによってカバレッジを最大化 Unit test Web E2E Integration (API testing)

  25. テスト自動化の本質 - コスト削減から投資へ • テストは品質向上を含めた開発 スピードの向上に移りつつある • 自動化 ≒ コスト削減

    と単純に 考えすぎると失敗しやすい • なぜコスト削減をしたいのか? 削減したコストによって何をした いのか? • 開発もテストも同じ投資対象
  26. ローコード(ノーコード)とAIがもたらすもの 7X テスト作成のスピードUP テストカバレッジ テストの運用 リグレッションテスト 85% メンテコストの削減 80% テスト実行コストの削減

  27. テスト自動化の本質 - 品質の民主化 “この文脈における「開発者」とは、 コードを生み出す仕事に 携わる人を指す。 たとえば、プログラマー、 QA、テスター、 ビジネスアナリストが含まれる” アジャイル開発

    その他 すべて 開発 テスト 『Clean Agile』 Robert C. Martin著
  28. ”スピードと品質は両立できる” 『リーン開発の本質』 メアリー/トム・ポッペンディーク著

  29. Thank you very much 月次ウェビナー開催中! 「探索的テスト」「テスト自動化」「次世代QA 組織」といったテーマをもとに「アジャイル ・DevOps時代のテストや品質保証」を目指 すウェブナーです。 今後も、さまざまなトピックや、その道のプロ

    フェッショナルにご登壇いただく予定です。 https://mabl-japan.connpass.com 今すぐできる2週間の無料トライアル! 「セッション見たよ」でさらに2週間(合計1ヶ月!) のトライアルプレゼント デモリクエストも大歓迎! 技術トレンドや実事例をまじえたデモMTGもお気 軽にどうぞ! https://www.mabl.com/japan