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

Autifyの運用について

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

 Autifyの運用について

LegalForce社内で使っているAutifyに関するドキュメントのサンプルです。

Avatar for LegalOn Technologies, Inc

LegalOn Technologies, Inc PRO

February 08, 2021
Tweet

More Decks by LegalOn Technologies, Inc

Other Decks in Programming

Transcript

  1. ( 共有⽤Autify の運⽤について 1 🤖 ( 共有⽤)Autify の運⽤について Created Last

    edited time Owner Aya Kawasaki Property Tags ⽬次 ⽬的 このページでは、E2E テストをどのように使⽤して実⾏・運⽤していくかをまとめていきます。 主に実⾏しているのは本番環境ですが、stg 環境で実施するための⽅法も併せて記載していきます。 Autify について 導⼊の⽬的と体制 Autify とは? E2E テストを⾃動で実⾏でき、そのシナリオをUI 上で作成できるツールです。 誰でも簡単にプログラムコードを書くことなく、ウェブアプリケーションの検証作業が⾃動化できるため、⾮エンジニアでも テスト⾃動化が可能です。また、AI がアプリケーションコードの変更を監視し、⾃動で検証シナリオの修正を⾏うため、メン テナンスコストを⼤きく下げる事ができます。 ※E2E テストとは E2EEnd to End) テストは、システム全体を実稼働時に近い状況で動かし操作した結果が期待通りとなっているかを確認する テスト(User Interface テストとも呼ばれている) Autify の特徴 ① コードを書かずにテストシナリオを作成できる ② シナリオのメンテナンスをAI が⾃動化 ③ あらゆるブラウザでテスト実⾏できる 導⼊の⽬的 ⽇々の機能実装の各機能( 画⾯) に対して、意図しない機能の不具合を含まないことを定期的に実⾏して確認する⽬的で導⼊し ており、主に本番環境での確認を⾏います。 Jan 28, 2021 547 PM Feb 3, 2021 1041 AM ⽬次 ⽬的 Autify について
  2. ( 共有⽤Autify の運⽤について 2 定期実⾏テストについて 現在⾏っている定期実⾏テストはこちら。 全体回帰テスト → サービス全体の確認 ⽇次テスト

    → デグレが起きやすい機能を中⼼に確認 テスト実施機能の詳細は「Autify テスト設計」に記載しています。 全体回帰テストの確認内容は「サービス全体リグレッション確認テスト」とほぼ同様のものになります。(⼀部確認できない 項⽬あり※ ) Autify 上で使⽤しているファイルは「Autify ⽤テストファイル」をご確認ください。 Autify で確認できないこと Autify の機能上確認できないこと 〜〜〜 シナリオ修正ができていない項⽬ 〜〜〜 シナリオ⾃体が未作成・作成中 〜〜〜 その他 〜〜〜 シナリオ作成・管理について Autify のテスト内容 確認すること E2E test 機能がシナリオ形式で動作することを担保します 管理コストや実⾏スピードが落ちないように調整して担保します 確認しないこと Unit test Unit test をE2E テストで担保することはコストが⾼いため、担保しません Unit test はUnit test で担保してください ブラウザ別のテストChrome/Linux でのみテストシナリオ流す ) ブラウザ別のテストを⾏うと時間がかかりすぎるため ブラウザ毎に動かないシナリオが存在することが多々あるため シナリオの書き⽅ シナリオの作成と実⾏⽅法をご確認下さい。 シナリオの作成ルール ① タイトルの命名について [#CaseID 機能名 ⽬的:テスト設計シートとAutify 間のトレーサビリティーを向上するため
  3. ( 共有⽤Autify の運⽤について 3 ② シナリオの分け⽅について 各画⾯の基本的な動作確認については、1 シナリオで完結させるようにする。 📌 e.g.

    ・〜〜〜 👉200 ステップ以上になるシナリオAutify のサポート上限) 、もしくは実⾏時間が1 時間以上かかってしまうものなど、管理 が困難なシナリオについては2 シナリオに分けて良い⽅針とする。 各画⾯で、⼊⼒値の確認やファイルの種類ごとに確認が必要なもの、確認項⽬が多いものについては、別途シナリオを作 成し確認する。 📌 e.g. ・〜〜〜 ⚠ 作成上の注意⚠ ・テスト実⾏は主に本番環境で⾏っているがstg 環境で検証する場合もあるため、どの環境にも対応できるようシナリオの確 認内容の設定をすること 📌 e.g. ・URL の確認 ◯ ページのURL が「example.com/ 」であること ✕ ページのURL が「https://example.com/ 」 👉stg 環境で実施した場合、URL は「https://test◯-example.com/ 」となるためNG になってしまう ※ 画⾯遷移の確認であれば、画⾯のタブタイトル確認でも可 ・シナリオの修正・新規作成後の検証は、本番環境、stg 環境共に⾏うこと ・コメント機能をうまく活⽤し、確認内容がわかりにくい部分については解説を⼊れること テスト設計書について Autify で⾏うテストのシナリオごとに、どのような確認をしているのか・どのようなファイルを使⽤しているか等を設計書に まとめて管理しています。(ログイン情報の記載もしています) 👉Autify テスト設計 「ID Lists 」シートについて Autify でテスト実⾏するにあたり、以下の情報を記載しています。 テストに使⽤するアカウントのログイン情報 定期実⾏テストの内容について Autify で実⾏する各シナリオの情報 参考資料の格納場所等 「Template 」シートについて ① テスト対象 確認する機能( または画⾯) を記載しています。
  4. ( 共有⽤Autify の運⽤について 4 e.g. 〜〜〜 〜〜〜 ② テスト観点 テスト対象に対して確認する内容を記載しています。

    e.g. チェック UI URL タブタイトル 遷移 画⾯ バリデーション ⼊⼒値 権限 ③ 確認対象外項⽬ 各画⾯ごとに確認しない/Autify では確認できない内容を記載しています。 記載することでAutify で実装が可能になった際に機能追加することができるようにするためです。 ※Autify の機能実装が⽇々改善されているため、確認できるものが増えていないか定期的に確認すること。 ④ レビュー・指摘 作成したシナリオについて第3 者に確認してもらった際のやり取りを記載しています。 ⚠Autify の定期実⾏テストではでテストケースの作成を⾏っておりません。 理由としては、機能が変更された時の運⽤⽅法としてAutify の修正とテストケースの修正を⾏うことがコストになるためで す。この理由から、「テストケース作成をテスト設計のみに抑え、テスト設計で書く内容を固める」の⽅針で資料作成を⾏っ ています。 課題 実⾏スピードが遅い 定期実⾏は問題ないが、作成したテストが動作するかの確認をするときには業務効率が悪い 夜中に⼀回実⾏する程度の利⽤であれば問題ないが開発フローに導⼊は厳しそう( コードレビューと並⾏して実⾏ など) → こちら並列実⾏を取り⼊れることで1/4 ほどまで削減することに成功しました。🎉2020/09 前提条件をまとめられない テストシナリオを新規で作成すると複製以外で前提条件をまとめることができない → ログイン情報のステップについては、ステップグループを活⽤することで可能になりました。🎉2020/04 データバリエーションについて 絵⽂字は確認対象外
  5. ( 共有⽤Autify の運⽤について 5 その他、テスト上の細かい課題の洗い出しやAutify に問い合わせを随時⾏っています。 状況についてはテスト設計書の「FAQ 」シートをご確認下さい。 テストプランの作成⽅法 作成したシナリオをまとめて実⾏する場合は「テストプラン」の作成が必要になります。

    ①Autify 「テストプラン」にアクセス ② 「新規テストプラン」をクリックする ③ テストプラン名を設定する(作業意図、検証環境の情報もあるとよい) ④ テストプランの詳細設定を⾏う 実⾏環境:「Chrome 86.0 / Linux 」に設定する。 (IE の実施も問題なくできるようになったら「IE 11.0 / Windows Server 2019 」も追加) ※ 実⾏速度は「Chrome 86.0 / Linux 」が1 番速い 定期実⾏:定期実⾏が必要であれば⽇時を登録(設定しておくことで⾃動的に実施が可能) シナリオ:実施したいシナリオを選択して登録 シナリオ内のURL 置換:シナリオは全て本番環境で設定しているため、stg 環境等で実施する場合は設定する必要がある
  6. ( 共有⽤Autify の運⽤について 6 ◆ ・ 参考 ・◆ 対象のAutify ヘルプページ

    https://autify.zendesk.com/hc/ja/articles/900002604346 テストプラン- 旧- スケジュール- とはなんですか- テスト実⾏状況・結果確認について Autify で確認 「テスト結果」より、状況と実⾏結果の確認ができます。 Slack で確認 #notice-autify を確認して下さい。(実⾏結果のみ表⽰されます) テスト実施後について テストを実施後は、速やかに修正したシナリオ内の情報を本番環境に対応した値に戻して下さい。