SAP S/4HANAへのマイグレーション時のテスト戦略 Vol.3

SAP S/4HANAへマイグレーションする際のテストのベストプラクティスをご紹介する記事です。

はじめに

この記事では、SAP S/4HANAへのマイグレーションを行う際のテスト課題についてご紹介します。

以前の記事では、SAP社が提供するERP製品である「SAP S/4HANA」を例に挙げ、マイグレーションを実施する上でのテスト時の課題についてご紹介しましたので、気になる方は「SAP S/4HANAへのマイグレーション時のテスト戦略 Vol.2」もご確認ください。
 
次のような方におすすめです。
  • SAP S/4HANAへのマイグレーションにおける現新比較のテスト手法をお探しの方
  • 今後、SAP S/4HANAへのマイグレーションを実施予定の方

フロントエンドのテスト課題に対するソリューション

接続できないAPIに成り代わるサービス仮想化

フロントエンドのテストで起こりがちな、「接続先のAPIが利用できないことで、フロントエンドのテストも実施できなくなる」といった課題に対しては、「サービス仮想化」が有効です。サービス仮想化とは、一般的には「スタブ」や「モックサーバー」といった名称で呼ばれるもので、接続できないAPIの代わりに、疑似環境として用いることができるソリューションを意味します。マイグレーションによってバックエンドのAPIが利用できないタイミングがある場合でも、サービス仮想化によって本物のAPIと同様に応答する環境を用意できます。これで、バックエンドに依存せずフロントエンドのUIアプリケーションのテストをいつでも実施することができます。テストを実施するために毎回本物のAPIを利用したり、他社とのスケジュール調整を行う必要もなくなりますので、外部の要因でテストが待たされるという課題を解決することができます。

サービス仮想化による、本物のAPIに成り代わる疑似環境を利用してフロントエンドのテストを継続的に行うことで、早期のバグ検出と品質の作り込みが可能になります。そのため、システム連携を伴うテストのような後続の工程で、重大な不具合が発生しスケジュールが遅延するリスクを減らすことに繋がります。

特に、サービス仮想化ツール「Parasoft Virtualize」を利用すると、工数を掛けずに高性能・高機能な疑似環境を作成することができます。

API利用者の課題を解決するサービス仮想化ツール「Parasoft Virtualize」

サービス仮想化ツール「Parasoft Virtualize」では、高性能・高機能なモックサーバー/スタブを効率的に作成できます。Virtualizeは受信したリクエストを賢く判断し、応答すべきAPIに成り代わって適したデータを返すことができますので、あたかも本物のAPIを利用しているかのようにテストで活用することができます。CSVやEXCELなどで用意したデータソースをVirtualizeに取り込めば、用意されたデータの分だけバリエーションに富んだ応答も可能です。

また、VirtualizeにはAPIの疑似環境を自動生成する機能も用意されています。今回のテーマであるSAP S/4HANAへのマイグレーションにおける現新比較のテストでは、API連携で送受信するトラフィックをキャプチャして疑似環境を自動生成する方法が特に有効です。自動生成した疑似環境ではマイグレーション前のAPIと同じ動きをするため、マイグレーション後の現新比較のテストを行う際のテスト環境として活用できます。そのほかにも、Swagger/OpenAPIなどのAPIのIF定義ファイルを取り込んで疑似環境を自動生成することもできますので、APIがまだ作成されていない新規開発等の場面でも活用できます。

さらに、設定はすべてGUI上で行いますので直感的な操作や容易にメンテナンスすることが可能です。Virtualizeを利用することで、さまざまな理由で本物のAPIが利用できない状況であっても、APIを利用しているかのようなテストをいつでも実施することができます。

バックエンドのテストにおけるソリューション

APIの現新比較のテストや回帰テストを自動化

マイグレーションの前後では、APIの応答が変わらないことを確認する現新比較のテストを実施するために、APIテストの自動化ソリューションが有効です。前もって、APIのテストドライバーでマイグレーション前のAPIのレスポンスを取得しておき、マイグレーション後のAPIのレスポンスと比較することで、マイグレーション前後での現新比較のテストを自動化できます。一度作成したAPIのテスト資産を繰り返し利用して継続的に回帰テストを行うことで、APIの品質を高めることに繋がります。開発の早期の段階からAPIを十分にテストし品質を確保することで、後続の工程で重大な問題が発生するリスクを抑えることができます。

特に、APIテスト自動化ツール「Parasoft SOAtest」を利用すると、工数を掛けずに必要な機能を備えたAPIのテストドライバーを作成することができます。また、APIテストの実施時にサービス仮想化ツール「Virtualize」を活用すべきケースもあります。例えば、バックエンドのAPIと連携している外部のサービスが利用できない場合でも、Virtualizeでそのサービスを仮想化することができます。そのため、外部のサービスに依存することなく、いつでもAPIテストの実施が可能な環境を用意することができます。

API開発者の課題を解決するAPIテスト自動化ツール「Parasoft SOAtest」

APIテスト自動化ツール「Parasoft SOAtest」は、APIのテストドライバーを作成する機能を持ち、APIへのリクエスト電文(テスト電文)をシミュレートします。テスト実行後にAPIから返されるレスポンス電文の検証も自動で行いますので、APIテストを自動化できます。このとき、受信したレスポンス電文を自動で期待値として設定する機能もありますので、マイグレーション前の結果に基づく検証設定を容易に行い、マイグレーション後のテスト結果との差分をレポートさせることができます。また、APIが返すレスポンスが変更された場合も、テストドライバーに設定されている期待値を一括で更新することができますので、メンテナンス性にも優れたツールであると言えます。ほかにも、CSVやEXCELで用意したデータソースをテストドライバーに取り込んでテストのバリエーションを増やしたり、複数のAPIを順番に呼び出すシナリオテストなども、GUI上の設定のみで容易に実施することができます。

また、SOAtestではテストドライバーを自動生成することも可能です。マイグレーションにおける現新比較や回帰テストでは、API連携で送受信するトラフィックをキャプチャし、APIのシナリオテストを自動生成する方法が特に有効です。自動生成したAPIのシナリオテストでは、マイグレーション前のレスポンス結果が期待値として設定されているため、マイグレーション後にこのテストを実行するだけで、マイグレ前後の差分を検証することができます。ほかにも、Swagger/OpenAPIなどのAPIのIF定義ファイルを取り込んでテストドライバーを自動生成することもできますので、APIを新規開発する場面でも活用できます。

SOAtestには、APIテストの機能以外にも、データベースの検証を行う機能やAPIのセキュリティテスト、APIの性能・負荷テストといった機能も搭載されており、APIに関連する様々な観点でのテストを自動化することを可能にします。

まとめ

本記事では、SAP S/4HANAへのマイグレーション時のテストで起こる課題を解決するために、サービス仮想化ツール「Parasoft Virtualize」とAPIテスト自動化ツール「Parasoft SOAtest」を利用したソリューションをご紹介しました。実は、この2つのツールは、APIテスト自動化/サービス仮想化ツール「Parasoft SOAtest/Virtualize」という名称で1ツールに集約されており、フロントエンドとバックエンドの各テスト対象を独立させてテストすることで、マイグレーション時に起こり得る課題を1ツールで解決することを可能にします。

SOAtest/Virtualizeは非常に多機能であり、さまざまなユースケースで活用いただけますので、ご興味がございましたら、「 APIテスト自動化 」および「 サービス仮想化 」のページもご覧ください。
APIテストまるわかりガイドダウンロード

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

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

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

    03-4405-7853

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

お問い合わせ

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