Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

「テスト自動化はじめの0.5歩」から1年。いま何歩目か考えてみた。

Avatar for arakar arakar
December 11, 2021

 「テスト自動化はじめの0.5歩」から1年。いま何歩目か考えてみた。

システムテスト自動化カンファレンス2021にて発表

Avatar for arakar

arakar

December 11, 2021
Tweet

More Decks by arakar

Other Decks in Technology

Transcript

  1. update update Copyright © 2021 WingArc1st Inc. All Rights Reserved.

    ウイングアーク1st 株式会社 ソフトウェアプロセス&品質改善部 荒川健太郎 December 11, 2021 「テスト⾃動化はじめの0.5歩」から1年。 いま何歩⽬か考えてみた
  2. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. ソフトウェアプロセス&品質改善部 SPIチーム 兼 Automationチーム 荒川 健太郎 Kentaro Arakawa • 今年を表す漢字は「改」 • 個⼈的 〇〇 オブ ザ イヤー • 書籍 「他者と働く」 • 漫画 「⼥の園の星」 • 映画 「機動戦⼠ガンダム 閃光のハサウェイ」 • アニメ「Vivy」 • ドラマ「⼤⾖⽥とわ⼦と3⼈の元夫 」 • 曲 「あいつら全員同窓会」 • 来年の楽しみはスプラトゥーン3の発売
  3. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. この発表の意図・概要 (組織や技術的な問題などで)⾃動テストと導⼊に困ってる、進捗感がない。 この発表を通して、そんな⽅々に何かしらのお⼟産をお届けできればと考えています。 この⼀年の取り組みを発表 • やったこと • 経過・結果 • これからのこと 気づき・共感 ⇨ お⼟産 • 「楽しそうだな」 • 「どこも⼤変なんだな」 • 「ウチも参考にしよう」
  4. page No. page No. 4 Copyright © 2021 WingArc1st Inc.

    All Rights Reserved. 01 昨年のお話を少し 02 この⼀年で私がやったこと INDEX 03 この⼀年で周りに起きたこと 04 その⼀年のまとめ 05 これからの話と今の私が伝えられること
  5. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. STAC2020にて発表。 私⾃⾝が⾃動テストにおいて後発組(レイトマジョリティ)である という観点から、 • 関係者とのコラボレーション • 出来ることから少しづつ(ベイビーステップ) • 変化ではなく実験 といったことを意識して、あるプロダクトの極めてチープな⾃動テス ト(E2E)業務を開始したことを発表。 さっそく効果も出始めていると⾔うことを共有し、同じ後発系の⽅々 の背中を押せる内容になる事を⽬標にした。 昨年のお話
  6. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 発表時にいただいたコメントは、今でも励みになっています。 昨年のお話
  7. page No. page No. 7 Copyright © 2021 WingArc1st Inc.

    All Rights Reserved. 01 昨年のお話を少し 02 この⼀年で私がやったこと INDEX 03 この⼀年で周りに起きたこと 04 その⼀年のまとめ 05 これからの話と今の私が伝えられること
  8. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. まずは私が所属するAutomationチームのイメージ図 Product A PO DEV QA Automation Team Product B PO DEV QA Product C PO DEV QA Product D PO DEV QA
  9. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. Postman + newmanで、WebAPIテストの⾃動化 1 / 4
  10. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. Open API Spec でAPI設計 Postmanでテスト実装 ExportしたCollectionを Newmanで実⾏ CI Serverに乗せて Commit時&Build時に実⾏ GET/POST PUT/DELETE + Newman テストピラミッドに則り、UI系⾃動テストではない領域のテスト⾃動化に取り組みました。 Postman + newmanで、WebAPIテストの⾃動化 SERVICE UNIT UI 去年はココから 始めた
  11. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. ここでも昨年の発表でもお話した「開発とのコラボレーション」を意識して取り組みました。 Postman + newmanで、WebAPIテストの⾃動化 週次定例の開催 開発とGitでテスト資産のやりとり 専⽤チャット
  12. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 弊社テックブログ「Postmanを使⽤してWebAPIの⾃動テストを継続的に実⾏する」より https://medium.com/wingarc/67595bb4ead1 この施策により、私たちが⽬指す場所への重要な戦略である 「Shift Left」が少しづつ実現し始めました。 Postman + newmanで、WebAPIテストの⾃動化 「ソフトウェア品質を⾼める開発者テスト」より https://www.amazon.co.jp/dp/4798165034
  13. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 可観測性施策 2 / 4
  14. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. Monitor Test テスト⾃動化とは少しズレますが、私たちの取り組みの有効性、 ひいてはビジネス活動をより客観視するため着⼿しはじめました。 可観測性施策 https://agiletester.ca/applying-the-agile-testing-quadrants-to-continuous -delivery-and-devops-culture-part-1-working-towards-continuous-delivery/ アジャイルテスト象限を継続的デリバリーとDevOpsカルチャーに適⽤する ‒パート1:継続的デリバリーに向けた取り組み 最新の本Agile Testing Condensedを執筆している間、製品を批判する右上の象限のビ ジネス向けテストに、本番環境での可観測性とテストを追加しました。 “we added observability and testing in production into the top right quadrant, business-facing tests that critique the product.”
  15. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. Dev Ops Release Deploy Operate Monitor Plan Code Build Test 私たちは、DevOps的な世界を標榜して活動しています。 (テストの⾃動化はそれを実現する重要な施策の⼀つ) 可観測性施策
  16. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. Dev Ops Release Deploy Operate Monitor Plan Code Build Test DevOps実現のために可観測性施策の「0.5歩」を踏み出しました。 可観測性施策
  17. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. まずは、既存のデータを活⽤しやすいJIRAチケットの分析に取り組んでいます。 可観測性施策 Git CI/CD Tool JIRA CSV JIRA • データ取得スクリプトにてCSV形式でデータを取得 • データベースに蓄積し集計/分析 • ビジネスについてはもとより、テスト戦略に使⽤する • 上流テストの浸透具合や有⽤性 • どの辺を⾃動化すれば良いか Datalizer
  18. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 課題も⾒えてきており「さて、どこから始めようかな」と思案中です。 可観測性施策 分析に有効な項⽬(フィールド)存在しない。 項⽬があっても⼊⼒されていない。 上流での⾃動テストで発⾒されたバグは即座に修正される ため、チケット⾃体が起票されていない。 課題:JIRAの運⽤から多少⼿を⼊れる必要がある
  19. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. モバイルネイティブアプリのE2Eテスト⾃動化 3 / 4
  20. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. PCの業務系SaaS中⼼の製品・サービスを展開していた弊社。 昨今、既存サービスのモバイル対応および新規モバイルサービスの開発が加速しています。 モバイルネイティブアプリのE2Eテスト⾃動化
  21. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 「リリースのたびにリグレッションテスト⼤変」と⾔う未来が⽬に⾒えているので、 ⼀部プロダクトに対してAppiumでiOS/Androidネイティブアプリのテスト⾃動化を進めています。 https://www.dejiren.com/ https://makit.fun/ モバイルネイティブアプリのE2Eテスト⾃動化
  22. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 実機検証のクラウドサービスでの運⽤も視野に⼊れ活動中です。 or https://appkitbox.com/testkit/ https://aws.amazon.com/jp/device-farm/ モバイルネイティブアプリのE2Eテスト⾃動化 Automationチーム以外のエンジニアも巻きこんで調査中
  23. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. テスト⾃動化 社内コミュニティの発⾜ 4 / 4
  24. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. やや希薄だったプロダクト間の横の繋がりを厚くするためコミュニティを発⾜しました。 (せっかく優秀なエンジニアが揃っているのにもったいないという思い) Q&A 気軽に質問ができる場の提供 Solving 個々で調査していたものを コミュニティで解決 Sharing 有⽤な情報をプロダクト間で共有 Accumuration 得たノウハウを蓄積(ゆくゆくは) Community テスト⾃動化 社内コミュニティの発⾜
  25. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. インセプションデッキを作成しコミュニティの存在意義を明確にした上で、 賛同者を集めました。(全プロダクトから集まってくれました) テスト⾃動化 社内コミュニティの発⾜
  26. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. ゆるいコミュニティ、質問・共有の場を作ることによって、 テスト⾃動化業務の効率化や技術向上・⽂化醸成の効果を期待しています。 テスト⾃動化 社内コミュニティの発⾜
  27. page No. page No. 27 Copyright © 2021 WingArc1st Inc.

    All Rights Reserved. 01 昨年のお話を少し 02 この⼀年で私がやったこと INDEX 03 この⼀年で周りに起きたこと 04 その⼀年のまとめ 05 これからの話と今の私が伝えられること
  28. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. Automationチームが直接関わらないところでもテストの⾃動化が進んでいます。 WebAPI テスト⾃動化 ユニット テスト⾃動化 ほか E2E テスト⾃動化 PostmanからKarateに変更し、プロダクト専任のQA担当が 開発と連携をとりながらテストを増やしている テスタブルな実装になるように、上流からQAがアーキテク チャ検討やコードレビューに⼊る動きを推進中 並⾏してTDDの推進なども検討中 Flutterモバイルアプリの⾃動テストを、プロダクト専任の QA担当が開発と連携をとりながらテストを実装している 別プロダクトでもStorybookを使⽤してテスト実装中 QA担当がテストコードを書く流れが加速中 この⼀年で周りに起きたこと ⾃動化相談 他部署(⾮開発系)からのテスト⾃動化相談
  29. page No. page No. 29 Copyright © 2021 WingArc1st Inc.

    All Rights Reserved. 01 昨年のお話を少し 02 この⼀年で私がやったこと INDEX 03 この⼀年で周りに起きたこと 04 その⼀年のまとめ 05 これからの話と今の私が伝えられること
  30. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 昨年の発表で「アイスクリームコーン型でもいい」という 半ば開き直りとも⾔える思いから始めた⾃動化施策は、 STAC2020 発表資料より
  31. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 1年を経て少しづつ変わってきています。 2020 2021 SERVICE UNIT UI UNIT SERVICE UI
  32. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 昨年の 0.5歩 Shift Left CI/CD Agile Testing QA スキル アップ Dev Ops これらの動きは、エンジニアの頑張りはもちろ んですが、弊社でテスト⾃動化をこれまで以上 に推進することの重要性が強く認識されつつ あった中、「Automationチーム」を明⽰的に 組織し「出来ること」と「意味のあること」を ⼩さなことから愚直にやり続けたことも深く関 係していると思います。 ⾃動化 ⽂化 結合テスト ⾃動化 ユニット テスト
  33. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 私たちは着実に1歩1歩、歩みを進めています。 去年私たちが踏み出した0.5歩は⼩さなものでしたが、 ウイングアークにとっては偉⼤な0.5歩だったのではないかと思います。 いま何歩⽬かな? (何を持って1歩とするのかによってどうとでも考えられますが)
  34. page No. page No. 35 Copyright © 2021 WingArc1st Inc.

    All Rights Reserved. 01 昨年のお話を少し 02 この⼀年で私がやったこと INDEX 03 この⼀年で周りに起きたこと 04 その⼀年のまとめ 05 これからの話と今の私が伝えられること
  35. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 各プロダクト横断でテスト⾃動化を推進することがミッションでした 2019年〜現在のAutomationチームのミッション Product A PO DEV QA Automation Team Product B PO DEV QA Product C PO DEV QA Product D PO DEV QA Automationチームの役割の再考
  36. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 現在の状況 QAが独⾃に⾃動テストの実装を進めている(⾃⾛)プロダクトも現れてきた反⾯、 まだ関われていないプロダクトもあります。 Product A PO DEV QA Automation Team Product B PO DEV QA Product C PO DEV QA Product D PO DEV QA Automationチームの役割の再考
  37. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. Automationチームの役割の再考 ゴリゴリ⾃動テストを実装しているQA ともしっかり連携していける⽴て付け 第1次施策は終わったのかもしれない まだ関われていないプロダクトへの アプローチ再考 QAエンジニアの⾃動テストスキル 向上 あるべき姿、ありたい姿にどんどん変化していきたい 進化の時 進化の時
  38. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. ユニットテストをもっと増やしたい ⇦ここを⼤きくしたい それを実現するために、「技術⾯」「マインド⾯」 双⽅のアプローチからユニットテスト⽂化を醸成していきたい。 UNIT SERVICE UI
  39. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 早くも思いは来年へ 来年のSTAC2022ではこの続きも踏まえつつ、 もう少し技術⾯で皆さんに有益な情報を提供できるような 発表(⽤語はJSTQB準拠!)にもチャレンジしたいと考えています。 • 自動テストにおけるコードベース戦略とローコード戦略のすみ分け / 高山 英介さん・大段 智広さん • Appium 2.0 ではじめるモバイルアプリテスト / 脇坂 雅幸さん こんな感じの切れ味鋭い発表に憧れてます。
  40. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. ふりかえれば 2020 2021 正直「もっとやれたな。もっとやりたかったな。」いう思いが強い⼀年でした。 こうしてふりかえってみると、前に進んでいるのだなと実感しました。 WebAPI 可観測性 E2E Comunity
  41. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 今の私が伝えられること この発表が、まだまだテスト⾃動化導⼊にお悩みの⽅の背中を 再度ちまっと後押しできることを願っています。 STAC2020 発表資料より • 進捗してる実感ない時もふりかえる • 何のための⾃動化か?を⼤切に • 愚直にやれば仲間は増えていく
  42. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 引き続き、私が仲間達と取り組んだことの発表などを通じて、 皆さんと⼀緒に⽇本の「ソフトウェアテスト⾃動化」の⽂化を 醸成していきたいと思っています。 そして
  43. Copyright © 2021 WingArc1st Inc. All Rights Reserved. Copyright ©

    2021 WingArc1st Inc. All Rights Reserved. 最後に こんな私たちと⼀緒に歩みを進めていきませんか? 阪神タイガースのクローザー並に【熱烈募集中】です! https://adventar.org/calendars/6351 「ウイングアーク アドベントカレンダー 2021」で検索!