はじめに
こんにちは。QAエンジニアをしている田井です。
前回のMagicPodを使って本番環境で定期実行してみたに続き、MagicPodの話です。
今回はMagicPodで定期実行している回帰テストの結果をダッシュボードで見れるようにした話をします!
ダッシュボードを作ろうとした理由
元々QAチーム内では結果を振り返りで確認したり、GASでスプレッドシートに吐き出すような機能はあったのですが、
エンジニアやPOなどとは細かく共有できていませんでした。
QAイベントなどでもデータは公表していましたが、社内での共有はまだ足りてないという課題感がありました。
そこで、こちらの記事で知ったMagicPod-Analyzerを使うことにしました。採用した理由としては、自分自身がコーディングなどの知識が乏しく自前では難しいことと、使い方の細かく説明があることでした。
MagicPod-Analyzer&BigQuery&LookerStudio
上の画像のようにLookerStudioを使い、ダッシュボードを作りました。
データの取得と格納にはAutomator、Automatorを自動で実行するにはMACのカレンダー機能を使いました。もっとスマートなやり方はあるのでしょうが、自分が管理できる範囲でということが大前提のためAutomator&カレンダー機能にしました。
処理の流れ
処理的には以下のようなことをしています(AndroidとiOSで別々で実行しています)。
- MagicPod-Analyzerで最新データをダウンロード
- リネーム&オリジナルを保存()
- jqコマンドで整形
- BigQueryへデータをロード
- リネームしたファイルを削除
データの取得
データの取得はMagicPod-Analyzerのreadme通りに準備を進めていきました。
まずはターミナルで実行してみて、ファイルが保存されることを確認。
そのコマンドをAutomatorに設定しました。
また、Slackで通知するようもしたので、通知内のリンクからPDFファイルを見れるようになりました。
データの格納
データの格納も定期的に行うため、Automatorで設定しました。
定期実行は平日の朝走るので、昼頃にデータの取得をしたら、格納を行うように設定しました。
これにより会社全体に共有できたのですが、、BigQueryは無料プランで使っていたため、DBが削除されてしまいました(認識してなかったんです)。。
課金すればすぐに解決するのですが、ダッシュボードだけのためにコストをかけるのことはしたくなかったので、別の方法を考えることにしました。
GAS&Gooogleサイト
その時に思い付いたのが、QAチームで作成したGASでも定期実行などのデータを取得していたということでした(最初から思いつけばよかったんですが。。)。
そこで、スプレッドシートにあるデータを使い、ダッシュボードのようなものを作れるのではと思い、Googleサイトを使い作成を開始しました。
Googleサイトではスプレッドシートを登録して、そこからデータを引っ張ってくる形です。
Googleサイトなので若干見栄えは劣りますが、、必要なデータは表示することができました。
定期実行以外にも回帰テストの結果なども表示していて、振り返りなどで確認したりしています。
公開範囲は社内メンバーのみにしています。
最後に
MagicPodでの回帰テストの実行や定期的なテスト実行だけでなく、データを共有できるようになり、社内でのテスト自動化についての認知度などがあがったと考えています。
社内での「MagicPodで何してるんだろう?」という疑問も解決できたと思っています!
何よりもダッシュボードでわかりやすいので、データの分析などにも活用できそうです!