Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8832

QualityForward APIとNode.jsライブラリを使って一日の作業件数を集計する

$
0
0

QualityForwardはクラウドベースのテスト管理サービスです。Web APIを提供しています。そのWeb APIを使いやすくするため、Node.jsライブラリも開発中です。

今回はそのNode.jsライブラリを使って、一日の作業件数を集計してみます。

準備

まずはライブラリを読み込みます。APIキーは.envファイルに書き出しています。

import*asdotenvfrom'dotenv';dotenv.config();import{QualityForward}from'qualityforward-node';

必要な変数の準備

まず今日の作業分を集計するので、必要な変数と当てはまるテストケースを格納する変数を用意します。

(async()=>{consttoDay=newDate;letresult=[];// 後の処理もこの中に記述})();

QualityForwardオブジェクトの初期化をします。

constclient=newQualityForward(process.env.API_KEY);

テストフェーズの取得

最初にテストフェーズをすべて取得します。

consttestPhases=awaitclient.getTestPhases();

次にすべてのテストフェーズについて、テストケースを取得します。

for(consttestPhaseoftestPhases){for(consttestSuiteAssignmentoftestPhase.test_suite_assignments){consttestCycles=awaittestSuiteAssignment.getTestCycles();// : 次の処理はこの中に記述}}

テスト結果の取得

すべてのテストサイクルについて、テスト結果を取得します。テスト結果の中で本日作業分をフィルタリングします。

for(consttestCycleoftestCycles){consttestResults=awaittestCycle.getTestResults();constary=testResults.filter(t=>{if(t.executed_at.getFullYear()===toDay.getFullYear()&&t.executed_at.getMonth()===toDay.getMonth()&&t.executed_at.getDate()===toDay.getDate()){returnt;}});Array.prototype.push.apply(result,ary);}

テスト結果ごとにグルーピングする

TestResultが取得できたら、例えばテスト結果ごとにグルーピングしてみます。

constgroup={};for(lettestResultofresult){if(!group[testResult.result])group[testResult.result]=0;group[testResult.result]++;}console.log(`本日の作業結果`);for(letresultingroup){console.log(`  ${result} : ${group[result]}件`);}

そうすると以下のような出力が得られます。

$ npx ts-node test.ts 
本日の作業結果
  pass : 4件
  fail : 1件
  skip : 1件
  cut : 1件
  block : 1件
  qa : 1件

作業件数を蓄積していくことで、品質の可視化にも繋がるでしょう。

まとめ

QualityForwardを使えばExcelなどで行っていた煩雑なテスト管理がクラウドベースでできるようになります。ライブラリを使うことで既存システムとの連携も用意です。ぜひお試しください!

QualityForward


Viewing all articles
Browse latest Browse all 8832

Trending Articles