シナリオテスト機能

APIテスト自動化ツール「SOAtest」は、シナリオテストを自動化します。DB値の検証(CRUD操作)、エビデンス収集なども含め、さまざまなユースケースに応じてシナリオを作成し、テストできます。このページでは、検索API→更新APIといったように複数のAPIを順番に実行する機能を紹介します。

APIテストで一番大事なシナリオテスト

なぜ APIのシナリオテストが大事なのか?例えば、ショッピングサイトで買い物をするとき、「検索」→「カートに追加」→「購入」の3つの画面操作が発生し、それぞれの操作でAPI がコールされるのを想像してみてください。検索APIに対するコンポーネントテスト(単機能テスト)だけでは、実際のユースケースをカバーできないため、「検索API」→「カートに追加API」→「購入API」のようにシーケンスにまとめたAPIのシナリオテストを実行する必要があります。また、各APIを個別にテストした場合は成功するが、シナリオテストとして実行すると失敗するようなことが発生するため、シナリオテストは最も重要なテストと位置付けられます。シナリオテストを実行することで、各APIからの値の受け渡しが適切なのか?、DB値が適切に更新されているのか?、といったことも含めて確認できます。また、さまざまなユースケースやデータパターンでAPIのシナリオテストを実行することが大切ですので、これらのテストを自動化して効率化することが重要なポイントと言えます。

APIのシナリオテストへ拡張

APIの単体テストを組み合わせてシナリオ化

各APIのテストドライバーを直観的に組み合わせてシナリオテストに拡張できます。最初のテストで取得したレスポンスのid値をそれ以降のテストのテストデータとして設定するような、各APIのテストドライバー間で受け渡す値の設定もGUIからスクリプトを書くことなく直観的に設定することも可能です。また、シナリオテストでは、上から順にシーケンシャルに実行することや、同時実行、特定の条件時のみに実行させる実行条件(分岐、ループ、ディレイを含む)などの設定も可能です。下図のシナリオテストの例では、上から順位にテスト1からテスト4までのテストを自動化します。

APIの単体テストを組み合わせてシナリオ化

テストの部品化

作成済みのシナリオテストを部品化し、他のシナリオテストから参照して使う「参照テスト」機能や、複数のテストドライバーでの共通設定を一括反映させる「グローバルツール」機能などを活用し、テスト資産のメンテナンスの観点からも効率的、且つ継続的に運用できるような機能を搭載しています。

テストの部品化

CI/CD で継続的なAPIテスト

「日々変わらず動作する」品質保証

APIテスト自動化ツール「SOAtest」で作成したシナリオテストは、CLI実行(.bat/.shなどでの実行や、REST API経由での実行)も可能です。APIテストをCI/CDパイプラインに加え、継続的テストを実行する仕組みを構築することで、問題箇所の早期発見や「日々変わらず動作する」品質保証のための検証を実施いただけます。CI/CD環境の構築についても支援を行っています。

「日々変わらず動作する」品質保証

APIのテスト自動化とサービス仮想化を1ツールで SOAtest/Virtualizeに
関するお問い合わせ

  • テクマトリックス株式会社
    東京本社

    ソフトウェアエンジニアリング事業部

    03-4405-7853

メールでのお問い合わせ
parasoft-info@techmatrix.co.jp

お問い合わせ

製品についてやテクマトリックスについてなど、
こちらよりお気軽にお問い合わせいただけます。