QualityForward APIを使ってテストスイートを作成する際の注意点


QualityForwardはクラウドベースのテスト管理サービスです。APIを公開しており、テスト管理に関するデータのCRUD操作ができるようになっています。テストケースであったり、それらをまとめたテストスイートなどを作成できます。

今回、APIを使うためのSDKを開発していてハマったポイントについて、メモしておきます。

テストスイートが表示されない

テストスイートは次のAPI操作で作成できます。

POST /api/v2/test_suites.json

そして、作成はできるのですが、なぜか一覧には出ません。Node.js SDKで書くと、次のようなコードです。

const count = testSuites.length;
const testSuite: TestSuite = client.TestSuite();
testSuite.name = 'APIから作成したテストスイート';
testSuite.project_id = 748;
testSuite.label_category1 = '機能カテゴリ';
testSuite.use_category1 = true;
testSuite.label_content1 = '環境';
testSuite.use_content1 = true;
testSuite.coverage_panel_column = null;
await testSuite.save();

Web上での操作を真似る

そこでWeb上の管理画面での操作を見てみたところ、テストスイートを作成すると同時にテストスイートバージョンが作成されていることが分かりました。テストスイートバージョンはテストスイートをバージョン管理し、同じテストケースを繰り返しテストするための仕組みです。

つまりテストスイートを作成しただけでは十分ではなく、同時にテストスイートバージョンも作成する必要がありました。コードとしては、下記を追加します。

// テストスイートバージョンの作成
const tsv = testSuite.version();
tsv.name = 'バージョン1';
// テストスイートにセット
testSuite.setVersion(tsv);
// そしてテストスイートを保存
await testSuite.save();

こうしてあげることで、テストスイート一覧にAPIから作成したテストスイートが表示されるようになりました。

まとめ

APIドキュメントには、まだアンドキュメントな部分が多く、手探りが必要な部分が多々あります。SDKは現在、Node.js / Python / Ruby / Google Apps Script版を開発しています。SDKから利用することで、なるべくアンドキュメントなところをエラーで返すようにしていきますので、ぜひご利用ください。

QualityForward