えいのうにっき

a-knowの日記です

Autify → Mackerel 連携 - 継続的なE2Eテストを監視する

この記事は Autify アドベントカレンダー2021 および Mackerel アドベントカレンダー 2021 の20日目のためのブログエントリです。Autify の中の人(Autify のカスタマーサクセスエンジニアをしています)よりお届けしています。

qiita.com

qiita.com

当記事執筆現在、Autify ではテスト実行結果の通知連携先として Slack をサポートしています。

Slack連携 - Autify Help Center

その他に Autify は Webhook もサポートしていますので、Slack 以外のサービスに通知などを連携したい場合には、これを活用すると良いです。

Webhook を作成する - Autify Help Center

「Webhook」というのは、何か世界標準的なフォーマットがあるわけではなく(あったら面白そうです)、「何らかのイベントが発生した場合に、あらかじめ指定された任意のURLにPOSTリクエストを送る」、ということを指していることが殆どだと思います。つまり、送られてくるその中身は、サービスごとにバラバラです。

そのため、任意のサービスに対して Webhook を使って連携をしたい場合には、「通知元(Webhookの送り元)のサービス」と「通知先(Webhookの送り先)のサービス」の間に、「通知元サービスの Webhook リクエストの内容を、通知先のサービスが求める内容に変換する "なにか"」を挟んであげる必要があります。イメージとしては以下の図のような感じです。

f:id:a-know:20211203175751p:plain

今回のこのブログ記事では、これにトライしてみることにします。「リクエストの内容を変換する "なにか"」と「通知先のサービス」は、今回は以下の図のような構成にしてみました。

f:id:a-know:20211203175806p:plain

「Google Cloud Run」は Google が提供するクラウドプラットフォーム・Google Cloud Platform 内の1サービスで、フルマネージドなコンテナ実行環境です。

cloud.google.com

「Mackerel」は、株式会社はてな が提供する SaaS 型のサーバー監視サービスです。とはいっても Mackerel は「サーバー」だけでなく「サービス」の監視も可能なので、「Autify による、サービスに対するE2Eテストを行った結果を連携・監視する」という観点でもピッタリです。

ja.mackerel.io

ちなみに、僕が前職・はてなに所属していたときに携わっていたプロダクトでもあります。Mackerel、チョットワカル。(でもだいぶ忘れてきちゃいましたが......。)

上記の構成で実現を試みる内容は、「Autify テストプランを実行した結果のうち、"成功したテストシナリオ数" と "成功以外だったテストシナリオ数" を Mackerel に投稿する」というものです。

果たして、うまく連携できるでしょうか?続きをお楽しみください!

続きを読む

GitHub Actions による CI で Autify E2Eテスト! a-know/actions-autify-light の宣伝をします

この記事は Autify アドベントカレンダー2021の6日目のためのブログエントリです。Autify の中の人(Autify のカスタマーサクセスエンジニアをしています)よりお届けしています。

qiita.com

僕が Autify に入社したときのお土産(?)がわりだった、自作 GitHub Actions の a-know/actions-autify-light。README はある程度ちゃんと書いてはいるものの、それっきりだったりするので、改めてここで「それがどんなものか」について宣伝 紹介させてください!

github.com

続きを読む

Google Cloud Scheduler を使って、Autify テストプランを柔軟なスケジュールで実行する

この記事は Autify アドベントカレンダー2021の2日目のためのブログエントリです。Autify の中の人(Autify のカスタマーサクセスエンジニアをしています)よりお届けしています。

qiita.com

Autify では、テストプランを利用することで、定期的にテストを自動実行させることが可能です。

f:id:a-know:20211201111658p:plain

設定画面は上記のようなものになっており、これ以上の内容でのスケジュール設定は、Autify 単体では行わせることはできません。

続きを読む