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

Autify初心者でも気軽にテスト実行できる仕組み作り

 Autify初心者でも気軽にテスト実行できる仕組み作り

LegalForceではAutifyを活用した自動E2Eテストの整備を行っています。
これまで1年ほどAutifyを使ってきた中で社内に蓄積されたうまく運用する仕組みづくりについてご紹介します。

Ad2155c75c67c0100dd008ad10858de5?s=128

LegalForce, Inc
PRO

February 08, 2021
Tweet

Transcript

  1. Autify初心者でも気軽にテスト実行できる仕組み作り 株式会社LegalForce QAエンジニア 川﨑 彩 LegalForceとMarshallのご紹介 2021/01/28 Autify User Meetup 1

  2. 自己紹介 2

  3. 川﨑 彩(Kawasaki Aya) 2020年2月より QAエンジニアとして 株式会社LegalForceに参画 自己紹介 ◇◆ LegalForce Engineering

    Blog ◆◇ https://tech.legalforce.co.jp/ (QAの事例も後日公開予定です ..!) 3
  4. 契約リスクの制御を実現する製品ラインナップ 契約書レビューをAIで加速。 締結済みの契約書を自動で整理。 いつでも見つかる。 4

  5. 契約書レビューサービスLegalForce • 契約書レビューを自然言語処理技術等を用いてサポートするプロダクト 650 5 ※2021年1月時点

  6. 6 本日のお話 Autifyの活用例 LegalForceの取り組み ~ Autify導入から現在に至るまで ~ Autify初心者でも気軽にテスト実行できる仕組み作り ~ 資料の整備について

    ~ 今後取り組んでいきたいこと Autify初心者でも気軽にテスト実行できる仕組み作り ~ シナリオ作成Tips ~
  7. Autifyの活用例 7

  8. 8 Autifyの活用例(LegalForceの場合) 機能監視テスト リグレッションテスト • 本番環境で定期実行 • 日次テスト(月〜金) :13シナリオ • 週次の全体回帰テスト

    (日) :21シナリオ →毎日結果確認し、NGがでた場合や機能リリースの状況によって適宜シナリ オ修正 • 検証環境(6環境)で不定期実行 • 全体回帰テストとカスタムテストを用意 • 普段Autifyを触らない人でも好きな時に実施可能 • 複数環境で同時に実施可能 ◆2020年2月から本格運用開始 ◆定期実行の機能監視テスト・不定期実行のリグレッションテストを実施 ◆QAチームでシナリオ作成や定期実行の運用をしつつ、開発メンバーでも気軽にテスト実行できるよう環境整備
  9. LegalForceの取り組み Autify導入から現在に至るまで 9

  10. 現在の体制になるまで 2020.02 2020.04 2020.06 2020.10 2021.01 Autify利用開始 本番環境での テスト実行開始 検証環境での

    テスト実行開始 現在 テスト実施環境改良 &ナレッジ資料作成 ◆機能ごとの簡単な シナリオを作成 ◆検証環境でテスト 実行開始 ◆機能ごとの確認範囲を拡張 ◆本番環境で日次・週次の テスト実行開始 ◆テスト設計書の作成 ◆失敗しやすい検証環境での テスト実行を行うため シナリオ修正 ◆検証環境でのテスト 実行開始 ◆Autify専用の テスト環境整備 ◆本番・検証環境で気軽に テスト実行できるように 手順書作成 ◆ナレッジ資料の拡張 ◆開発に関わるメンバー への情報共有   課題   リリース後で良いので 機能監視テストとして活用 したい   課題   リリース前のリグレッションテ ストとして活用したい   課題   テスト実施の属人化 を解消したい 10
  11. 現在の体制になるまで 2020.02 2020.04 2020.06 2020.10 2021.01 Autify利用開始 本番環境での テスト実行開始 検証環境での

    テスト実行開始 現在 テスト実施環境改良 &ナレッジ資料作成 ◆機能ごとの簡単な シナリオを作成 ◆検証環境でテスト 実行開始 ◆機能ごとの確認範囲を拡張 ◆本番環境で日次・週次の テスト実行開始 ◆テスト設計書の作成 ◆失敗しやすい検証環境での テスト実行を行うため シナリオ修正 ◆検証環境でのテスト 実行開始 ◆Autify専用の テスト環境整備 ◆本番・検証環境で気軽に テスト実行できるように 手順書作成 ◆ナレッジ資料の拡充 ◆開発に関わるメンバー への情報共有   課題   リリース後で良いので 機能監視テストとして活用 したい   課題   リリース前のリグレッションテ ストとして活用したい   課題   テスト実施の属人化 を解消したい 11
  12. Autifyのテストを実施してみよう!と思ってもらうために何をしたか Autifyとは何か、普段どんな運用をしているかを周知する 本番・検証環境関係なく同一のシナリオでテスト実施できるよう整備する テスト実行までの手間を最小限にする テスト実行の手順書を作成する 12

  13. Autifyのテストを実施してみよう!と思ってもらうために何をしたか Autifyとは何か、普段どんな運用をしているかを周知する 本番・検証環境関係なく同一のシナリオでテスト実施できるよう整備する テスト実行までの手間を最小限にする テスト実行の手順書を作成する ナレッジ資料の作成、シナリオの汎用化 13

  14. Autify初心者でも気軽にテスト実行できる仕組み作り 資料の整備について 14

  15. LegalForceで作成している資料 Autifyのテスト実施に必要な情報について Autifyの運用について リグレッションテスト実施手順について 環境整備について 15

  16. LegalForceで作成している資料 Autifyのテスト実施に必要な情報について Autifyの運用について リグレッションテスト実施手順について 環境整備について 16

  17. Autifyの運用について 導入の目的、実際行っているテストについて 記載し、メンバーに情報共有を行う LegalForceの場合・・・ ◆Autifyとは何か・導入の目的 ◆運用している定期実行テストについて ◆現在作成しているシナリオで確認できないこと ◆社内のシナリオ作成ルールについて ◆シナリオやテストプランの作成方法について Point

    17
  18. LegalForceで作成している資料 Autifyのテスト実施に必要な情報について Autifyの運用について リグレッションテスト実施手順について 環境整備について 18

  19. Autifyのテスト実行に必要な情報について テスト実行に必要な情報を集約しておく LegalForceの場合・・・ ◆Autify専用アカウントの情報や参考資料について Point 19

  20. Autifyのテスト実行に必要な情報について テスト実行に必要な情報を集約しておく LegalForceの場合・・・ ◆Autify専用アカウントの情報や参考資料について ◆定期実行についての詳細日程や時間について Point 20

  21. Autifyのテスト実行に必要な情報について テスト実行に必要な情報を集約しておく LegalForceの場合・・・ ◆シナリオ名にIDを振って管理 Point 21

  22. Autifyのテスト実行に必要な情報について テスト実行に必要な情報を集約しておく LegalForceの場合・・・ ◆シナリオ名にIDを振って管理 ◆実施時間の目安があると便利 Point 22

  23. Autifyのテスト実行に必要な情報について テスト実行に必要な情報を集約しておく LegalForceの場合・・・ ◆シナリオ名にIDを振って管理 ◆実施時間の目安があると便利 ◆実施対象のテストプランやシナリオで使用するファイル名も記載 Point 23

  24. LegalForceで作成している資料 Autifyのテスト実施に必要な情報について Autifyの運用について リグレッションテスト実施手順について 環境整備について 24

  25. 環境整備について 事前に用意が必要なものについて記載しておく LegalForceの場合・・・ ◆検証環境での実行までにかかる時間を減らすため、 事前に準備する点のリストアップをして設定  →共通アカウント作成  →ファイルアップロード 等 Point 25

  26. 環境整備について 実施する状況に応じて使用するテストプランを分ける LegalForceの場合・・・ ◆システム全体を実施するテストプラン「全体回帰テスト」  →定期実行の設定なし、シナリオ修正なし ◆一部の機能だけ実施するテストプラン「カスタムテスト」  →定期実行の設定なし、テスト実行時にシナリオを選択   の2種類のテストプランを環境ごとに用意し、用途に応じて使い分け できるように設定している

    ◆検証環境ごとにURLが異なるのでURL置換も活用することで  ステップグループやシナリオ修正の手間をなくす Point 26
  27. LegalForceで作成している資料 Autifyのテスト実施に必要な情報について Autifyの運用について リグレッションテスト実施手順について 環境整備について 27

  28. リグレッションテスト実施手順について 実施手順・パターンを記載してわかりやすく LegalForceの場合・・・ ◆テスト実施に必要な設定・ファイルのアップロード等は 事前に行い、実施時の手間を削減 (「環境整備について」の対応) ◆用途に応じてテストプランを使い分けてもらえるよう 実施パターンを記載 Point 28

  29. Autify初心者でも気軽にテスト実行できる仕組み作り シナリオ作成Tips 29

  30. シナリオ作成Tips 実施環境に依存した確認対象を除外し、シナリオを汎用化する • 環境ごとに変わる値の確認(URLの確認等)については、共通部分だけ抜き出して確認する • 使用するアカウントについても本番・検証環境で全く同じアドレス、PWで用意しておく シナリオごとに使用するファイルを分ける・シナリオ内で削除する • 各シナリオで使用するファイルを全て異なる名前にして分けることで、確認対象のファイルを間違えてしまうこ とがなくなる

    • 確認後のファイルはシナリオ内で削除するとその後同一のシナリオのテスト実施をした際にNGが出にくくな る(シナリオの最初に不要なファイルが存在していないか確認するのもおすすめ) 30
  31. シナリオ作成Tips 待機ステップの活用 • ローディングが発生する部分の確認についてはこまめに「待機ステップ」を追加することで、実施環境ごと動 作速度が若干異なってもNGが発生しにくい 並列実行の活用 • シナリオを複数同時実施できるよう準備が必要な場合があるがとても便利 →全体回帰テストにかかる時間が4、5時間から1時間ほどになった(NGの数もほぼ変わらず) 31

  32. 今後取り組んでいきたいこと 32

  33. 33 今後取り組んでいきたいこと Chrome以外の実行環境 でのテスト実施を可能に ビジュアル リグレッションテスト ナレッジ資料の拡充 リリース前の機能修正確認として Autifyを活用

  34. ご清聴ありがとうございました! 34