Azure Pipelines 連携
  • 23 Aug 2022
  • 1 分で読めます
  • 投稿者
  • ダーク
    ライト

Azure Pipelines 連携

  • ダーク
    ライト

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

はじめてみよう

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

前提条件

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

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

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

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

パーソナルアクセストークンをAzure Pipelines variables に保存

上で生成したパーソナルアクセストークンをAzure のドキュメントに従って、secret variables に保存します。

Secret variable の名前は任意ですが、その名前はAzure Pipelines を定義するときに参照します。ここではAUTIFY_WEB_ACCESS_TOKEN と命名したと仮定しておきます。

Autify for Web を実行するAzure Pipelines step を追加

それでは、お手持ちのAzure Pipelines workflow に新しいstep を追加しましょう。お手持ちのazure-pipelines.yml を開き、以下の例を参考にしてください。URL の値(https://app.autify.com/projects/00/scenarios/000)は上でメモしたURL になります。

Windows runner はまだサポートしていません。

もしデプロイjob がWindows runner で実行されている場合は、ubuntu-latestmacOS-latest で実行される新しいjob をデプロイjob の後に追加して、そこに以下のsteps を追加する必要があります。


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

- script: curl https://autify-cli-assets.s3.amazonaws.com/autify-cli/channels/stable/install-standalone.sh | sh
  displayName: 'Install Autify CLI'

- script: autify web test run https://app.autify.com/projects/00/scenarios/000
  displayName: 'Run test on Autify for Web'
  env:
    AUTIFY_WEB_ACCESS_TOKEN: $(AUTIFY_WEB_ACCESS_TOKEN)

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

- script: curl https://autify-cli-assets.s3.amazonaws.com/autify-cli/channels/stable/install-standalone.sh | sh
  displayName: 'Install Autify CLI'

- script: autify web test run https://app.autify.com/projects/00/scenarios/000 --wait
  displayName: 'Run test on Autify for Web'
  env:
    AUTIFY_WEB_ACCESS_TOKEN: $(AUTIFY_WEB_ACCESS_TOKEN)

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

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

- script: curl https://autify-cli-assets.s3.amazonaws.com/autify-cli/channels/stable/install-standalone.sh | sh
  displayName: 'Install Autify CLI'

- script: autify web test run https://app.autify.com/projects/00/scenarios/000 --url-replacements http://example.com=http://example.net
  displayName: 'Run test on Autify for Web'
  env:
    AUTIFY_WEB_ACCESS_TOKEN: $(AUTIFY_WEB_ACCESS_TOKEN)

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

まとめ

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


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.