September 18, 2023

BlazeMeter Test Data Pro登場:AI駆動型テスト生成機能を搭載!

*本記事は Perforce Software社の以下のブログ記事(2023年9月18日時点)の参考訳です。
 BlazeMeter Test Data Pro: AI-Driven Test Data Generation & Beyond
*ブログの内容は更新されている可能性があります。

AI技術を活用して、自動的にテストデータを生成することができる「BlazeMeter Test Data Pro」がリリースされました。AI駆動型のデータプロファイラが、より良いテストデータをご提供。テスト対象のシステムのレジリエンス向上に役立つ、カオステスト機能も追加されています。さらに、AI駆動型データクリエイターが、データ生成プロセスの効率化をお手伝いします。これらのAI機能を活用することで、テストの効率、カバレッジ、品質を飛躍的に向上することができます。

テストデータ生成における課題

"テストデータ"とは、ソフトウェアのテストを実行する際に入力する、パラメータや変数、レコードなどのデータを指します。テストデータを使用することで、QAやテストの担当者および開発者は、アプリケーションやソフトウェアの実際の使用状況をシミュレーションして、期待通りに動作するかどうかを確認することができます。

詳細かつ正確なテスト結果を得て、堅牢なアプリケーションを作り上げるためには、包括的で高品質なテストデータが必要になります。言い換えれば、品質の低い、不十分なテストデータでは、テストシナリオが不完全なものになり、問題を見逃すことにもなりかねません。

本番データをテストデータとして使用することは、機密情報の漏洩やコンプライアンス規制に抵触するリスクがあるため、通常は行われません。そのため、多くの場合、合成データやモックデータが使用されます。これらのデータであれば、コンプライアンス上のリスクを伴うことなく、必要に応じて柔軟に使用することができます。

しかし、手作業で高品質な合成データを生成するには、時間もリソースも必要であり、どうしても生成できるデータの量が限られてしまいます。そのため、複数のツール、テスト、環境で使用できるデータを用意したり、実際の使用状況に即した複雑なデータ関係や依存性をシミュレーションすることは、非常に困難です。このような問題を解決するのに役に立つのが、BlazeMeterのTest Data Proです。

Test Data Proで実現できること

BlazeMeterのTest Data Proを使用することで、従来のテストのボトルネックを解消することができます。

AI利用による、高精度なテストデータ生成

Test Data Proは生成AIにより、複数のフィールド(姓、名、住所など)を持つデータセットのような、複雑な構成のテストデータやデータ生成関数でもゼロから即座に作り出すことができます。テストに必要なデータがすぐに手に入るため、今までよりも短時間で、精度の高いテストを実行することが可能になります。また、テスト実行用のデータ、モック/仮想サービス用のデータ、テスト対象のシステムデータの間で同期を取りたいときにも、この機能は役立ちます。

テストカバレッジの拡充

多種多様なデータセットをシームレスに生成可能なTest Data Proを使えば、ネガティブテストをはじめとする様々なテストシナリオを作り出すことができます。テストカバレッジを高め、網羅的なものにすることで、潜在的な問題の早期発見が可能になります。

データのプライバシーを確保しながら、テストを高速化

Test Data Proを使うことで、機密性の高い顧客データはしっかりと保護したうえで、テストに要する時間を大幅に削減することができます。合成データでありながら、実際の使用状況を正確に反映したテストデータを自動的に生成することができるため、本番データをテスト環境で使用する必要がなくなります。これにより、データプライバシーに関する懸念やコンプライアンス上のリスクが解消されます。

レジリエンス評価のためのカオステストも

Test Data Proは、テスト中にポジティブ(有効)なテストデータとネガティブ(無効)なテストデータを混在させた、カオステストを実行できます。これにより、システムのレジリエンスを測り、通常ではテストを実行しないような状況下でのアプリケーションのパフォーマンスも検証することができます。

ひとつのプラットフォームで、上記のことをすべて実現できるソリューションは、BlazeMeterだけと言っても過言ではないでしょう。

Test Data Proの機能

Test Data Proには、4つの革新的な新機能が搭載されています。

1. AI駆動型データプロファイラ

AI駆動型の新しいデータプロファイラは、AIを使用してテスト内のハードコード化されたデータを特定・拡張することで、より良いテストデータを作り出します。事前に定義されたスペックやレコーディングされたテスト手順などから必要なデータを集め、自動的にテストデータを生成し、テストに追加することができます。さらに、関連するデータ生成式をユーザーに提案する機能も備えています。

2. AI駆動型テストデータ・クリエイター

生成AIによって、テストデータ生成の効率化と最適化を実現することができます。Test Data Proは、生成AIを使用して、人間が読める形のテキストをテストデータ関数に変換。テストのコンテキスト、CSVファイル、入力データを分析して、最適なテストデータ関数を提案します。

3. AI支援型テストデータ・関数ジェネレーター

Test Data Proの関数ジェネレーターは、AIがテストデータ関数の作成をサポートすることで、その作成にかかる時間を大幅に短縮します。コーディングや名称を覚えなくても、自然言語(普段使っている言葉)で、関数の作成が可能です。

4. カオステスト

ストレステストを行うことで、システムのレジリエンスを高めることができます。Test Data Proのカオステスト機能は、AIを使用して、システムが予期しないテストデータを生成し、その脆弱性を洗い出します。

Test Data Proを使うメリット

Test Data Proを使うことで、BlazeMeterユーザーは以下のようなメリットを得ることができます。

  • 正確性UP:AIを用いてテストデータを生成することで、正確性と信頼性の高いテストを実現。エラーを減らして、より良い結果を手にすることができます。
  • 拡張性UP:AI生成のテストデータを利用することで、効率的にアプリケーションの拡張性を向上。厳しい条件下でのシステムの安定性を高めることができます。
  • 効率性UP:AIがテストワークフローの最適化をサポート。時間とリソースの節約に役立ちます。

Test Data Proのユースケース

BlazeMeterのTest Data Proは、特に以下のようなケースで皆様のお役に立つはずです。

  • 本番環境を再現したい — Test Data Proは本番環境を忠実に再現し、様々なケースにも対応できるように、多様なテストデータを提供します。
  • 使用しているテストデータが古い — Test Data Proは、60種類以上のジェネレータと50種類以上の組込みシードリストで、必要なデータを簡単に定義することができます。また、既に作成されたデータモデルを再利用することも可能です。
  • テストデータセットが古いまたは不正確 — BlazeMeterはテスト実行の度に、データ定義に対しての直リンクを再生成するため、外部にマッピング情報を保持しておく必要はありません。
  • 外部から提供されるデータが不十分 — QAやテスト担当者、開発者自身が、容易にテストデータの定義ができるようになるので、データ生成のために外部のチームと何度もやりとりする必要がなくなります。
  • サードパーティの依存関係も考慮したい — 実際のサービスの代わりに、モックサービスを使用することで、いつでもオンデマンドでテストを実施することができます。
  • 相互依存関係にあるコンポーネントやサービスの開発を待たなければならない — モックサービスは初期のAPI仕様から作成されるため、まだ開発されていないシステムでもテスト用に再現することができます。
  • 相互接続されたコンポーネントがダウンしている — モックサービスは、テスト担当者やチームが必要なだけ、インスタンス数に制限なくオンデマンドでいくつでも利用できます。
  • 十分な量のテストデータがない — Test Data Proは、あらゆる規模の負荷テストに対応可能なデータを生成できます。