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

Reimagining Automation

Jumpei Ito
December 03, 2023
140

Reimagining Automation

Andrew Knight氏によるAgile Testing Days 2023のキーノートで発表したスライドを伊藤潤平が翻訳したモノ。

https://agiletestingdays.com/2023/session/reimagining-automation/

Jumpei Ito

December 03, 2023
Tweet

More Decks by Jumpei Ito

Transcript

  1. Reimagining Automation
    自動化の再構想
    Pandy Knight
    @AutomationPanda
    伊藤 潤平
    スライドの翻訳

    View full-size slide

  2. Automation
    自動化

    View full-size slide

  3. Automation
    自動化
    テスト

    View full-size slide

  4. Automation
    自動化
    Let’s review the history!
    歴史をふりかえってみよう
    テスト

    View full-size slide

  5. The origins of testing (1979-1990s)
    テストの起源
    Myers’ book separated testing from debugging.
    That also marked the separation of roles between
    developers and testers.
    All testing was done manually. Testers didn’t
    need coding skills.
    マイヤーズの本は、テストをデバッグから切り離した。
    それはまた、開発者とテスターの役割分担を示すものでもあった。
    テストはすべて手作業で行われた。テスターにコーディングのスキルは必要な
    かった。

    View full-size slide

  6. The advent of unit testing (1990s)
    ユニットテストの登場(1990年代)
    Object-Oriented Programming was the trend.
    Kent Beck created SUnit, the first unit test framework.
    Later, Kent Beck and Erich Gamma created JUnit.
    xUnit style frameworks spread to other languages.
    They were mainly used by developers.
    オブジェクト指向プログラミングがトレンドだった。
    ケント・ベックは、最初のユニットテスト・フレームワークであるSUnitを作った。その
    後、ケント・ベックとエーリッヒ・ガンマがJUnitを作った。
    xUnitスタイルのフレームワークは他の言語にも広がった。
    これらのツールは主に開発者によって使われた。

    View full-size slide

  7. Extension into black box automation (2000s)
    ブラックボックステスト自動化へ拡張(2000年代)
    Testers combined test frameworks with black box tools.
    This coincided with the rise of web development.
    A new role arose: the automation engineer. Some testers
    feared losing their jobs to automation. However, projects
    initially struggled with poor practices.
    テスターはテストフレームワークとブラックボックスツールを組み合わせた。同時にこれは
    Web開発の台頭となった。
    自動化エンジニアという新しい役割が生まれた。自動化によって職を失うことを恐れるテ
    スターもいた。しかし、経験値の少ないプラクティスによって当初のプロジェクトは苦戦し
    ていた。

    View full-size slide

  8. Agile had taken ahold of the industry, and tests
    became part of Continuous Integration.
    Automated tests became more atomic and robust.
    However, automation also became more complicated.
    Teams hired SDETs * to help.
    アジャイルが業界に浸透し、テストは継続的インテグレーションの一部となった。自動
    テストはより原子的で強固なプラクティスになった。しかし、自動化はより複雑に
    なった。チームは SDETs を雇って支援してもらった。
    * SDET :Software Development Engineer in Test
    Continuous testing (2010s)
    継続的テスト(2010年代)

    View full-size slide

  9. Better testing experience (early 2020s)
    テスト体験の向上(2020年代前半)
    Tools focused on making testing easier.
    Companies built comprehensive platforms.
    Cypress and Playwright became very popular.
    Developers started doing more testing.
    ツールはテスト活動を容易にすることに集中した。
    各社は包括的なプラットフォームを構築した。
    CypressやPlaywrightが普及した。
    開発者はより多くのテスト活動を行うようになった。

    View full-size slide

  10. What happened after 2023?
    (2033年から見て、)2023年以降は?

    View full-size slide

  11. Autonomous.
    自律的

    View full-size slide

  12. Generating tests with LLMs (mid-2020s)
    LLMによるテストの生成(2020年代半ば)
    ChatGPT and Copilot could generate tests.
    They started rough but improved over time.
    Eventually, they could generate reasonable,
    executable test cases.
    ChatGPTとCopilotを使ってテストを生成できた。最初は荒
    削りだったが、時間の経過とともに改善された。
    最終的には、妥当で実行可能なテストケースを生成できるように
    なった。

    View full-size slide

  13. Why generate test code…
    なぜテストコードを生成するのか…

    View full-size slide

  14. Why generate test code…
    なぜテストコードを生成するのか…
    When bots can just run the tests?
    ボットがテストを実行できるようになったら?

    View full-size slide

  15. Learning
    Sources
    学習ソース
    System
    Behaviors
    システムの振
    る舞い
    Development
    Artifacts
    開発成果物
    Human
    Feedback
    人的フィー
    ドバック
    Observability
    Data
    可観測性
    データ

    View full-size slide

  16. of Automation from Assertion
    オートメーションとアサーションの偉大なる分離
    The Great Decoupling
    オートメーションはアサーションだけでなくチームが自律的になるよう補助する(意訳)

    View full-size slide

  17. The rise of replay (late-2020s)
    リプレイの台頭(2020年代後半)
    1. A developer makes a change.
    2. Automation loads the new version.
    3. It looks for differences and tries them, recording what it actually
    finds.
    4. The developer reviews the recording and marks if the change was
    good or bad.
    5. The developer then keeps coding or fixes the problem.
    1.開発者が変更を加える。
    2.オートメーションは新バージョンをロードする。
    3.オートメーションは変更を探し、実際に見つけたものを記録する。
    4.開発者は記録を確認し、変更の良し悪しをマークする。
    5.開発者は実装を続けるか、問題を修正する。

    View full-size slide

  18. Closing the gap (2033)
    ギャップを埋める(2033年)
    Recommendation systems are
    becoming very accurate. Less human
    guidance and intervention are required.
    Big enterprises are starting to embrace
    these approaches.
    レコメンドシステムは非常に正確になってきている。人間によ
    るガイダンスや介入はより少なくて済む。
    大企業はこれらのアプローチを採用し始めている。

    View full-size slide

  19. Automation
    チーム

    View full-size slide

  20. Automatic Journaling
    ジャーナルの自動化
    Journals automatically record,
    summarize, and catalog notes for all
    meetings into a knowledge base.
    Teams become more efficient and
    less forgetful.
    ジャーナルは、すべての会議のメモを自動的に記
    録、要約し、ナレッジベースにカタログ化します。
    チームはより効率的になり、忘れにくくなります。

    View full-size slide

  21. Automatic Ticketing
    チケット発行の自動化
    Boards automatically draw sketches,
    create diagrams, and update work
    items while observing teams.
    They effectively take over process
    management.
    ボードはチームを観察しながら、自動的にスケッチを描き、ダ
    イアグラムを作成し、作業項目を更新します。
    プロセス管理が効果的に引き継がれます。

    View full-size slide

  22. Async Demos
    非同期デモ
    Folks record demo videos when they
    finish work items that are linked to
    tickets and stored in a knowledge base.
    Production tech makes everything look
    and sound great.
    チケットにリンクされた作業項目が完了したら、デモビデオを
    録画し、ナレッジ ベースに保存されます。
    Production techにより、すべてが素晴らしい見た目とサウン
    ドになります。

    View full-size slide

  23. Daily Digests
    デイリーダイジェスト
    No more standups – everyone receives
    a tailored team report each morning
    generated from the knowledge base.
    An individual’s status is gleaned from
    their activities and contributions.
    スタンドアップミーティングはもう必要ありません。ナレッ
    ジベースから生成される要約されたチームレポートを全
    員が毎朝受け取ります。
    個人のステータスは、そのアクティビティと貢献度から収
    集されます。

    View full-size slide

  24. Autonomous tools upended
    software development.
    自律型ツールはソフトウェア開発を根
    底から覆した。

    View full-size slide

  25. Agile went back to its roots (early 2030s)
    アジャイルの原点回帰(2030年代初頭)

    View full-size slide

  26. Agile went back to its roots (early 2030s)
    アジャイルの原点回帰(2030年代初頭)
    1. Scrum is outdated and nearly dead
    1.スクラムは時代遅れで、ほとんど死んでいる

    View full-size slide

  27. Agile went back to its roots (early 2030s)
    アジャイルの原点回帰(2030年代初頭)
    1. Scrum is outdated and nearly dead
    2. Waterfall is back in shorter iterations as Whitewater
    1.スクラムは時代遅れで、ほとんど死んでいる
    2.ウォーターフォールはホワイトウォーター*として短い反復で復活する
    *ホワイトウォーター:激流のごとく白く泡立った水

    View full-size slide

  28. Agile went back to its roots (early 2030s)
    アジャイルの原点回帰(2030年代初頭)
    1. Scrum is outdated and nearly dead
    2. Waterfall is back in shorter iterations as Whitewater
    3. Kanban is now the most popular Agile process
    1.スクラムは時代遅れで、ほとんど死んでいる
    2.ウォーターフォールはホワイトウォーター*として短い反復で復活する
    *ホワイトウォーター:激流のごとく白く泡立った水
    3.カンバンは今や最も人気のあるアジャイルプロセス

    View full-size slide

  29. Agile went back to its roots (early 2030s)
    アジャイルの原点回帰(2030年代初頭)
    1. Scrum is outdated and nearly dead
    2. Waterfall is back in shorter iterations as Whitewater
    3. Kanban is now the most popular Agile process
    4. Async Agile, also called NoAgile, is starting to rise
    1.スクラムは時代遅れで、ほとんど死んでいる
    2.ウォーターフォールはホワイトウォーター*として短い反復で復活する
    *ホワイトウォーター:激流のごとく白く泡立った水
    3.カンバンは今や最も人気のあるアジャイルプロセス
    4.「NoAgile」とも呼ばれる非同期アジャイルが台頭し始める

    View full-size slide

  30. Discovery 発見
    Formulation 定式化
    Automation オートメーション

    View full-size slide

  31. Current challenges with automation (2033)
    自動化に関する現在の課題(2033年)

    View full-size slide

  32. Current challenges with automation (2033)
    自動化に関する現在の課題(2033年)
    1. Cost has replaced skill as the barrier to entry
    1.スキルに代わってコストが参入障壁になった

    View full-size slide

  33. Current challenges with automation (2033)
    自動化に関する現在の課題(2033年)
    1. Cost has replaced skill as the barrier to entry
    2. Training and tuning the tools can be tricky
    1.スキルに代わってコストが参入障壁になった
    2.ツールのトレーニングやチューニングが扱いにくい

    View full-size slide

  34. Current challenges with automation (2033)
    自動化に関する現在の課題(2033年)
    1. Cost has replaced skill as the barrier to entry
    2. Training and tuning the tools can be tricky
    3. Quality is still human-oriented
    1.スキルに代わってコストが参入障壁になった
    2.ツールのトレーニングやチューニングが扱いにくい
    3.品質は依然として人間中心

    View full-size slide

  35. We reimagined automation
    for both testing and collaboration.
    テストとコラボレーションの両側面から
    自動化を再構想した

    View full-size slide

  36. Writing Tests
    テストを書く

    View full-size slide

  37. Writing Tests
    テストを書くだけではなく
    (テスト自動化→オートメーションで)振る舞いを解き明かそう

    View full-size slide

  38. The future is open:
    Let’s be creative!
    未来は開かれている:
    クリエイティブになろう

    View full-size slide

  39. Reimagining Automation
    Slides LinkedIn
    Autonomous Testing & Team Processes
    Pandy Knight
    @AutomationPanda

    View full-size slide