--- title: "Autify GitLab CI/CD 連携ガイド | Autify Guide" slug: "gitlab-cicd-integration" description: "AutifyをGitLab CI/CDと連携する方法を学びましょう。シームレスな自動化テストを開始しましょう!" updated: 2024-07-02T06:50:02Z published: 2024-07-02T06:50:02Z canonical: "help.autify.com/gitlab-cicd-integration" --- > ## Documentation Index > Fetch the complete documentation index at: https://help.autify.com/llms.txt > Use this file to discover all available pages before exploring further. # GitLab CI/CD 連携 Autify ではお手持ちのGitLab CI/CD workflow から簡単にテストプランやシナリオを実行できる公式の手法を提供しています。 ## はじめてみよう このドキュメントでは、皆さんのGitLab リポジトリでどのようにGitLab CI/CD 連携を利用するかを順に説明していきます。 ### 前提条件 まず、すでにGitLab CI/CD workflow を使ってステージングやプロダクション等へのソフトウェアのデプロイを行なっているものとします。そのデプロイjob のすぐ後にAutify のテストを実行するjob を追加することで、新しくデプロイされたソフトウェアがエンドツーエンドのユーザ体験を損ねていないことを確認できるようにします。 次に、[Autify NoCode Web](https://app.autify.com) でテストプランかテストシナリオを作成する必要があります。テストシナリオは、そのGitLab CI/CD workflow でソフトウェアがデプロイされるウェブサイトに対してレコーディングすることになります。テストプランまたはシナリオのURL (例: `https://app.autify.com/projects/00/scenarios/000`) をメモしておいてください、後ほど利用します。 さらに、[パーソナルアクセストークンを生成する](https://help.autify.com/docs/ja/integrate-with-api#%E3%83%91%E3%83%BC%E3%82%BD%E3%83%8A%E3%83%AB%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%83%88%E3%83%BC%E3%82%AF%E3%83%B3%E3%81%AE%E7%99%BA%E8%A1%8C)必要があります。後ほどGitLab CI/CD variables に保存するために、生成されたトークンはどこかにメモしておいて下さい。 *注: パーソナルアクセストークンは1人のユーザに紐づいてしまうので、CI/CD 連携のために組織にマシンユーザを作って、そのパーソナルアクセストークンを使うことをお勧めします。* ### パーソナルアクセストークンをGitLab CI/CD variables に保存 上で生成したパーソナルアクセストークンを[GitLabのドキュメント](https://docs.gitlab.com/ee/ci/variables/index.html#add-a-cicd-variable-to-a-project)に従って、Custon CI/CD variables としてVariables に保存します。(project またはgroup に保存します。) もしprotected でないbranch/tag に対してAutify のjob を実行したければ、"Protect variable" の選択を解除します。万が一トークンの値がログに曝露しないように、"Mast variable" を選択しておくことをお勧めします。 **この値は絶対に`.gitlab-ci.yml` に直接保存してはいけません。平文で読むことが可能になってしまいます。** Variable のkey は任意ですが、`AUTIFY_WEB_ACCESS_TOKEN` と命名した場合はそれがAutify CLI が読み込むデフォルトの変数なので、後ほどこのkey を指定する必要がありあせん。ここではそうしたと仮定しておきます。 ### Autify NoCode Web を実行するGitLab CI/CD job を追加 それでは、お手持ちのGitLab CI/CD workflow に新しいjob を追加しましょう。お手持ちの`.gitlab-ci.yml` を開き、以下の例を参考にしてください。URL の値(`https://app.autify.com/projects/00/scenarios/000`)は上でメモしたURL になります。 --- シンプルにテストを開始してstep を終了 (テストの完了は待たない): ``` autify-test-job: stage: before_script: - curl https://autify-cli-assets.s3.amazonaws.com/autify-cli/channels/stable/install-standalone.sh | sh script: - autify web test run https://app.autify.com/projects/00/scenarios/000 ``` テストを開始して、それが完了するかタイムアウトするまで待つ: ``` autify-test-job: stage: before_script: - curl https://autify-cli-assets.s3.amazonaws.com/autify-cli/channels/stable/install-standalone.sh | sh script: - autify web test run https://app.autify.com/projects/00/scenarios/000 --wait --timeout 300 ``` **警告: この設定はテスト完了を待っている間もGitLab CI/CD minites を消費します。タイムアウトを延長するときは注意してください。** `--url-replacements` を使ってテストプラン又はシナリオを別のURL に対して開始する: ``` autify-test-job: stage: before_script: - curl https://autify-cli-assets.s3.amazonaws.com/autify-cli/channels/stable/install-standalone.sh | sh script: - autify web test run https://app.autify.com/projects/00/scenarios/000 --url-replacements http://example.com=http://example.net ``` `--url-replacements` はステージングのウェブサイトに対してプロダクションのウェブサイトで記録したテストシナリオを実行したい時などに有効です。 ## まとめ Autify のGitLab CI/CD 連携を使うことで、デプロイ後にテストプランやシナリオの実行を自動化できるので、無駄な時間を使うことなくリグレッションをすぐに検知して適切な行動を取ることができるようになります。