(57)【要約】【課題】ＡＰＩアダプタの正常性を容易に判定することが可能なＡＰＩアダプタ試験システムを提供する。【解決手段】ＡＰＩアダプタ試験システム１は、所定のＡＰＩアダプタの正常性判定試験を支援するＡＰＩアダプタ試験支援装置２０と、開発担当者端末１０と、卸サービスＡＰＩ模擬装置３０とを備える。ＡＰＩアダプタ試験支援装置２０は、当該ＡＰＩアダプタによる模擬変換処理を実行させるための実行ファイルを卸サービスＡＰＩ模擬装置３０に配備させる卸サービスＡＰＩ模擬機能配備部２４と、当該試験処理に用いるクエリパターンごとに、模擬変換処理で取得されることが期待される応答内容を示した試験シナリオ情報を生成する試験シナリオ作成部２５と、当該模擬変換処理で、期待される応答内容が得られたか否かをクエリパターンごとに判定して生成した試験結果情報を開発担当者端末１０に送信する試験結果情報生成部２７とを有する。【選択図】図１
2020140331.tif 000002
【特許請求の範囲】
【請求項１】
所定サービスのＡＰＩに関するＡＰＩアダプタの正常性判定試験を支援するＡＰＩアダプタ試験支援装置と、前記ＡＰＩアダプタ試験支援装置に接続された開発担当者端末と、前記ＡＰＩアダプタ試験支援装置および前記ＡＰＩアダプタ試験支援装置に接続されたサービスＡＰＩ模擬装置とを備えたＡＰＩアダプタ試験システムにおいて、
前記開発担当者端末は、
前記ＡＰＩアダプタ試験支援装置に、ＮｏｒｔｈＢｏｕｎｄ−ＡＰＩ（ＮＢ−ＡＰＩ）仕様を規定した第１仕様書データと、サービスＡＰＩ仕様を規定した第２仕様書データと、前記正常性判定試験に用いる試験用パラメータと、前記ＡＰＩアダプタへの入力信号である第１ＡＰＩリクエストを前記ＡＰＩアダプタにより変換した後の第２ＡＰＩリクエストに対する応答データを生成するためのサービス模擬データとを送信するデータ送信部と、
前記データ送信部からデータを送信したことにより前記ＡＰＩアダプタ試験支援装置から送信される試験結果情報を取得する試験結果情報取得部と、
を有し、
前記サービスＡＰＩ模擬装置は、
前記ＡＰＩアダプタの正常性判定試験を行うために、前記第２ＡＰＩリクエストに対する応答である第２ＡＰＩレスポンスを送信するサービスＡＰＩ模擬機能実行部を有し、
前記ＡＰＩアダプタ試験支援装置は、
前記開発担当者端末から送信された前記第２仕様書データと、前記サービス模擬データとを用いて、前記第２ＡＰＩリクエストに対するスタブを生成し、前記サービスＡＰＩ模擬装置の前記サービスＡＰＩ模擬機能実行部に配備させるために送信するサービスＡＰＩ模擬機能配備部と、
前記開発担当者端末から送信された第１仕様書データと、前記試験用パラメータとに基づいて、前記正常性判定試験に用いる第１ＡＰＩリクエストに含めるクエリパターンを生成し、前記クエリパターンごとに、前記サービス模擬データを用いて、期待される応答内容を示した試験シナリオを生成する試験シナリオ作成部と、
生成した前記試験シナリオを実行させる試験シナリオ実行部と、
前記第２ＡＰＩレスポンスが前記ＡＰＩアダプタによって変換された、第１ＡＰＩレスポンスを受信し、前記クエリパターンごとに、期待される応答であるか否かにより正常性判定を行う試験結果情報生成部と、
を有することを特徴とするＡＰＩアダプタ試験システム。
【請求項２】
所定のサービスを実行するために、ＡＰＩアダプタの正常性判定試験を行うＡＰＩアダプタ試験支援装置であって、
開発担当者端末から送信された第２仕様書データと、サービス模擬データとを用いて、前記ＡＰＩアダプタへの入力信号である第１ＡＰＩリクエストを前記ＡＰＩアダプタにより変換した後の第２ＡＰＩリクエストに対するスタブを生成し、サービスＡＰＩ模擬装置に送信するサービスＡＰＩ模擬機能配備部と、
前記開発担当者端末から送信された第１仕様書データと、試験用パラメータとに基づいて、前記正常性判定試験に用いる第１ＡＰＩリクエストに含めるクエリパターンを生成し、前記クエリパターンごとに、サービス模擬データを用いて、期待される応答内容を示した試験シナリオを生成する試験シナリオ作成部と、
生成した前記試験シナリオを実行させる試験シナリオ実行部と、
前記第２ＡＰＩリクエストに対する応答である第２ＡＰＩレスポンスが、前記ＡＰＩアダプタによって変換された、第１ＡＰＩレスポンスを受信し、前記クエリパターンごとに、期待される応答であるか否かにより正常性判定を行う試験結果情報生成部と、
を有することを特徴とするＡＰＩアダプタ試験支援装置。
【請求項３】
所定のサービスを実行するために、ＡＰＩアダプタの正常性判定試験を行うＡＰＩアダプタ試験支援方法であって、
開発担当者端末から送信された第２仕様書データと、サービス模擬データとを用いて、前記ＡＰＩアダプタへの入力信号である第１ＡＰＩリクエストを前記ＡＰＩアダプタにより変換した後の第２ＡＰＩリクエストに対するスタブを生成し、サービスＡＰＩ模擬装置に送信するサービスＡＰＩ模擬機能配備ステップと、
前記開発担当者端末から送信された第１仕様書データと、試験用パラメータとに基づいて、前記正常性判定試験に用いる第１ＡＰＩリクエストに含めるクエリパターンを生成し、前記クエリパターンごとに、サービス模擬データを用いて、期待される応答内容を示した試験シナリオを生成する試験シナリオ作成ステップと、
生成した前記試験シナリオを実行させる試験シナリオ実行ステップと、
前記第２ＡＰＩリクエストに対する応答である第２ＡＰＩレスポンスが、前記ＡＰＩアダプタによって変換された、第１ＡＰＩレスポンスを受信し、前記クエリパターンごとに、期待される応答であるか否かにより正常性判定を行う試験結果情報生成ステップと、
を有することを特徴とするＡＰＩアダプタ試験支援方法。
【請求項４】
請求項２に記載した装置の機能を実施するためのＡＰＩアダプタ試験支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
ＡＰＩアダプタ作成装置によって作成されたＡＰＩアダプタの正常性を判定するためのＡＰＩアダプタ試験システム、ＡＰＩアダプタ試験支援装置、ＡＰＩアダプタ試験支援方法、および、ＡＰＩアダプタ試験支援プログラムに関する。
【背景技術】
【０００２】
近年、Ｂ２Ｂ２Ｘ（Business To Business To X）の普及に伴って、複数のサービスを組み合わせて新たなサービスを構築し運用することが行われている。ここで、新たなサービスの登場および既存サービスの仕様変更が頻繁に行われるため、サービス事業者はこれらの変更に迅速かつ低コストで対応することが求められる。
【０００３】
これに対応するため、各事業者が公開した各種サービスごとのＡＰＩ（Application Program Interface）の仕様差分を吸収して連携させるＡＰＩアダプタを自動生成する技術が開発されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】GUIを用いたAPIアダプタ開発容易化方式に関する一検討  武  直樹・池谷友基・小内伸夫・高橋謙輔・大谷未稚・加藤  浩（NTT）  IEICE 2018年ソサイエティ大会B-14-13
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述したように自動生成されたＡＰＩアダプタは、使用前にその正常性を確認する必要がある。しかし、この確認作業を行うためには、正常性を確認するための結合試験シナリオ情報、結合試験シナリオ情報に沿ってＡＰＩを実行させる機能、および自動生成されたＡＰＩアダプタで対象ＡＰＩを模擬実施させる機能を搭載した装置を必要とするとともに、作業者に、ＡＰＩアダプタの動作仕様に関する知識、スキルおよび時間を要するため、コストおよび手間がかかるという問題があった。
【０００６】
本発明は上記事情を鑑みてなされたものであり、ＡＰＩアダプタの正常性を容易に判定することが可能なＡＰＩアダプタ試験システム、ＡＰＩアダプタ試験支援装置、ＡＰＩアダプタ試験支援方法、および、ＡＰＩアダプタ試験支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するための、本発明のＡＰＩアダプタ試験システムは、所定サービスのＡＰＩに関するＡＰＩアダプタの正常性判定試験を支援するＡＰＩアダプタ試験支援装置と、前記ＡＰＩアダプタ試験支援装置に接続された開発担当者端末と、前記ＡＰＩアダプタ試験支援装置および前記ＡＰＩアダプタ試験支援装置に接続されたサービスＡＰＩ模擬装置とを備えたＡＰＩアダプタ試験システムにおいて、前記開発担当者端末は、前記ＡＰＩアダプタ試験支援装置に、ＮｏｒｔｈＢｏｕｎｄ−ＡＰＩ（ＮＢ−ＡＰＩ）仕様を規定した第１仕様書データと、サービスＡＰＩ仕様を規定した第２仕様書データと、前記正常性判定試験に用いる試験用パラメータと、前記ＡＰＩアダプタへの入力信号である第１ＡＰＩリクエストを前記ＡＰＩアダプタにより変換した後の第２ＡＰＩリクエストに対する応答データを生成するためのサービス模擬データと、を送信するデータ送信部と、前記データ送信部からデータを送信したことにより前記ＡＰＩアダプタ試験支援装置から送信される試験結果情報を取得する試験結果情報取得部とを有し、前記サービスＡＰＩ模擬装置は、前記ＡＰＩアダプタの正常性判定試験を行うために、前記第２ＡＰＩリクエストに対する応答である第２ＡＰＩレスポンスを送信するサービスＡＰＩ模擬機能実行部を有し、前記ＡＰＩアダプタ試験支援装置は、前記開発担当者端末から送信された前記第２仕様書データと、前記サービス模擬データとを用いて、前記第２ＡＰＩリクエストに対するスタブを生成し、前記サービスＡＰＩ模擬装置の前記サービスＡＰＩ模擬機能実行部に配備させるために送信するサービスＡＰＩ模擬機能配備部と、前記開発担当者端末から送信された第１仕様書データと、前記試験用パラメータとに基づいて、前記正常性判定試験に用いる第１ＡＰＩリクエストに含めるクエリパターンを生成し、前記クエリパターンごとに、前記サービス模擬データを用いて、期待される応答内容を示した試験シナリオを生成する試験シナリオ作成部と、生成した前記試験シナリオを実行させる試験シナリオ実行部と、前記第２ＡＰＩレスポンスが前記ＡＰＩアダプタによって変換された第１ＡＰＩレスポンスを受信し、前記クエリパターンごとに、期待される応答であるか否かにより正常性判定を行う試験結果情報生成部とを有することを特徴とする。
【発明の効果】
【０００８】
本発明のＡＰＩアダプタ試験システム、ＡＰＩアダプタ試験支援装置、ＡＰＩアダプタ試験支援方法、および、ＡＰＩアダプタ試験支援プログラムによれば、ＡＰＩアダプタ作成装置によって作成されたＡＰＩアダプタの正常性を容易に判定することが可能になる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態によるＡＰＩアダプタ試験システムの構成を示すブロック図である。
【図２】本発明の一実施形態によるＡＰＩアダプタ試験システムの動作を示すシーケンス図である。
【図３】本発明の一実施形態によるＡＰＩアダプタ試験システムのＡＰＩアダプタ試験支援装置で生成される、（ａ）クエリパターン情報の一例、（ｂ）試験シナリオ情報の一例、および、（ｃ）模擬変換処理で期待される応答内容が得られたか否かを確認する処理を示す情報の一例である。
【図４】一実施形態によるＡＰＩアダプタ試験システムのＡＰＩアダプタ試験支援装置で生成される試験結果情報の一例である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態として、卸サービスＸのＡＰＩに関して作成された卸サービスＡＰＩアダプタＹの正常性を判定するための試験処理を行うＡＰＩアダプタ試験システムについて説明する。
【００１１】
〈一実施形態によるＡＰＩアダプタ試験システムの構成〉
本実施形態によるＡＰＩアダプタ試験システムは、図１に示すように、対象のＡＰＩアダプタＹの正常性判定試験を行う開発担当者が操作する開発担当者端末１０と、当該正常性判定試験を支援するＡＰＩアダプタ試験支援装置２０と、開発担当者端末１０およびＡＰＩアダプタ試験支援装置２０に接続された卸サービスＡＰＩ模擬装置３０とを備える。
【００１２】
開発担当者端末１０は、データ記憶部１１と、データ送信部１２と、試験結果情報取得部１３とを有する。データ記憶部１１は、第１仕様書データとしてのＮＢ−ＡＰＩ（Northbound API）仕様書データＤ1、第２仕様書データとしての卸サービスＡＰＩ仕様書データＤ2、試験用パラメータＤ3、および卸サービス模擬データＤ4を記憶する。ＮＢ−ＡＰＩ仕様書データＤ1は、試験対象のＡＰＩアダプタＹによって変換される前の卸サービスＸのＮＢ−ＡＰＩ仕様を規定するためのswagger specファイルで構成されたＡＰＩ仕様書データである。卸サービスＡＰＩ仕様書データＤ2は、ＡＰＩアダプタＹによってＡＰＩ信号が変換された卸サービスＡＰＩ仕様を規定するためのＡＰＩ仕様書データである。試験用パラメータＤ3は、ＡＰＩアダプタＹに入力するＮＢ−ＡＰＩ信号の中の、当該正常性判定試験処理に用いる試験用パラメータを示す情報である。卸サービス模擬データＤ4は、ＡＰＩアダプタＹへの入力信号である第１ＡＰＩリクエストをＡＰＩアダプタＹにより変換した後の第２ＡＰＩリクエストに対する応答データを生成するためのデータである。
【００１３】
データ送信部１２は、開発担当者の操作に基づいて、データ記憶部１１に記憶されたデータが保持されたファイル情報を、ＡＰＩアダプタ試験支援装置２０に送信する。試験結果情報取得部１３は表示装置で構成され、ＡＰＩアダプタ試験支援装置２０から送信された試験結果情報を取得して出力する。
【００１４】
ＡＰＩアダプタ試験支援装置２０は、ファイル読み込み部２１と、卸サービスＡＰＩ模擬機能コード生成部２２と、卸サービスＡＰＩ模擬データ投入部２３と、卸サービスＡＰＩ模擬機能配備部２４と、試験シナリオ作成部２５と、試験シナリオ実行部２６と、試験結果情報生成部２７とを有する。
【００１５】
ファイル読み込み部２１は、開発担当者端末１０から送信されたファイル情報を読み込む。卸サービスＡＰＩ模擬機能コード生成部２２は、開発担当者端末１０から送信されたファイル情報中の卸サービスＡＰＩ仕様書データＤ2を用いて、PostgreSQLのテーブルのソースコード情報を生成する。卸サービスＡＰＩ模擬データ投入部２３は、卸サービスＡＰＩ模擬機能コード生成部２２で生成されたテーブルのソースコード情報に、卸サービス模擬データＤ4中のデータを挿入する。
【００１６】
卸サービスＡＰＩ模擬機能配備部２４は、開発担当者端末１０から送信された第２仕様書データＤ2と、卸サービス模擬データＤ4とを用いて、第２ＡＰＩリクエストに対するスタブを生成し、卸サービスＡＰＩ模擬装置３０の卸サービスＡＰＩ模擬機能実行部３１に配備させるために送信する。
【００１７】
試験シナリオ作成部２５は、開発担当者端末１０から送信されたＮＢ−ＡＰＩ仕様書データＤ1と試験用パラメータＤ3とに基づいて、正常性判定試験に用いる第１ＡＰＩリクエストに含めるクエリパターンを生成し、クエリパターンごとに、サービス模擬データを用いて、期待される応答内容を示した試験シナリオを生成する。
【００１８】
試験シナリオ実行部２６は、生成した試験シナリオを実行させ、その応答結果を受信する。試験結果情報生成部２７は、第２ＡＰＩレスポンスがＡＰＩアダプタＹによって変換された第１ＡＰＩレスポンスを受信し、クエリパターンごとに、期待される応答であるか否かにより正常性を判定して当該正常性判定試験の試験結果情報を生成し、開発担当者端末１０に送信する。
【００１９】
卸サービスＡＰＩ模擬装置３０は、ＡＰＩアダプタの正常性判定試験を行うために、第２ＡＰＩリクエストを受信し、それに対する応答である第２ＡＰＩレスポンスを送信する卸サービスＡＰＩ模擬機能実行部３１を有する。
【００２０】
〈一実施形態によるＡＰＩアダプタ試験システムの動作〉
次に、本実施形態によるＡＰＩアダプタ試験システムの動作について、図２のシーケンス図を参照して説明する。
【００２１】
まず、開発担当者がＡＰＩアダプタＹの正常性判定試験処理を実行するための操作を行うと（Ｓ１の「YES」）、開発担当者端末１０のデータ送信部１２により、データ記憶部１１に記憶されたＮＢ−ＡＰＩ（Northbound API）仕様書データＤ1、卸サービスＡＰＩ仕様書データＤ2、試験用パラメータＤ3、および卸サービス模擬データＤ4が保持されたファイル情報が、ＡＰＩアダプタ試験支援装置２０に送信される（Ｓ２）。
【００２２】
ＡＰＩアダプタ試験支援装置２０では、開発担当者端末１０から送信されたファイル情報がファイル読み込み部２１で読み込まれる（Ｓ３）。ファイル読み込み部２１で当該ファイル情報が読み込まれると、卸サービスＡＰＩ模擬機能コード生成部２２により、卸サービスＡＰＩ仕様書データＤ2を用いてPostgreSQLのテーブルのソースコード情報が生成され、卸サービスＡＰＩ模擬機能配備部２４で取得される（Ｓ４）。そして、卸サービスＡＰＩ模擬データ投入部２３により、卸サービスＡＰＩ模擬機能配備部２４で取得されたPostgreSQLのテーブルのソースコード情報に卸サービス模擬データＤ4中のデータが挿入される（Ｓ５）。さらに、卸サービスＡＰＩ模擬機能配備部２４は、第２ＡＰＩリクエストに対するスタブを生成し、卸サービスＡＰＩ模擬装置３０に送信する（Ｓ６）。
【００２３】
卸サービスＡＰＩ模擬装置３０では、卸サービスＡＰＩ模擬機能配備部２４から送信されたスタブを受信し、配備する（Ｓ７）。例えば、卸サービスＡＰＩ模擬装置３０としての仮想マシンが起動されるかまたは、docker composeにより卸サービスＡＰＩ模擬装置３０が起動され、当該スタブが配備される。
【００２４】
一方、ＡＰＩアダプタ試験支援装置２０の試験シナリオ作成部２５では、ファイル読み込み部２１で読み込まれたファイル情報のＮＢ−ＡＰＩ仕様書データＤ1と試験用パラメータＤ3とに基づいて、正常性判定試験に用いる第１ＡＰＩリクエストに含めるクエリパターンとして、ＮＢ−ＡＰＩ仕様書データデータＤ1の中で、当該正常性判定試験処理に用いるパラメータの組み合わせによる、複数のクエリパターン情報Ｅが生成される（図３（ａ）参照）。そして、生成されたクエリパターン情報Ｅに関するＮＢ−ＡＰＩ仕様書データＤ1中の情報と卸サービス模擬データＤ4とから、クエリパターン情報Ｅごとに、試験対象のＡＰＩアダプタＹで変換されたＡＰＩ信号で取得されることが期待される応答内容を示した情報が、試験シナリオ情報Ｆとして生成される（図３（ｂ）参照）（Ｓ８）。
【００２５】
試験シナリオ作成部２５で試験シナリオ情報が生成されると、試験シナリオ実行部２６により実行され、ＡＰＩアダプタへＮＢ−ＡＰＩリクエストが入力される（Ｓ９）。ＡＰＩアダプタにより、ＮＢ−ＡＰＩリクエストが、卸サービスＡＰＩリクエストに変換され、卸サービスＡＰＩ模擬装置３０へ、リクエストが送られる。卸サービスＡＰＩ模擬装置３０の卸サービスＡＰＩ模擬機能実行部３１では、卸サービスＡＰＩリクエストに対する応答である卸サービスＡＰＩレスポンスを生成する（Ｓ１０）。ＡＰＩアダプタでは、再び、卸サービスＡＰＩレスポンスの変換を行い、ＮＢ−ＡＰＩレスポンスを生成し、ＡＰＩアダプタ試験支援装置２０の試験シナリオ実行部２６へ送られる（Ｓ１１）。
【００２６】
そして、試験結果情報生成部２７により、このステップＳ１１で取得された応答内容と、ステップＳ８で生成された試験シナリオ情報内の応答内容とに基づいて、ＡＰＩアダプタにより期待される応答内容が得られたか否かがクエリパターンごとに判定される（図３（ｃ）参照）。そして、期待される応答内容が得られたクエリパターンについては「OK」情報が付加され、期待される応答内容が得られなかったクエリパターンについては「NG」情報が付加されることで、図４に示すような試験結果情報が生成される。生成された試験結果情報は、試験結果情報生成部２７から開発担当者端末１０に送信され（Ｓ１２）、開発担当者端末１０の試験結果情報取得部１３で取得され、出力される（Ｓ１３）。
【００２７】
以上の実施形態によれば、所定の卸サービスのＡＰＩに関して作成された卸サービスＡＰＩアダプタの正常性を、簡易な処理で容易に判定することができる。
【符号の説明】
【００２８】
１  ＡＰＩアダプタ試験システム
１０  開発担当者端末
１１  データ記憶部
１２  データ送信部
１３  試験結果情報取得部
２０  ＡＰＩアダプタ試験支援装置
２１  ファイル読み込み部
２２  卸サービスＡＰＩ模擬機能コード生成部
２３  卸サービスＡＰＩ模擬データ投入部
２４  卸サービスＡＰＩ模擬機能配備部
２５  試験シナリオ作成部
２６  試験シナリオ実行部
２７  試験結果情報生成部
３０  卸サービスＡＰＩ模擬装置
３１  卸サービスＡＰＩ模擬機能実行部
【図１】
2020140331.tif 000003
【図２】
2020140331.tif 000004
【図３】
2020140331.tif 000005
【図４】
2020140331.tif 000006