Autify はノーコードでソフトウェアテストが構築・実行できるQA 自動化プラットフォームです。シナリオをブラウザ操作の記録から作成できること、各種ブラウザやモバイルに対応していること、シナリオのメンテナンスをAI が自動化してくれるなど大変便利なツールで、テストにかかっている時間を大幅に削減しつつ品質向上が狙えます。
この記事では、CData Drivers for Autify シリーズのなかからExcel Add-in for Autify を使って、Excel からAutify のテストデータを使ってみます。例として、Autify データをExcel にロードして、Autify で複数回実行したデータをピボットテーブルで推移表示までを行います。
CData Excel Add-in for Autify のセットアップ
Excel Add-in for Autify の設定は簡単です。Excel はWindows 版のみをサポートしています。では、セットアップを進めましょう。
CData Excel Add-in for Autify をインストールする
CData Software Japan のウェブサイトからExcel Add-in for Autify のページに進みます。30日の無償評価版があるのでダウンロードを行います。
.exe ファイルがダウンロードされるので、実行するとインストーラーが開きます。マシンでExcel が開ているとエラーがでるので、Excel はすべて閉じておきましょう。デフォルト設定で次へを押してインストールを進めます。インストールが終わったら完了してインストーラを閉じます。
CData Excel Add-in for Autify からAutiry アカウントに接続する
Excel を開くと[CData]リボンでてきています。[CData]リボンをクリックし、[データの取得]→[取得元:Autify] とクリックします。
接続ウィザードが開くので、Autify への認証情報を入力します。
Project Id:Autify のProject ID です。単一のプロジェクトを使っている場合には、ここでProject ID を入れておいた方がいいです。複数のプロジェクトを使っている方だけ、ここではProject ID をブランクにして、後にクエリでProjectId を指定します。
[接続テスト]を押して、Autify との接続を確認します。接続がOK であれば、[OK]を押して接続を確立します。
Autify のデータをExcel にロードする
ここから実際にAutify のデータをExcel から取得していきます。
テーブルの単純なロード
[テーブル/ビュー]を選択します。[選択]ボタンを押します。CData Excel Add-in が対応するAutify のオブジェクトがリスト表示されます。最初はテストシナリオ(Scenarios)ビューをs転宅します。選択したらOK を押します。
[カラム]ビューにScenario のカラムが一覧表示されます。ここでExcel に表示させる項目にチェックを入れます。デフォルトではすべてのカラムにチェックがついています。ここで各カラムのフィルタリング設定を行うことが可能です。フィルタ種類をドロップダウンから選択し、条件値を右側に入力します。
[最大行数]はデフォルトで100行になっています。最大行数はクエリしたいデータに合わせて変更します。リミットを書けない場合には左側のチェックを外します。
「SQL クエリ」では、上記カラムと最大行数で選択したクエリが自動で生成されています。ここにカスタムでSQL クエリを書くことでより細かいクエリ条件設定が可能です。
今回はデフォルトのままOK を押して実行します。
テストシナリオデータがExcel にテーブルとしてロードされました。 一度だけでなく、リフレッシュボタンを押せば(もしくは定期リフレッシュ設定を行えば)、同じExcel テーブルに最新のデータを取り込むことができます。
このデータはExcel データですので、グラフを作ったり、ピボットテーブルを使ったりすることも可能です。
たしかにAutify のデータがExcel に取り込まれています。
複数回実行したAutify テスト結果のテストFail 推移を見るピボットテーブルをExcel で作ってみよう
ここからは、「Excel でテスト結果の推移を見る」ためのピボットテーブルを作ってみます。
テスト結果の取り込み
テスト結果(TestPlanResults)では、テストプラン全体の結果をみることができます。ただし、テストプランの中のシナリオ毎のテスト結果を見たいです。しかも1回だけではなく、毎日実行するテストを軸にして推移表を作ってみます。
以下のSQL でテストシナリオレベルのテストプラン実行結果を取得することができます。
SELECT TestCaseResults.TestCaseId, TestCaseResults.TestCase, TestCaseResults.Status, TestCaseResults.StartedAt, TestCaseResults.Duration, Scenarios.Name FROM TestCaseResults INNER JOIN Scenarios ON TestCaseResults.TestCase = Scenarios.Id WHERE TESTID IN(SELECT Id FROM TestPlanResults LIMIT 4)
なんと、テスト結果のテーブルとテストシナリオのテーブルをSQL でJOINできます。TestCaseResult にはシナリオID しかないので、シナリオテーブルからシナリオ名を結合させます。SQL でのJOIN が嫌な方は、テストシナリオ(Scenarios)とテスト結果(TestCaseResult)を個々にExel シートに出してVLOOKUP してもOK です。
さらに、テスト結果(TestCaseResult)はテストプランをTestID で指定する形になっています。この例では4回実施したテスト結果を全部シナリオレベルで取得したいので、TESTID にIN 句でTestPlanResults をSELECT した内容を挿入していくSQL にします。
このSQL をExcel Add-in の[SQL クエリ]のボックスに挿入して、クエリを実行します。
クエリを実行すると次のように1枚のExcel テーブルにテスト結果のデータが入ります。リフレッシュボタンを押せば、最新のAutify データを繰り返し取り込むことができます。
取得したテスト結果データをピボットテーブルで推移を表示
上で取得したテーブルのデータをもとにピボットテーブルを作成します。
行:Name(テストシナリオ名)
列:StartAt(テスト開始時間)を設定します。Excel が日付型として認識していない場合には、Excel テーブル側で日付として定義します。
値:件数を取るだけなので、TestCaseId を設定。「個数」のメジャーにします。
フィルター:Status に設定。フィルタで失敗(Fail)したものだけを選べます。
小計は邪魔なので[デザイン]から表示をやめます。
これで、テストシナリオ毎のテスト実行時間を横軸にした失敗推移表ができました。
テストの失敗が11→8→5とちゃんと減ってますね。大きなプロジェクトのKPI 管理などでも使えるExcel シートになったのではないでしょうか。