CircleCI 連携
  • 04 Oct 2022
  • 1 分で読めます
  • 投稿者
  • ダーク
    ライト

CircleCI 連携

  • ダーク
    ライト

Article Summary

Autify ではお手持ちのCircleCI workflow から簡単にテストプランやシナリオを実行できる公式のCircleCI Orb を提供しています。

はじめてみよう

このドキュメントでは、皆さんのGit リポジトリでどのようにAutify のCircleCI 連携を利用するかを順に説明していきます。

前提条件

まず、すでにCircleCI workflow を使ってステージングやプロダクション等へのソフトウェアのデプロイを行なっているものとします。そのデプロイjob のすぐ後にAutify のテストを実行するjob を追加することで、新しくデプロイされたソフトウェアがエンドツーエンドのユーザ体験を損ねていないことを確認できるようにします。

次に、Autify for Web でテストプランかテストシナリオを作成する必要があります。テストシナリオは、そのCircleCI workflow でソフトウェアがデプロイされるウェブサイトに対してレコーディングすることになります。テストプランまたはシナリオのURL (例: https://app.autify.com/projects/00/scenarios/000) をメモしておいてください、後ほど利用します。

さらに、パーソナルアクセストークンを生成する必要があります。後ほどEnvironment Variables (環境変数) に保存するために、生成されたトークンはどこかにメモしておいて下さい。

注: パーソナルアクセストークンは1人のユーザに紐づいてしまうので、CI/CD 連携のために組織にマシンユーザを作って、そのパーソナルアクセストークンを使うことをお勧めします。

パーソナルアクセストークンをEnvironment Variables に保存

上で生成したパーソナルアクセストークンをCircleCI のドキュメントに従って、Environment Variables (環境変数) に保存します。名前は任意ですが、AUTIFY_WEB_ACCESS_TOKEN と命名した場合はそれがデフォルトの名前なので後ほどこの名前を指定する必要がありあせん。ここではそうしたと仮定しておきます。

Autify for Web を実行するCircleCI job を追加

それでは、お手持ちのCircleCI workflow に新しいjob を追加しましょう。以下の例を参考にしてください。autify-test-url の値は、上でメモしたURL になります。

パラメータの詳細は CircleCI Orb のページも参考にしてください: https://circleci.com/developer/orbs/orb/autify/autify-web


シンプルにテストを開始してstep を終了 (テストの完了は待たない):

orbs:
  autify-web: autify/autify-web@3
workflows:
  test-run:
    jobs:
      - autify-web/test-run:
          autify-test-url: 'https://app.autify.com/projects/00/scenarios/000'

テストを開始して、それが完了するかタイムアウトするまで待つ:

orbs:
  autify-web: autify/autify-web@3
workflows:
  test-run:
    jobs:
      - autify-web/test-run:
          autify-test-url: 'https://app.autify.com/projects/00/scenarios/000'
          wait: true
          timeout: 300

警告: この設定はテスト完了を待っている間もCircleCI build の時間を消費します。タイムアウトを延長するときは注意してください。

url-replacements を使ってテストプラン又はシナリオを別のURL に対して開始する:

orbs:
  autify-web: autify/autify-web@3
workflows:
  test-run:
    jobs:
      - autify-web/test-run:
          autify-test-url: 'https://app.autify.com/projects/00/scenarios/000'
          url-replacements: http://example.com=http://example.net

url-replacements はステージングのウェブサイトに対してプロダクションのウェブサイトで記録したテストシナリオを実行したい時などに有効です。

まとめ

Autify のCircleCI Orb を使うことで、デプロイ後にテストプランやシナリオの実行を自動化できるので、無駄な時間を使うことなくリグレッションをすぐに検知して適切な行動を取ることができるようになります。


この記事は役に立ちましたか?

What's Next
Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.