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

GitHub Actions 連携

  • ダーク
    ライト

記事の要約

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

はじめてみよう

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

前提条件

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

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

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

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

パーソナルアクセストークンをGitHub Actions Secrets に保存

上で生成したパーソナルアクセストークンをGitHub のドキュメントに従って、Secrets に保存します。Secret の名前は任意ですが、その名前はGitHub Actions を定義するときに参照します。ここではAUTIFY_WEB_ACCESS_TOKEN と命名したと仮定しておきます。

Autify for Web を実行するGitHub Actions step を追加

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

パラメータの詳細はGitHub Marketplace も参考にしてください: https://github.com/marketplace/actions/run-test-on-autify-for-web


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

- uses: autifyhq/actions-web-test-run@v2
  with:
    access-token: ${{ secrets.AUTIFY_WEB_ACCESS_TOKEN }}
    autify-test-url: https://app.autify.com/projects/00/scenarios/000

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

- uses: autifyhq/actions-web-test-run@v2
  with:
    access-token: ${{ secrets.AUTIFY_WEB_ACCESS_TOKEN }}
    autify-test-url: https://app.autify.com/projects/00/scenarios/000
    wait: true
    timeout: 300

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

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

- uses: autifyhq/actions-web-test-run@v2
  with:
    access-token: ${{ secrets.AUTIFY_WEB_ACCESS_TOKEN }}
    autify-test-url: https://app.autify.com/projects/00/scenarios/000
    url-replacements: http://example.com=http://example.net

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

まとめ

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


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

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.