テスト自動化支援サービス
API自動化支援・テスト請負
サービスの概要
DXのデータ連携に欠かせないAPIの開発と利用に関する機能テスト・回帰テストのプラン策定から、必要に応じてテストの実施まで、幅広く支援します。
APIの開発における、APIの単機能テスト、シナリオテスト、性能・負荷テストの自動化について支援します。
APIを利用するアプリケーションのテストために、高性能なスタブ作成などでアプリケーション開発の効率化を支援します。
テスト自動化に欠かせないAPIのテストスクリプトと高性能なスタブの作成に加えて、手動テストシナリオの棚卸しから、自動化範囲の策定、テストツール運用のための教育など、お客様自身による今後の運用を見据えた支援をご提案いたします。
- 手作業で行っているAPIテストを自動化したい
- これからAPI化に着手するためテスト手法が確立されていない、またはテストできる人材やリソースがない
- 自分達でAPIテストを自動化し運用していくためのノウハウを学習したい
- Webアプリケーションなどのテスト時に、バックエンドのAPIの開発遅延、障害、および接続調整が発生し、結合テストできない
- スタブ開発の初期コストが膨大、運用時にはソースコードの設計書がないため、メンテナンスできない
- 既存スタブではテストの網羅率が低い、テストパターンを拡充したいがメンテナンスできない
- 自分達で「いつでも、何度でも」UIテストを自動化し運用していくために必要な高性能なスタブの作成ノウハウを学習したい
金融・生命保険系、通信事業者系、航空・旅行系、自動車・製造業系、IoTスマート家電系など、データ連携にAPIを用いる日本のお客様のアプリケーションで本サービスを利用いただけます。また、本サービスでは、APIのテストと高性能なスタブを用いたテストで多くの導入実績のあるAPIテスト自動化/サービス仮想化ツール「 Parasoft SOAtest/Virtualize 」を使用し、支援します。
本サービスの特長
・データ連携にAPIを用いるシステムのアーキテクチャ例
※ REST, SOAP, MQ, JMS, Kafka, MQTT, protobuf, WebSocket, TCP, UDP などでデータ連携を行うものを総称してAPIと定義しています。
・APIテスト自動化支援サービス
APIテスト自動化ツール「SOAtest」を利用し、REST API などのプロトコルに対応したテストドライバーを効率的に作成し、 APIテストの実施やAPIテスト自動化環境を構築いたします。本サービスでは、DBやファイルの値の検証を含め、APIのテストに関連する検証を1つにまとめて自動化するシナリオテストのスクリプト作成を支援します。
・高性能なスタブ作成支援サービス
※こちらは機能テスト(UIテスト)自動化支援・テスト請負と併せてご利用いただくことが多いサービスです。
API を利用をするフロントエンドのテスト自動化を行うために、本物のAPIの代わりにデータ連携を実現するサービス仮想化ツール「Virtualize」で、高性能なスタブを効率的に作成します。高性能なスタブを使用することにより、いつでも、何度でも機能テスト(UIテスト)を実施できる環境を構築します。また、負荷を掛けたくないAPIを高性能なスタブに置き換えることで、いつでも負荷テストを実施できる環境を構築することも可能です。
お客様のご要望に合わせたご提案をさせていただきます。
1
ヒアリング
テスト対象のアプリケーションや、現在のテスト状況と今後実施したいテスト内容についてヒアリングします。
2
ご提案
ヒアリング内容に基づき、最適なテスト内容、進め方をご提案します。
3
テスト設計
テスト自動化に適したテスト設計を行います。必要に応じてテスト仕様書も作成します。
4
テストスクリプト・
スタブ作成
テスト設計や仕様書に基づいてテスト自動化のスクリプトや高性能なスタブを作成します。
5
テスト実施
前フェーズで作成したスクリプトや高性能なスタブを用いてテストを実施します。テスト結果をフェーズごとにご報告します。
6
運用サポート
お客様自身が今後運用できるようにスクリプトや高性能なスタブをお渡しし、運用ガイドラインの作成やレクチャーを実施します。
旅行業界 某お客様
パッケージツアーを含めさまざまな旅行プランを提供する大手旅行会社様のシステムのマイグレーションにおいて、現新比較のテスト戦略をご検討されていた際に、APIテスト自動化ツール「SOAtest」をご提案し、テストスクリプトの作成、テスト実施、結果報告、さらにお客様自身でツール運用を頂く上でのご支援を致しました。
導入サービス
APIテスト自動化支援サービス
利用ツール
確認ポイント
お客様のご要望は、APIを運用稼働しているサーバーの保守切れに伴うシステムのマイグレーションにおいて、APIが提供するデータが変わらない事を確認するための現新比較のテスト実施でした。現状をお伺いすると、テスト対象のAPIの数が多く、限られた期限内で効率的にテストを実施する必要であることがわかりました。また、お客様自身でテストを実施したいとのご要望であったことから、ツール運用のトランスファー支援を含め、APIテスト自動化ツール「SOAtest」を用いたAPIテストサービスをご提案し、お客様からは、それらのテストサービス実施のご依頼を頂きました。
柔軟な対応
現環境でAPIテストのスクリプト作成と実行を行い、新環境での検証に用いるためのAPIの応答データのベースラインを作成しました。そして、サーバー移行後の新環境で、作成済みのAPIテストを実施し、現新比較を行い、結果の報告やテスト仕様書の編集を行いました。また、お客様自身でツール運用をされたいというご要望に合わせて、テスト実施の段階からお客様に担当いただき、早い段階から実際のテスト運用をお客様にて実施頂けるよう支援しました。
まとめ
スケジュール内でAPIの品質検証が完了し、画面検証を伴う結合テストのフェーズに進むことができました。テストの実施をお客様に担当していただくことで、テストの段階からツールの運用のイメージを掴んでいただき、運用開始後のテストスクリプトのメンテナンスについてもスムーズに実施いただけるようになりました。
通信業界 某お客様
3大キャリアの某インターネット回線申込みシステムのマイグレーションと追加開発において、合計で約7年に及ぶ長期プロジェクトの現新比較のテスト戦略をご検討されていた際に、サービス仮想化ツール「Virtualize」をご提案し、既存スタブのリプレース、および新規スタブの効率的な作成、メンテナンス、さらに負荷テストでスタブを活用する方法についてトレーニングを実施しました。
導入サービス
スタブ作成支援サービス
利用ツール
確認ポイント
お客様のご要望の1つは、現新比較のテストにおいて、分散システム間の依存関係がもたらす問題を解消することでした。今までのテストでは、分散システム間のデータ連携(SOAP WebサービスやMQを含む)の部分については、お客様の開発協力会社様が開発した既存スタブを使用し、テストされていたとのことでしたが、テストパターンが足りないことや、メンテナンスにおける追加発注コスト、および約7年の長期運用の効率化の目的で、プロジェクト共通の手法で高性能なスタブを作成・運用する方法を模索されていました。また、既存スタブを用いて負荷テストを実施した際に、スタブが負荷に耐え切れず落ちてしまったとのことで、弊社からは、お客様のテスト課題に対して、サービス仮想化ツール「Virtualize」のご提案、フィージビリティ検証に際するトレーニングのご提供を提案し、お客様からは、それらの実施のご依頼をいただきました。
柔軟な対応
お客様のご要望をお伺いし、トレーニングをカスタマイズしました。その中には、Javaで開発した100個の既存スタブのリプレース方法、スタブの自動生成、負荷テストにおけるスタブの利用方法などが含まれていました。それらの観点を包括的にカバーするトレーニングを実施しました。
まとめ
お客様からは「Virtualize をもっと早く知っていれば良かった」との大変ありがたいお言葉をいただいた点に加え、その後、お客様の方で、100個の既存スタブを Virtualize のキャプチャ&自動生成機能で「簡単にリプレースできました」とのご報告もいただきました。現在は、新規のスタブ作成やメンテナンス、および負荷テストにおけるスタブのご利用も含め、安定して運用されています。