JP2019197259A - Information processor, method for controlling the same, and program - Google Patents
Information processor, method for controlling the same, and program Download PDFInfo
- Publication number
- JP2019197259A JP2019197259A JP2018089331A JP2018089331A JP2019197259A JP 2019197259 A JP2019197259 A JP 2019197259A JP 2018089331 A JP2018089331 A JP 2018089331A JP 2018089331 A JP2018089331 A JP 2018089331A JP 2019197259 A JP2019197259 A JP 2019197259A
- Authority
- JP
- Japan
- Prior art keywords
- test
- definition
- unit
- processing apparatus
- application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、アプリケーションを構築するための情報処理装置、その制御方法及びプログラムに関する。 The present invention relates to an information processing apparatus for building an application, a control method thereof, and a program.
従来、設定された定義に基づきアプリケーションを構築(生成)するツールやサービスが存在する。このようなツールやサービスを利用して構築したアプリケーションであっても、アプリケーション定義の設定ミスにより予想外の動作をすることがあるため、テスト工程を省略することはできない。また、アプリケーションが大規模になるに従い、テスト工程の数は肥大化する傾向となる。特に、大規模なアプリケーションの場合、複数のテスト工程を並列して同時に実行することによりテストにかかる時間を低減できることが好ましい。 Conventionally, there are tools and services for building (generating) an application based on a set definition. Even an application constructed using such tools and services may be operated unexpectedly due to an application definition setting error, so the test process cannot be omitted. Also, as applications become larger, the number of test processes tends to increase. In particular, in the case of a large-scale application, it is preferable that the time required for testing can be reduced by simultaneously executing a plurality of test processes in parallel.
特許文献1には、登録されたテストケースに基づきテスト用のプログラムを生成する仕組みが開示されている。
しかしながら、特許文献1に記載の技術では、複数のテストを並列に同時実行する場合について何ら考慮されていない。特に、複数のテストを行う際に同一のデータベースに接続すると、1のテストの実行中にデータが書き換えられてしまい、正確なテスト結果が得られないおそれがあった。
However, in the technique described in
そこで本発明は、上記の課題に鑑みてなされたものであり、複数のテスト工程を並行して行うための仕組みを提供することを目的とする。 Therefore, the present invention has been made in view of the above problems, and an object thereof is to provide a mechanism for performing a plurality of test processes in parallel.
本発明の目的を達成するために、例えば、本発明の情報処理装置は、以下の構成を有する。すなわち、アプリケーションを構築する情報処理装置であって、前記アプリケーションを構築するためのデータベース定義からデータベースの選択を受け付けるデータベース選択受付手段と、前記データベース選択受付手段で選択されたデータベースを接続先とするテストスイートを生成するテストスイート生成手段と、前記テストスイート生成手段により生成されたテストスイートに基づいて、前記接続先のデータベースのデータを用いて前記アプリケーションに係るテストを実行するテスト実行手段を備えることを特徴とする。 In order to achieve the object of the present invention, for example, an information processing apparatus of the present invention has the following configuration. That is, an information processing apparatus for building an application, wherein a database selection receiving unit that receives a database selection from a database definition for building the application, and a test that uses a database selected by the database selection receiving unit as a connection destination A test suite generating unit that generates a suite; and a test execution unit that executes a test related to the application using data of the connection destination database based on the test suite generated by the test suite generating unit. Features.
本発明によれば、複数のテスト工程を並行して行うための仕組みを提供することが可能となる。 According to the present invention, it is possible to provide a mechanism for performing a plurality of test processes in parallel.
以下、本発明の実施の形態を、図面を参照して詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
図1は、本発明の一実施形態に係るシステムの構成図の一例である。 FIG. 1 is an example of a configuration diagram of a system according to an embodiment of the present invention.
情報処理装置101は、開発者の操作に従って画面レイアウト及びデータベース検索指示などを定義する。情報処理装置101は、アプリケーションのプログラム生成を行う。
The
なお、本実施形態においては、情報処理装置101で生成するアプリケーションはWebアプリケーションとしたが、これに限定するものではなく、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなど、Web技術による通信を利用するアプリケーションでなくてもよい。
In the present embodiment, the application generated by the
また、本実施形態においては、情報処理装置101はアプリケーションのプログラムを生成するとしたが、この方法に限定するものではなく、プログラムを生成することなく、アプリケーションサーバ102やクラウド環境等でアプリケーションが動作する様にデータやファイル等を生成することにより、アプリケーション(の動作環境)を構築する等であってもよい。
In this embodiment, the
アプリケーションサーバ102は、情報処理装置101で生成され配置されたアプリケーションを実行する。また、アプリケーションサーバ102は、データベースサーバ103に接続し、データベースのデータを操作することができる。
The
データベースサーバ103は、生成されたアプリケーションが利用するデータベースである。なお、開発時にも動作確認などのために利用してもよい。また、データベースサーバ103は、情報処理装置101や、アプリケーションサーバ102と同一の装置で構成されていてもよいし、LANなどのネットワーク105内に配置されてもよい。
The
アプリケーションクライアント104は、アプリケーションサーバ102と協調して情報処理装置101で開発したアプリケーションプログラムを動作させる、エンドユーザの操作端末である。この、アプリケーションクライアント104は、携帯端末などの情報処理装置であってもよい。
The
クラウド環境106は、動的にスケーラブルかつ仮想化されたリソースを供給することが可能な環境である。 The cloud environment 106 is an environment that can supply dynamically scalable and virtualized resources.
クラウド環境106内の仮想アプリケーションサーバ107は、情報処理装置101で生成され配置されたアプリケーションを実行する。また、仮想アプリケーションサーバ107は、仮想データベースサーバ108に接続し、データベースのデータを操作することができる。
A virtual application server 107 in the cloud environment 106 executes an application generated and arranged by the
クラウド環境106内の仮想データベースサーバ108は、生成されたアプリケーションが利用するデータベースである。なお、仮想データベースサーバ108は、開発時にも動作確認などのために利用してもよい。なお、クラウド環境106は動的にスケーラブルかつ仮想化されたリソースを供給することが可能な環境であるとしたが、本実施形態においては、この特徴を備えている必要はなく、クラウド環境106が仮想アプリケーションサーバ107及び仮想データベースサーバ108の動作を提供するのであれば、動的にスケーラブルでなくても、仮想化されたリソースを供給できなくてもよい。 The virtual database server 108 in the cloud environment 106 is a database used by the generated application. Note that the virtual database server 108 may be used for operation confirmation during development. Although the cloud environment 106 is an environment that can supply dynamically scalable and virtualized resources, in this embodiment, it is not necessary to have this feature, and the cloud environment 106 If the operations of the virtual application server 107 and the virtual database server 108 are provided, the virtualized resource may not be supplied even if it is not dynamically scalable.
図2は、情報処理装置101、アプリケーションサーバ102、データベースサーバ103、アプリケーションクライアント104として適用可能な各ハードウェア構成の一例を示すブロック図である。
FIG. 2 is a block diagram illustrating an example of each hardware configuration applicable as the
図2において、CPU201は、システムバス204に接続される各デバイスを統括的に制御する。
In FIG. 2, the
また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるオペレーティングシステム(OS)や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。
The
RAM202は、CPU201の主メモリ、ワークエリア、一時待避領域等として機能する。
The
入力コントローラ205は、入力部209からの入力を制御する。この入力部209としては、情報処理装置では、キーボード、マウス等のポインティングデバイス、タッチパネルが挙げられる。
The
なお、入力部209がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
Note that when the
また、タッチパネルは、マルチタッチスクリーン等の、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。 The touch panel may be a touch panel that can detect a position touched by a plurality of fingers, such as a multi-touch screen.
出力コントローラ206は、出力部210の表示を制御する。この出力部210としては、例えば、CRTや液晶ディスプレイ等が挙げられる。尚、本体と一体になったノート型パソコンのディスプレイも含まれるものとする。また、プロジェクタであってもよいこととする。
The
外部メモリコントローラ207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ211へのアクセスを制御する。外部メモリ211には、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ211としては、ハードディスク(HD)やフレキシブルディスク(FD)、PCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)、スマートメディア等が挙げられる。
The
なお、CPU201は、例えばRAM202内の表示情報用領域へアウトラインフォント展開(ラスタライズ)処理を実行することにより、出力部210上での表示を可能としている。また、CPU201は、出力部210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
Note that the
通信I/Fコントローラ208は、ネットワークを介して外部機器との通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
The communication I /
本発明の実施形態を実現するためのプログラム212は外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。
A
図3は、本発明の実施形態のソフトウェア構成を示すブロック図の一例である。 FIG. 3 is an example of a block diagram illustrating a software configuration according to the embodiment of this invention.
情報処理装置101は、以下の機能部を備える。
The
定義情報取得部301は、アプリケーションを構築するための定義情報を取得する機能部である。ここで、定義情報は、リポジトリ定義部401に設定された、アプリケーション定義402、入出力定義403、データモデル定義404、ビジネスプロセス定義405、データベース定義406(図4参照)を含む。
The definition
テスト実行部302は、定義情報取得部301により取得された定義情報を用いて生成されたテストケースに基づき、アプリケーションに係るテストを実行する機能部である。言い換えると、テスト実行部302は、定義情報取得部301により取得された定義情報を用いて生成されたテストケースに基づき、定義情報が正しく定義されているか否かのテストを実行する機能部であるともいえる。また、テスト実行部302は、情報受付部303により受け付けた情報を用いて、テストを実行する機能部である。
The
また、テスト実行部302は、生成されたテストスイートに基づき、接続先のデータベースのデータを用いてアプリケーションに係るテストを実行する機能部である。なお、テスト実行部302は、複数のテストスイートを並列に実行させ、テストを行うことが可能である。
The
情報受付部303は、テスト実行部302により実行されるテストに用いる情報を受け付ける機能部である。情報受付部303は、一態様として、表示制御部310により出力部210で選択可能に表示された各種情報の選択を受け付ける。具体的には、情報受付部303は、テストに用いるテストケースの選択を受け付ける。また、情報受付部303は、テストに用いるテストスイートに設定するテストケースの選択を受け付ける。さらに、情報受付部303は、設定されたテストケースあるいは、テストスイートに基づきアプリケーションに係るテストの開始を受け付ける。そして、情報受付部303は、図21における実行ボタン2105が選択されたか否かを受け付ける。つまり、情報受付部303は、テストの開始を受け付ける機能を備える(テスト開始受付部)。また、情報受付部303は、データベース定義からデータベースの選択を受け付ける機能を備える(データベース選択受付手段)。
The
テストケース定義受付部304は、テストケースの定義を受け付ける機能部である。
The test case
テストケース生成部305は、テストケース定義受付部304により受け付けた定義に基づき、テストケースを生成する機能部である。テストケース生成部305は、代入値入力受付部306により受け付けた値を項目に対して代入することを含むテストケースを生成する機能部である。テストケース生成部305は、予想値入力受付部307により受け付けた値と項目が持つ値とを比較することを含むテストケースを生成する機能部である。
The test
代入値入力受付部306は、定義情報取得部301により取得された定義情報に含まれる項目に対して代入する値の入力を受け付ける機能部である。
The substitution value
予想値入力受付部307は、定義情報取得部301により取得された定義情報に含まれる項目が持つと予想される値の入力を受け付ける機能部である。
The expected value
テスト成否判定部308は、予想値入力受付部307により受け付けた値と項目が持つ値とを比較した結果に基づいて、テスト実行部302により実行されるテストの成否を判定する機能部である。
The test success /
アプリケーション構築制御部309は、テスト成否判定部308によりテストの結果に従って、アプリケーションの構築をする/しないを制御する機能部である。
The application
表示制御部310は、出力部210(例えば、ディスプレイの画面上の表示)へ表示される内容を制御する機能部である。本実施形態において、表示制御部310は、後述する、図6、図11〜15、図19、図21〜23等のテストケース、およびテストスイートの生成から実行に係る各画面の表示を制御する。つまり、表示制御部310は、図4で説明する各エディタ部により生成される画面を表示する機能を備える。また、テストスイートを用いてテストする場合に、表示制御部310は、テストスイート生成部311で生成された複数のテストケースのうち所定の条件に対応するテストケースを選択可能に表示するように制御する。ここで、所定の条件とは、ユーザにより選択されたテストケースの表示内容を絞り込むための条件であり、例えば、定義情報単位、あるいは、生成した日時に基づいて決定される条件である。なお、具体的な処理については、図17〜23を用いて後述する。 The display control unit 310 is a functional unit that controls the content displayed on the output unit 210 (for example, display on the display screen). In the present embodiment, the display control unit 310 controls display of each screen related to generation and execution of test cases and test suites such as FIGS. 6, 11 to 15, 19, and 21 to 23 described later. . That is, the display control unit 310 has a function of displaying a screen generated by each editor unit described in FIG. Further, when testing using a test suite, the display control unit 310 performs control so that a test case corresponding to a predetermined condition among a plurality of test cases generated by the test suite generation unit 311 can be displayed in a selectable manner. To do. Here, the predetermined condition is a condition for narrowing down the display contents of the test case selected by the user, for example, a condition determined based on the definition information unit or the generated date and time. Specific processing will be described later with reference to FIGS.
テストスイート生成部311は、テストスイートを生成する機能部である。また、テストスイート生成部311は、ユーザの操作に応じて、テストケース生成部305で生成されたテストケースをテストスイートに設定する機能を備える。テストスイートは、1または複数のテストケースを1単位としたファイルである。テストスイートは、目的別に設定された複数のテストケースをまとめて管理をすることが可能となる。そのため、ユーザは、大規模なアプリケーションを構築する場合でも、目的単位のテストスイートを生成しておくことで、テストの内容を容易に管理することができる。
The test suite generation unit 311 is a functional unit that generates a test suite. In addition, the test suite generation unit 311 has a function of setting the test case generated by the test
以上で、図3の説明を終了する。 This is the end of the description of FIG.
図4は、情報処理装置101、アプリケーションサーバ102及びアプリケーションクライアント104の構成図である。
FIG. 4 is a configuration diagram of the
情報処理装置101は、リポジトリ定義部401及びアプリケーション生成部410を備える。
The
情報処理装置101は、アプリケーションを開発する開発者により設定されたリポジトリ定義部401の各定義を用いて、アプリケーション生成部410によりアプリケーションを生成する。
The
リポジトリ定義部401には、アプリケーション定義402、入出力定義403、データモデル定義404、ビジネスプロセス定義405、データベース定義406が記憶されている。これら402〜406の定義は、アプリケーション構築ツールを介して、開発者によって入力設定または配置される。さらに、リポジトリ定義部401には、テストケース定義407、プレビューデータ408、テストスイート定義409が記憶されている。
The
入出力定義403は、アプリケーション画面に配置される各種項目のレイアウトの定義情報を保持する。入出力定義403は、入力項目定義情報及び出力項目定義情報を含む。入力項目定義情報は、生成されたアプリケーションの画面を介して当該アプリケーションのエンドユーザが入力する入力項目を定義した情報である。出力項目定義情報は、生成されたアプリケーションの画面に出力する出力項目を定義した情報である。以降、「入力項目定義情報」及び「出力項目定義情報」をまとめて「入出力項目定義情報」と呼ぶ。
The input /
なお、本実施形態においては、「入力項目定義情報は、生成されたアプリケーションの画面を介して当該アプリケーションのエンドユーザが入力する入力項目を定義した情報」「出力項目定義情報は、生成されたアプリケーションの画面に出力する出力項目を定義した情報」としたが、これらに限定するものではなく、例えば、画面を有さないバッチやWebサービス等のように、「入力項目定義情報は、生成されたアプリケーションに入力される入力項目を定義した情報」「出力項目定義情報は、生成されたアプリケーションが出力する出力項目を定義した情報」であってもよい。 In this embodiment, “input item definition information is information defining an input item input by an end user of the application via the generated application screen” “output item definition information is generated application However, the present invention is not limited to these. For example, the input item definition information is generated as in a batch or Web service that does not have a screen. “Information defining input items input to an application” and “output item definition information may be information defining output items output by a generated application”.
データモデル定義404は、データベースのテーブルの項目の定義情報を保持する。入出力定義403の各項目には、データモデル定義404の項目を対応づけることができる。
The
ビジネスプロセス定義405は、アプリケーションにおけるデータを処理するためのロジックの定義情報を保持する。
The
データベース定義406は、アプリケーションが接続するデータベースに係る情報(データベースサーバ103のIPアドレス、接続ユーザ、接続パスワード等)を定義する。
The
テストケース定義407は、テストケースの定義情報を保持する。
The
プレビューデータ408は、リポジトリ定義部401をプレビューする際のデータを保持する。
The
テストスイート定義409は、テストスイートの定義情報を保持する。
The
アプリケーション生成部410は、アプリケーション生成用のリポジトリ定義解析部411を用いてリポジトリ定義部401に記憶されている各定義を解析し、アプリケーションコード生成部412及びソースコードコンパイル部413を介し、コンパイル済Java(登録商標)コード441及びHTML/JSP/JavaScript(登録商標)442を含むアプリケーションを生成する。すなわち、アプリケーション生成部410は、設定された定義を用いて、アプリケーションとして用いられるプログラムを生成する手段の一例である。
The
リポジトリ定義エディタ部420は、リポジトリ定義参照部421によってリポジトリ定義部401を解析する。
The repository
テストケース定義エディタ部460は、テストケース定義参照部461と、対象画面入力部462と、値入力部463と、アクション入力部464と、対象項目入力部465と、期待値入力部466を有する。それぞれの入力部から入力された値を保存することでテストケース定義407が作成される。
The test case
テストスイート定義エディタ部470は、テストケース定義選択部471と、入出力定義選択部472と、ビジネスプロセス定義選択部473と、データモデル定義選択部474と、関連テストケース抽出部475と、定義ファイル変更時間条件部476と、選択済みテストケース定義477を有する。テストスイート定義エディタ部470は、これらの各部より選択、あるいは抽出された値に基づきテストスイート定義409を作成・編集する。
The test suite
テストケース定義選択部471は、リポジトリ定義部401に含まれる任意のテストケース定義407の選択を受け付ける。
The test case
入出力定義選択部472は、リポジトリ定義部401に含まれる任意の入出力定義403の選択を受け付ける。
The input / output
ビジネスプロセス定義選択部473は、リポジトリ定義部401に含まれる任意のビジネスプロセス定義405の選択を受け付ける。
The business process
データモデル定義選択部474は、リポジトリ定義部401に含まれる任意のデータモデル定義404の選択を受け付ける。
The data model definition selection unit 474 receives selection of an arbitrary
関連テストケース抽出部475は、入出力定義選択部472、ビジネスプロセス定義選択部473、データモデル定義選択部474で選択された定義を参照するテストケースを抽出する。
The related test
定義ファイル変更時間条件部476は、関連テストケース抽出部475がテストケース定義407を抽出する際に定義ファイルの変更時間を条件として抽出をする。
The definition file modification
選択済みテストケース定義477は、テストスイートに含まれるテストケースとしてテストスイート定義409に保存される。
The selected
テスト実行部302は、テストケース定義受信部431によってテストケース定義407を取得する。また、接続先DB受信部439は、接続先DB482を受信する。そして、テストケース定義解釈部433は、取得したこれらの内容を解析する。テスト実行部(インタープリタ)434は、テストケース定義解釈部433を用いて、アプリケーションコードアクセス部436から、アプリケーションコードをテスト実行する。
The
テスト実行部(インタープリタ)434は、テストケース定義解釈部433を用いて解釈した内容からテスト実行準備部を用いてテストの事前処理を行い、アプリケーションコードアクセス部436を用いてアプリケーションコードをテスト実行する。
The test execution unit (interpreter) 434 performs test pre-processing using the test execution preparation unit from the content interpreted using the test case
テストがすべて完了すると、テスト実行部(インタープリタ)435はテスト終了処理部437を用いてテスト終了処理を行う。
When all the tests are completed, the test execution unit (interpreter) 435 uses the test
次に、テストスイート定義エディタ部470について説明する。テストスイート定義エディタ部470は、テストケース定義選択部471と、入出力定義選択部472と、ビジネスプロセス定義選択部473と、データモデル定義選択部474と、関連テストケース抽出部475と、定義ファイル変更時間条件部476と、選択済みテストケース定義477と、接続先DB設定部478を有する。テストスイート定義エディタ部470は、テストスイート定義409を作成・編集する機能を備える。
Next, the test suite
テストケース定義選択部471は、リポジトリ定義部401に含まれる任意のテストケース定義407の選択を受け付ける。
The test case
入出力定義選択部472は、リポジトリ定義部401に含まれる任意の入出力定義403の選択を受け付ける。
The input / output
ビジネスプロセス定義選択部473は、リポジトリ定義部401に含まれる任意のビジネスプロセス定義405の選択を受け付ける。
The business process
データモデル定義選択部474は、リポジトリ定義部401に含まれる任意のデータモデル定義404の選択を受け付ける。
The data model definition selection unit 474 receives selection of an arbitrary
関連テストケース抽出部475は、入出力定義選択部472、ビジネスプロセス定義選択部473、データモデル定義選択部474で選択された定義を参照するテストケースを抽出する。
The related test
定義ファイル変更時間条件部476は、関連テストケース抽出部475がテストケース定義407を抽出する際に定義ファイルの変更時間を条件として抽出をかけることができる。
The definition file change
選択済みテストケース定義477は、テストスイートに含まれるテストケースとしてテストスイート定義409に保存される。
The selected
接続先DB設定部478は、テストをどのデータベース定義406で動かすかを設定する。設定された内容はテストスイート定義409に保存される。また、接続先DB設定部478は、初期設定の接続先も記憶する(データベース記憶手段)。
The connection destination DB setting unit 478 sets which
次に、テストスイート実行部480について説明する。テストスイート実行部480は、テストスイート定義受信部481と、接続先DB482と、テストケース定義取得部483と、スレッド生成部484を有する。
Next, the test suite execution unit 480 will be described. The test suite execution unit 480 includes a test suite
テストスイート定義受信部481は、テストスイート定義409を受信し、接続先DB482を取得する。テストケース定義取得部483は、テストスイートに設定されたテストケース定義407を取得する。接続先DB482は、データベース定義406で保存されるデータベースのうちテストの際に接続するデータベースである。
The test suite
テストスイート実行部480は、スレッド生成部484を介して、テスト実行部302へテストケース定義取得部483で取得したテストケース定義407と接続先DB482を送信する。テスト実行部302はそれらをもとにテストを実行する。
The test suite execution unit 480 transmits the
そして、テスト結果取得部435は、テスト実行の結果を取得し、テスト結果表示部438に表示する。
The test result
以上で、図4の説明を終了する。 This is the end of the description of FIG.
図5は、アプリケーション生成のフローチャートの一例を示す図である。 FIG. 5 is a diagram illustrating an example of a flowchart of application generation.
情報処理装置101は、ディレクトリ構造を用いて、リポジトリ定義部401の各定義をファイルとして管理する。なお、本実施形態においては、ディレクトリ構造を用いて、リポジトリ定義部401の各定義をファイルとして管理するとしたが、これに限定するものではなく、例えば、データベースを用いてリポジトリ定義部401の各定義を管理してもよいし、クラウドなどネットワーク上の記憶装置を用いて管理する等としてもよい。図5を用いて、アプリケーション生成のフローチャートについて説明する。
The
ステップS501において、情報処理装置101は、アプリケーション定義402の設定を受け付ける。具体的には、アプリケーション構築ツールの画面を介して、アプリケーション開発者から入出力定義403、データモデル定義404、ビジネスプロセス定義405及びデータベース定義406の設定を受け付ける。
In step S <b> 501, the
ステップS501にて、受け付けたアプリケーション定義402、入出力定義403、データモデル定義404、ビジネスプロセス定義405及びデータベース定義406の設定は、リポジトリ定義部401にXMLファイル形式で記憶する。
In step S501, the received
ステップS502において、情報処理装置101は、アプリケーション生成の指示を受け付ける。
In step S502, the
ステップS503において、情報処理装置101は、リポジトリ定義部401からアプリケーション定義402を取得する。リポジトリ定義解析部411は、読み込んだ定義を解析したうえでROM203に記憶しておき、解析された定義は各生成部から適宜参照される。
In step S <b> 503, the
ステップS504において、情報処理装置101は、リポジトリ定義部401からデータモデル定義404を取得する。
In step S <b> 504, the
ステップS505において、情報処理装置101は、リポジトリ定義部401から入出力定義403を取得する。
In step S505, the
ステップS506において、情報処理装置101は、リポジトリ定義部401からビジネスプロセス定義405を取得する。
In step S <b> 506, the
ステップS507において、情報処理装置101は、リポジトリ定義部401からデータベース定義406を取得する。すなわち、ステップS501〜S507は、アプリケーションを構築するための定義情報を取得する処理の一例を示すステップである。
In step S507, the
ステップS508において、情報処理装置101は、アプリケーション生成部410を用いて、Webアプリケーションに用いるプログラムを生成する。すなわち、ステップS508は、アプリケーションのプログラムを生成する処理の一例を示すステップである。また、ステップS508は、アプリケーションを構築する処理の一例を示すステップである。
In step S508, the
ステップS509において、情報処理装置101は、テストケース定義を生成する(詳細は、図7の説明にて後述する)。すなわち、ステップS509は、取得された定義情報を用いて、テストケースを生成する処理の一例を示すステップである。また、ステップS509は、受け付けた定義に基づき、テストケースを生成する処理の一例を示すステップである。
In step S509, the
ステップS510において、情報処理装置101は、ステップS509にて生成したテストケース定義を用いてテストスイート定義409を作成する(詳細は、図17の説明にて後述する)。
In step S510, the
ステップS511において、情報処理装置101は、DB別テストスイート用アプリケーションプログラム生成を行う(詳細は、図18の説明にて後述する)
ステップS512において、情報処理装置101は、テストスイート実行を行う(詳細は、図20にて後述する)。すなわち、ステップS512は、定義情報を用いて生成されたテストスイートに基づき、アプリケーションに係るテストを実行する処理の一例を示すステップである。また、ステップS512は、定義情報を用いて生成されたテストスイートに基づき、定義情報が正しく定義されているか否かテストを実行する処理の一例を示すステップである。
In step S511, the
In step S512, the
この段階ではアプリケーションをアプリケーションサーバ102に配置(デプロイ)していないため、以上により、アプリケーションサーバ102を用意することなく、テストを実行することができる。
At this stage, since the application is not arranged (deployed) on the
また、以上により、アプリケーションアーカイブファイルの生成、アプリケーションサーバ102への転送、デプロイをすることなく、テストを実行することができるため、テストにかかる時間を削減することができ、開発とテストをシームレスに何度も繰り返すことができる。
In addition, as described above, the test can be executed without generating the application archive file, transferring to the
また、以上により、情報処理装置101だけでアプリケーションサーバ102にて動作するアプリケーションのテストを実行することができるため、複数人の開発者が同時に並行してテストを行うことができる。
In addition, as described above, a test of an application running on the
ステップS513において、情報処理装置101は、ステップS512にて実行したテストにおける失敗したテストケースの有無を判定し、有る場合は本フローチャートを終了し、無い場合はステップS514に進む。すなわち、ステップS513は、テストの結果に従って、アプリケーションの構築をする/しないを制御する処理の一例を示すステップである。
In step S513, the
ステップS514において、情報処理装置101は、ステップS508にて生成したプログラムをアプリケーションサーバ102に配置(デプロイ)する。
In step S514, the
これにより、失敗テストが無い状態のアプリケーションをサーバに構築する仕組みを提供することができる。よって、テストに時間がかかってしまう場合、夜間にテストを実行させ、テストが成功した場合は、続けてアプリケーションサーバ102にデプロイさせておくことができるため、アプリケーション管理者や運用者の手間を省くことができる。
As a result, it is possible to provide a mechanism for building an application without a failure test on the server. Therefore, if the test takes a long time, the test can be executed at night, and if the test is successful, it can be continuously deployed on the
また、失敗テストが有る状態のアプリケーションはサーバに構築することが無くなるため、不具合を含んだアプリケーションをリリースすることがなくなり、アプリケーションが不整合なデータを出力するといったこともなくなるため、結果として、信頼性の高いアプリケーションを運用することができる。 In addition, since an application with a failure test is not built on the server, an application including a defect is not released, and the application does not output inconsistent data. High performance applications can be operated.
以上で、図5の説明を終了する。 This is the end of the description of FIG.
以上により、アプリケーションプログラム生成、テスト実行、デプロイ等の処理を1つの指示で行うことができる。よって、アプリケーション構築ツールにおいて、テストを効率的に行う仕組みを提供することができる。 As described above, processing such as application program generation, test execution, and deployment can be performed with one instruction. Therefore, it is possible to provide a mechanism for efficiently performing tests in the application construction tool.
図6は、アプリケーションの入出力定義画面及びアプリケーションの実行画面の一例を示す図である。入出力定義画面601は、1つのアプリケーションに設定される入出力定義を一覧で表示する画面である。
FIG. 6 is a diagram illustrating an example of an application input / output definition screen and an application execution screen. The input /
図7は、テストケース定義生成のフローチャートの一例を示す図である。 FIG. 7 is a diagram illustrating an example of a flowchart of test case definition generation.
ステップS701において、情報処理装置101は、ユーザからのテストケース定義生成の指示を受け付ける。具体的には、新規テストケース作成メニュー1101(図11)の押下を受け付ける。
In step S701, the
ステップS702において、情報処理装置101は、外部メモリ211にアプリケーション定義402が作成済か否かを判定する。作成済の場合はステップS703に進み、未作成の場合は本フローチャートを終了する。
In step S <b> 702, the
ステップS703において、情報処理装置101は、新規テストケース作成ダイアログ1102(図11)を表示し、新規のテストケースの生成に必要な「コード名」「名前」「対象アプリケーション1103」の入力を受け付け、受け付けた情報に基づき、外部メモリ211にテストケース定義407を新規に作成する。
In step S <b> 703, the
ステップS704において、情報処理装置101は、ステップS703にて作成されたテストケースのテスト手順を入力するためのテスト手順入力画面1201(図12)表示する。この時点では、テストケースにテスト手順が登録されていない状態であるため、テスト手順入力画面1201の「テスト手順」タブを選択した場合、テスト手順を設定するエディタ部には何も表示されていない。
In step S704, the
ステップS705において、情報処理装置101は、ステップS703にて入力を受け付けた「対象アプリケーション1103」に属す入出力定義403を外部メモリ211から取得する。
In step S <b> 705, the
ステップS706において、情報処理装置101は、登録するテスト手順の数だけステップS707〜S712を繰り返す。
In step S706, the
ステップS707において、情報処理装置101は、テスト実行時に疑似的に行う命令の選択を受け付ける。命令の種類は、例えば、「画面表示」「行追加」「項目値入力」「項目値検証」等がある。
In step S <b> 707, the
通常、スクラッチ開発によって構築されたアプリケーションのテストは、テスト要員による「画面表示」「行追加」「項目値入力」等の操作及び目視による「項目値検証」を必要とするが、本実施形態におけるテストは、テスト要員が行う操作及び目視をステップS707にて「命令」として手順化しておき、構築されたアプリケーション又は生成されたアプリケーションプログラムに対して(テスト要員が操作を行ったかのように疑似的に)「命令」を実行することで、テストの実行及び検証が自動でできるようになる。 Normally, testing an application built by scratch development requires operations such as “screen display”, “add row”, and “item value input” by test personnel, and visual “item value verification”. In the test, the operation and visual inspection performed by the test personnel are made into procedures as “commands” in step S707, and the constructed application or the generated application program is simulated (as if the test personnel performed the operation). ) By executing “instructions”, the test can be automatically executed and verified.
なお、本実施形態においては、命令の種類は上記4種類の中から選択を受け付けるとしたが、この4種類に限定するものではなく、その他の命令(例:キーボード・マウス・タッチパネル等の入力装置による操作、カメラ等の周辺機器の操作、音声入力、ブラウザ操作、n秒待機、不正な操作等)を選択できるとしてもよい。 In this embodiment, the command type is selected from the above four types. However, the command type is not limited to these four types, and other commands (eg, input devices such as a keyboard, a mouse, a touch panel, etc.) Operation of peripheral devices such as a camera, voice input, browser operation, standby for n seconds, illegal operation, etc.) may be selected.
ステップS708において、情報処理装置101は、ステップS705にて取得した入出力定義403に基づき、「対象アプリケーション1103」に属す入出力定義403を選択肢として表示する(図12の1203)。
In step S708, the
ステップS709において、情報処理装置101は、ステップS708にて表示した選択肢から、テスト実行に用いる入出力定義403の選択を受け付ける。
In step S709, the
ステップS710において、情報処理装置101は、ステップS709にて選択を受け付けた入出力定義403に属す入出力項目を選択肢として表示する(図12の1204)。例えば、ステップS707にて、命令に「項目値入力」が選択された場合は、入出力項目のうち値を入力できる項目だけに絞った選択肢を表示する。
In step S710, the
ステップS711において、情報処理装置101は、ステップS710にて表示した選択肢から、テスト実行に用いる入出力項目の選択を受け付ける。
In step S711, the
ステップS712において、情報処理装置101は、テストの命令実行時に用いる入出力項目への引数の入力を受け付ける。
In step S712, the
例えば、図12では、グループ項目「G ユーザマスタ」の入出力項目「ID」「パスワード」「名前」への引数を入力する。グループ項目とは、入出力項目を複数持つ表である(例:図6の602)。この命令に、行番号と引数を入力したものを1302(図13)に示す。1302(図13)は、グループ項目における明細「1」行目の入出力項目「ID」「パスワード」「名前」にそれぞれ「1」「yamada」「山田」を入力するという意味である。 For example, in FIG. 12, an argument to the input / output items “ID”, “password”, and “name” of the group item “G user master” is input. The group item is a table having a plurality of input / output items (for example, 602 in FIG. 6). 1302 (FIG. 13) shows a line number and an argument input to this instruction. 1302 (FIG. 13) means that “1”, “yamada”, and “Yamada” are respectively input to the input / output items “ID”, “password”, and “name” on the detail “1” line in the group item.
また、命令が「項目値検証」の場合の引数は、その「入出力項目」の値が、テスト実行時にその「引数」の値と等しいか否かを判定するという意味である(図13の1303)。ここでは、1302にて「項目値入力」を行い、「アクション実行」でUPDATE(更新)処理を行った後において、「ID」の値が「1」と等しいか否かを判定する。つまり、その時点で「ID」=1の場合は、そのテスト手順=成功と判定し、「ID」≠1の場合は、そのテスト手順=失敗と判定する(詳細は、図9のステップS911にて後述する)。 Further, the argument when the instruction is “item value verification” means that it is determined whether or not the value of the “input / output item” is equal to the value of the “argument” during the test execution (FIG. 13). 1303). Here, after “item value input” is performed in 1302 and UPDATE (update) processing is performed in “action execution”, it is determined whether or not the value of “ID” is equal to “1”. That is, if “ID” = 1 at that time, it is determined that the test procedure = success, and if “ID” ≠ 1, it is determined that the test procedure = failure (for details, see step S911 in FIG. 9). Will be described later).
なお、本実施形態においては、「引数」の例として「入出力項目の値」を挙げたが、「入出力項目の値」に限定するものではなく、「引数」は、例えば、画面の入出力に係る位置、色、大きさ又は内容等に係る情報であってもよい。また、表示、認証、検索、追加、更新若しくは削除等の処理に対して与える情報、又は、カメラ等の周辺機器に対して送信する情報等、テスト実行のために用いる情報であれば、その他の情報であってもよい。 In this embodiment, “input / output item value” is given as an example of “argument”. However, the “argument” is not limited to “input / output item value”. It may be information relating to the position, color, size, content, etc. relating to the output. In addition, if it is information used for test execution, such as information given to processing such as display, authentication, search, addition, update or deletion, or information transmitted to peripheral devices such as cameras, etc. It may be information.
すなわち、ステップS712は、実行されるテストに用いる情報を受け付ける処理の一例を示すステップである。また、ステップS712は、取得された定義情報に含まれる項目に対して代入する値の入力を受け付ける処理の一例を示すステップである。また、ステップS712は、取得された定義情報に含まれる項目が持つと予想される値の入力を受け付ける処理の一例を示すステップである。 That is, step S712 is a step showing an example of processing for receiving information used for the test to be executed. Step S712 is a step showing an example of a process of accepting an input of a value to be substituted for an item included in the acquired definition information. Step S712 is a step showing an example of processing for accepting an input of a value expected to be included in an item included in the acquired definition information.
すなわち、ステップS706〜S712は、テストケースの定義を受け付ける処理の一例を示すステップである。 That is, steps S706 to S712 are steps showing an example of processing for receiving a test case definition.
ステップS713において、情報処理装置101は、ステップS706〜S712を繰り返すことによって作成されたテストケース手順(例:図13の1301)に基づき、図16のようなテストケース定義407を生成し、外部メモリ211に記憶する。
In step S713, the
具体的には、テストケース手順1301を1つずつ、テストケース定義407の要素<autotest−step>に変換することにより、テストケース定義407を生成する。同様に、テストケース手順1301の「命令」はテストケース定義407の要素<command>に、「入出力」は<object_01>に、「入出力項目」は<object_02>に、「行番号」は<object_03>に、「引数」は<argument>にそれぞれ変換する。
Specifically, a
なお、本実施形態においては、テストケース定義407を図16のようなXMLファイルとしたが、XMLファイルに限定するものではなく、その他の形式のファイルとして生成したり、データベースに記憶させたり、ファイルやデータベース以外の情報にしたりしてもよい。
In this embodiment, the
すなわち、ステップS713は、取得された定義情報を用いて、テストケースを生成する処理の一例を示すステップである。また、ステップS713は、受け付けた定義に基づき、テストケースを生成する処理の一例を示すステップである。また、ステップS713は、受け付けた値を項目に対して代入することを含むテストケースを生成する処理の一例を示すステップである。また、すなわち、ステップS713は、受け付けた値と項目が持つ値とを比較することを含むテストケースを生成する処理の一例を示すステップである。 That is, step S713 is a step showing an example of a process for generating a test case using the acquired definition information. Step S713 is a step showing an example of processing for generating a test case based on the accepted definition. Step S713 is a step showing an example of processing for generating a test case including substituting the received value for the item. That is, step S713 is a step showing an example of processing for generating a test case including comparing the received value with the value of the item.
以上で、図7の説明を終了する。 Above, description of FIG. 7 is complete | finished.
以上により、アプリケーションを構築するための定義情報を用いて、アプリケーションに係るテストケースを容易に生成することができるようになる。また、アプリケーションを構築するための定義情報を用いて、定義情報が正しく定義されているか否かテストするためのテストケースを容易に生成することができるようになる。 As described above, it is possible to easily generate a test case related to an application using definition information for building an application. In addition, it is possible to easily generate a test case for testing whether or not the definition information is correctly defined using the definition information for building the application.
図8、図9及び図10は、テスト実行のフローチャートの一例を示す図である。 8, FIG. 9 and FIG. 10 are diagrams illustrating an example of a flowchart of test execution.
ステップS801において、情報処理装置101は、接続先DB受信部439を介して、テストスイート定義409に接続先DB482があるか否かを確認する。情報処理装置101は、確認した結果、接続先DBがある場合はステップS803へ進み、ない場合はステップS802へ進む。
In step S <b> 801, the
ステップS802において、情報処理装置101は、テスト対象のWebアプリケーションコードが生成済みであるか否かを確認する。情報処理装置101は、該当するWebアプリケーションコードが生成されていればステップS804へ進み、なければテスト実行を終了する。
In step S802, the
ステップS803において、情報処理装置101は、接続先DBが同じかつテスト対象のWebアプリケーションコードが生成済みであることを確認する。情報処理装置101は、該当するWebアプリケーションコードが生成されていればステップS804へ進み、なければテスト実行を終了する。
In step S803, the
ステップS804において、情報処理装置101は、テスト実行部(インタープリタ)434とテストケース定義解釈部433を用いて、ステップS803にて取得したテストケース定義407に含まれるテストケース数及びテスト手順数をカウントする。
In step S804, the
ステップS805において、情報処理装置101は、テストビュー1403(図14)を表示する。
In step S805, the
ステップS806において、情報処理装置101は、テスト進捗バー1404(図14)を空の状態で表示する。
In step S806, the
ステップS807において、情報処理装置101は、テスト情報のテストツリーペイン1406(図14)に、ステップS803及びステップS804でテスト対象としたテストケース名(例:ユーザ登録フォームチェック、商品登録フォームチェック)及びテスト手順(1.画面表示、2.行追加、3.…)を表示する。
In step S807, the
ステップS808において、情報処理装置101は、テスト情報の詳細ペイン1407(図14)にメッセージ「実行中…」を表示する。
In step S808, the
ステップS809において、情報処理装置101は、テスト実行準備部432を用いて、テスト実行前準備を行う。具体的には、テスト実行前準備では、セッション、クッキー及びスレッド等の生成を行い、ユーザが実際にブラウザを用いてアプリケーションを実行した場合と同様のアプリケーションデータを生成する。これにより、ブラウザ、エンドユーザ操作及びアプリケーションサーバ等を用いずに、アプリケーション構築ツールにおいて、テストを効率的に行うことができるようになる。
In step S <b> 809, the
ステップS902において、情報処理装置101は、テスト実行対象のテストケースのテスト手順の分だけ、ステップS903〜S915、S921又はS925を繰り返す。
In step S902, the
ステップS903において、情報処理装置101は、強制終了ボタン1405(図14)の押下を受け付けたか否かを判断し、押下された場合はステップS904へ進み、押下されていない場合はステップS905へ進む。
In step S903, the
ステップS904において、情報処理装置101は、テスト進捗バー1404を灰色100%で更新し、未実行のテストケース又はテスト手順がある場合であっても中断し、本フローチャートを終了する。
In step S904, the
ステップS905において、情報処理装置101は、テストケース定義解釈部433を用いて、テスト手順情報1203を取得する。
In step S <b> 905, the
ステップS906において、情報処理装置101は、テスト手順情報のテスト命令が入力系か否かを判定し、入力系の場合はステップS907へ進み、入力系でない場合はステップS908へ進む。
In step S906, the
ステップS907において、情報処理装置101は、アプリケーションコードアクセス部436を用いて、生成済のアプリケーションコード440へ疑似的に値の入力を実行する。その後、アプリケーションコードアクセス部を用いて、アプリケーションコード440から実行結果を受け取り、テスト結果取得部435を用いてテスト結果を得る。すなわち、ステップS907は、ステップS712にて受け付けた情報を用いて、テストを実行する処理の一例を示すステップである。
In step S <b> 907, the
ステップS908において、情報処理装置101は、テスト手順情報のテスト命令が実行系か否かを判定し、実行系の場合はステップS909へ進み、実行系でない場合はステップS910へ進む。
In step S908, the
ステップS909において、情報処理装置101は、アプリケーションコードアクセス部436を用いて、生成済のアプリケーションコード440へ疑似的にアクションを実行するリクエストを送る。その後、アプリケーションコードアクセス部436を用いて、アプリケーションコード440から実行結果を受け取り、テスト結果取得部435を用いてテスト結果を得る。
In step S909, the
ステップS910において、情報処理装置101は、アプリケーションコードアクセス部436を用いて、生成済のアプリケーションコード440から検証対象の情報を取得する。
In step S <b> 910, the
ステップS911において、情報処理装置101は、検証対象の情報(検証対象が定義情報に含まれる項目である場合、当該項目に係る情報(例;当該項目が持つ値や属性値))が条件(例;ステップS712にて入力を受け付けた引数の値)に合致するか否かを判定し、検証が成功(条件に合致する)の場合はステップS916へ進み、失敗(条件に合致しない)の場合はステップS912へ進む。
In step S911, the
例えば、図13の1303の場合、1302にて「項目値入力」を行い、「アクション実行」でUPDATE(更新)を行った後において、「ID」の値が「1」と等しいか否かを判定する。つまり、その時点で「ID」=1の場合は、そのテスト手順=“成功”と判定し、「ID」≠1の場合は、そのテスト手順=“失敗”と判定する。 For example, in the case of 1303 in FIG. 13, after “item value input” is performed in 1302 and UPDATE (update) is performed in “action execution”, it is determined whether or not the value of “ID” is equal to “1”. judge. That is, if “ID” = 1 at that time, the test procedure is determined to be “successful”, and if “ID” ≠ 1, the test procedure is determined to be “failure”.
なお、本実施形態においては、検証系の例として「項目値検証」を挙げたが、項目値に限定するものではなく、例えば、表示するオブジェクトやメッセージの表示位置、色、大きさ又は表示内容等の検証であってもよい。また、表示、認証、検索、追加、更新若しくは削除等の処理にかかった時間、CPUの使用率、記憶領域の空き容量、又は、カメラ等の周辺機器から取得可能な情報等、テスト実行時に取得可能な情報に係る検証であれば、その他の検証であってもよい。 In the present embodiment, “item value verification” is given as an example of a verification system, but it is not limited to item values. For example, the display position, color, size, or display content of an object to be displayed or a message is displayed. Etc. may be verified. Also, the time taken for processing such as display, authentication, search, addition, update or deletion, CPU usage rate, free storage space, or information that can be obtained from peripheral devices such as cameras, etc. Other verifications may be used as long as they are verifications relating to possible information.
すなわち、ステップS911は、ステップS712にて受け付けた情報を用いて、テストを実行する処理の一例を示すステップである。また、ステップS911は、受け付けた値と項目が持つ値とを比較した結果に基づいて、実行されるテストの成否を判定する処理の一例を示すステップである。 That is, step S911 is a step showing an example of a process for executing a test using the information received in step S712. Step S911 is a step showing an example of a process for determining the success or failure of the test to be executed based on the result of comparing the received value with the value of the item.
ステップS912において、情報処理装置101は、テスト手順のステータスを“失敗”としてRAM202に記憶する。
In step S912, the
ステップS913において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、検証失敗数を更新する(図15の1503)。
In step S913, the
ステップS914において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、テスト手順数を更新する(図15の1502)。
In step S914, the
ステップS915において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、進捗バーを赤色で更新する(図15の1505)。
In step S915, the
ステップS916において、情報処理装置101は、アプリケーションエラーが発生していないことを確認する。発生していなければステップS922へ進み、エラーが発生している場合は、ステップS917へ進む。
In step S916, the
ステップS917において、情報処理装置101は、テスト手順のステータスを“テスト失敗”としてRAM202に記憶する。
In step S917, the
ステップS918において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、テスト失敗数を更新する(図15の1504)。
In step S918, the
ステップS919において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、テスト手順数を更新する(図15の1502)。
In step S919, the
ステップS920において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、進捗バーを赤色で更新する(図15の1505)。
In step S920, the
ステップS921において、情報処理装置101は、テスト結果表示部438を用いて、テストケース数を更新する(図15の1501)。その後、未実施のテスト手順が実行中のテストケースに含まれている場合であっても、それらの実行はせず、次に実行予定のテストケースを実行する。ステップS902に戻る。
In step S921, the
ステップS922において、情報処理装置101は、テスト手順のステータスを“成功”として登録する(図15の1507)。
In step S922, the
ステップS923において、情報処理装置101は、テスト結果表示部438を用いて、テスト手順数を更新する(図15の1502)。
In step S923, the
ステップS924において、情報処理装置101は、これまでのテスト手順のステータスにテスト失敗及び検証失敗の両方が0件であるか否かを判定し、正の場合はステップS925に進み、偽の場合はステップS925を行わない。
In step S924, the
ステップS1001において、情報処理装置101は、テスト結果表示部438を用いて、テストケース数を更新する(図15の1501)。
In step S1001, the
ステップS1002において、情報処理装置101は、テスト終了処理部437を用いて、テスト実行を終了する。具体的には、テスト実行終了処理では、ステップS809にて生成したセッション、クッキー及びスレッド等をクローズする。
In step S <b> 1002, the
ステップS1003において、情報処理装置101は、テスト結果表示部438を用いて、テスト実行時間を更新する(図15の1506)。
In step S1003, the
ステップS1004において、情報処理装置101は、テスト結果取得部435とテスト結果表示部438を用いて、テスト中に出力されるログをアプリケーションログビューに表示する(図15の1509)。
In step S1004, the
以上により、テスト対象のアプリケーションが動作可能な状態でなくても、アプリケーション構築ツールにおいて、テスト対象の定義についてのみテストを行うことができるため、テストを効率的に行うことができるようになる。 As described above, even if the test target application is not in an operable state, the application construction tool can perform the test only for the definition of the test target, so that the test can be performed efficiently.
以上で、図8、図9及び図10の説明を終了する。 Above, description of FIG.8, FIG.9 and FIG.10 is complete | finished.
次に、図17を用いて、テストスイート定義の作成フローについて説明する。 Next, a test suite definition creation flow will be described with reference to FIG.
ステップS1701において、情報処理装置101は、ユーザからのテストケース定義作成の指示を受け付ける。具体的には、新規テストスイート生成受付表示1901(図19)の選択を受け付ける。ここで、図19のテストスイート作成メニュー画面の一例について説明する。情報処理装置101は、新規テストスイート生成受付表示1901が選択されたことに従い、ユーザによるテストスイート定義の作成指示を受け付ける。
In step S1701, the
ステップS1702において、情報処理装置101は、外部メモリ211にテストケース定義407が作成済か否かを判定する。情報処理装置101は、テストケース定義407が作成済の場合はステップS1703に進み、テストケース定義407が未作成の場合はテストスイート定義の作成処理を終了する。
In step S <b> 1702, the
ステップS1703において、情報処理装置101は、新規テストスイート生成メニュー画面1902(図19)を表示し、接続先DBコード1903の選択(図19)を受け付ける。接続先DBコード1903は、リポジトリ定義部401内のデータベース定義406の中から選択される。ここで、情報処理装置101は、データベースが選択されなかった場合に、初期設定の接続先のデータベース設定2303(図23)に接続し、テストを実行する。また、情報処理装置101は、すでに他のテストスイートで接続先として設定されているデータベースを選択できないように制御してもよい。例えば、情報処理装置101は、接続先DBコード1903のドロップダウンリストで表示させないようにしてもよい。あるいは、情報処理装置101は、他のテストスイートで接続先として設定されているデータベースを選択した場合に、新規テストスイート生成メニュー画面1902を遷移できないように制御してもよい。このように、情報処理装置101は、複数のテストスイートで互いに異なるデータベースに接続させるように、ユーザの操作を支援することができる。
また、情報処理装置101は、データベース設定画面2302を表示して接続先データベースを選択させてもよい。ユーザは、データベース設定画面2302上で、データベースを選択することにより、テストスイートに用いるデータベースを選択することができる。この場合、データベース設定画面2302は、デフォルトで接続するデータベースを示す表示アイテム2304を表示する。なお、情報処理装置101は、他のテストスイートの設定でユーザにより任意に設定されたデータベースを示す表示アイテム2305をデータベース設定画面2302に表示させてもよい。後述するように、本実施形態において、情報処理装置101は、複数のテストスイートを並列に実行する。そのため、情報処理装置101は、当該テストスイートで接続するデータベースを他のテストスイートで選択されていないデータベースに設定する。
In step S1703, the
Further, the
ステップS1704において、情報処理装置101は、新規テストスイート生成メニュー画面1902(図19)の入力欄1905、接続先DBコード1903、対象テストケース1904で入力された内容に基づいてテストスイート定義が生成される。
In step S1704, the
ステップS1705において、情報処理装置101は、リポジトリ定義部401に記憶されるテストケース定義407を選択可能なテストスイート設定画面2100(図21)を表示する。図21におけるテストスイート設定画面2100は、テストスイート定義に記憶された複数のテストケースからテストスイートに設定するものを選択することができる。
In step S1705, the
また、テストスイート設定画面2100は、対象テストケース1904で選択されたテストケース2101をすでに選択された状態で表示される(図21)。ユーザは、テストスイート設定画面2100から、テストスイート定義に含めたいテストケースを任意に選択する。そして、情報処理装置101は、当該選択されたテストケースをテストスイート定義409に保存する。言い換えると、情報処理装置101は、テストケースの選択情報をテストスイート定義に設定しているとも言える。
Further, the test
ステップS1706において、情報処理装置101は、ユーザからのテストケース定義の絞り込みの指示を受け付ける。具体的には、情報処理装置101は、リポジトリ定義を示すタブ2102が選択されているか判定する。
In step S1706, the
ステップS1707において、情報処理装置101は、選択されたタブ2102が示すリポジトリ定義に対応するテストスイートを表示する。テストスイート設定画面2100を例に説明すると、情報処理装置101は、「IO」のタブ2102が選択されることにより、リポジトリ定義部401内の入出力定義403をテストに含むテストケースを一覧で表示する。情報処理装置101は、表示されたテストケースへの選択を受け付ける。また、情報処理装置101は、「DM」のタブ2102が選択されることにより、リポジトリ定義部401内のデータモデル定義404をテストに含むテストケースを一覧で表示する。また、情報処理装置101は、「BP」のタブ2102が選択されることにより、リポジトリ定義部401内のビジネスプロセス定義405をテストに含むテストケースを一覧で表示する。
In step S1707, the
ステップS1708において、情報処理装置101は、ユーザからの定義ファイル変更時間条件部476によるテストケース定義の絞り込みの指示を受け付ける。具体的には、情報処理装置101は、定義ファイル変更時間条件部476で記憶される変更情報を基に表示を制御する。情報処理装置101は、変更時間条件2104(図21)の入力を受け付け、当該入力された条件と定義ファイル変更時間条件部476で記憶する条件を比較する。情報処理装置101は、当該比較した結果を用いて、変更時間条件2104以降に記憶されたテストケース定義を表示する。
ステップS1709において、情報処理装置101は、入力された時間以降に更新されたリポジトリ情報を含むテストケースを表示する。具体的には、情報処理装置101は、定義ファイル変更時間条件部476に記憶された、後に更新されたリポジトリ情報を含むテストケース定義407をソートして表示する。
In step S1708, the
In step S1709, the
ステップS1710において、情報処理装置101は、所定の条件により表示されたテストケース定義407の選択を受け付ける。具体的には、情報処理装置101は、チェックボックス2109で、選択または解除することができる。情報処理装置101は、選択を受けつけたテストケース定義をテストスイートとして設定済みとし、テストスイート定義409を更新する。情報処理装置101は、選択結果2102(図21)で示すように、選択されたテストケースを、テストスイート定義を親とした階層構造で表示する。
In step S1710, the
次に図18を用いて、DB別テストスイート用アプリケーションプログラム生成フローについて説明する。 Next, a DB-specific test suite application program generation flow will be described with reference to FIG.
ステップS1801において、情報処理装置101は、アプリケーション定義402の設定を受け付ける。具体的には、アプリケーション構築ツールの画面を介して、アプリケーション開発者から入出力定義403、データモデル定義404、ビジネスプロセス定義405及びデータベース定義406の設定を受け付ける。
In step S1801, the
ステップS1801において、受け付けたアプリケーション定義402、入出力定義403、データモデル定義404、ビジネスプロセス定義405及びデータベース定義406の設定は、リポジトリ定義部401にXMLファイル形式で記憶する。
In step S1801, the received
ステップS1802において、情報処理装置101は、アプリケーション生成の指示を受け付ける。
In step S1802, the
ステップS1803において、情報処理装置101は、リポジトリ定義部401からアプリケーション定義402を取得する。リポジトリ定義解析部411は、読み込んだ定義を解析したうえでROM203に記憶しておき、解析された定義は各生成部から適宜参照される。
In step S1803, the
ステップS1804において、情報処理装置101は、リポジトリ定義部401からデータモデル定義404を取得する。
In step S1804, the
ステップS1805において、情報処理装置101は、リポジトリ定義部401から入出力定義403を取得する。
In step S1805, the
ステップS1806において、情報処理装置101は、リポジトリ定義部401からビジネスプロセス定義405を取得する。
In step S1806, the
ステップS1807において、情報処理装置101は、リポジトリ定義部401からデータベース定義406を取得する。すなわち、ステップS1801〜S1807は、アプリケーションを構築するための定義情報を取得する処理の一例を示すステップである。
In step S1807, the
ステップS1808において、情報処理装置101は、ユーザからのテストスイート選択を受け付ける。具体的には、情報処理装置101は、アプリケーション生成画面2300(図23)で選択を受け付ける。情報処理装置101は、テストスイート選択部2301で選択されたテストスイートを生成対象として受け付ける。
In step S1808, the
ステップS1809において、情報処理装置101は、選択したテストスイートに接続先DB482がある場合は、ステップS1810へ進み、接続先DB482がない場合はステップS1812へ進む。
In step S1809, if there is a
ステップS1810において、情報処理装置101は、接続先DBコードの情報がある場合、データベース定義406から該当する接続先DBコードと一致するデータベース情報を参照する。
In step S1810, when there is information on the connection destination DB code, the
ステップS1811において、情報処理装置101は、アプリケーション名をアプリケーション名とテストスイート名からなるものへ変更する。
In step S1811, the
ステップS1812において、情報処理装置101は、データベース定義406からデフォルトのデータベース設定を参照する。データベース設定画面2302は、データベース定義406に記憶されるデータベース定義を一覧で表示する画面である。当該データベース定義は、リポジトリ定義エディタ部420で参照され、表示制御部310で表示される。情報処理装置101は、データベース設定画面2302で表示されるデータベース定義のうち、いずれのデータベースをデフォルトで使用するかを記憶している。また、情報処理装置101は、いずれのデータベースをデフォルトの接続先とするかを識別可能に表示することが可能である。一例として、情報処理装置101は、データベース設定画面2302上で表示アイテム2304を表示することによりデフォルトの接続先を識別可能に表示する。
In step S1812, the
ステップS1813において、情報処理装置101は、上述の各設定に基づいてアプリケーションプログラムを生成する。
In step S1813, the
次に図20、図21、図22を用いてテストスイートの実行のフロー、各フローにおける画面の表示について説明する。なお、本実施形態においては、図17を用いて説明したテストスイート生成のフローにおいて、複数のテストスイートが生成されているとする。そのため、以下では、情報処理装置101は、複数のテストスイートのテストを並列して同時に実行する場合について説明する。
Next, a test suite execution flow and screen display in each flow will be described with reference to FIGS. 20, 21, and 22. In the present embodiment, it is assumed that a plurality of test suites are generated in the test suite generation flow described with reference to FIG. Therefore, hereinafter, the
ステップS2001において、情報処理装置101は、テストの実行の開始の指示を受け付ける。具体的には、情報処理装置101は、実行ボタン2105(図21)が選択されたことに従い指示を受け付ける。なお、実行されるテストスイートは複数であってもよい。複数のテストスイートを並列に実行することで、1つずつテストする場合よりもテストにかかる工数が短縮される。本実施形態では、情報処理装置101は、テスト全体ビュー2106(図21)に表示されたテストスイートを同時に実行するとする。また、情報処理装置101は、テスト全体ビュー2106に表示されるテストスイート定義のうち、チェックボックス2110で選択されたテストスイート定義のみを実行ボタンの選択に従って実行することとしてもよい。
In step S2001, the
ステップS2002において、情報処理装置101は、テスト全体ビュー2106(図21)を表示する。テスト全体ビュー2106は、設定されたテストスイート定義409の一覧を表示する。そして、テスト全体ビュー2106は、実行されたテストの結果を、テストスイート単位で識別可能に表示することが可能である。また、テスト全体ビュー2106は、テスト進捗バー2107とテスト情報表示部2108とを表示する。テスト進捗バー2107は、必ずしもバー状のインジケータでなくてもよい。テスト進捗バー2107は、例えば、円状のものであってもよい。つまり。テスト進捗バー2107は、少なくとも、実行中のテストスイート定義409の全工程における進捗の割合を視認可能な情報であればよい。テスト情報表示部2108は、実行中のテストスイート定義409の進捗および結果をテキストにて表示する。テスト情報表示部2108は、例えば、「実行中」、「実行完了」、「エラー」等の表示を含む。
In step S2002, the
ステップS2003において、情報処理装置101は、テスト進捗バー2107を空の状態で表示する。つまり、情報処理装置101は、テストスイート定義409によるテストの進捗が「0」であることを示している。
In step S2003, the
ステップS2004において、情報処理装置101は、テスト情報表示部2108にテストは実行中であることを示すための表示をする。本実施形態では、情報処理装置101は、テスト情報表示部2108に「実行中…」という文字を表示する。
In step S2004, the
ステップS2005において、情報処理装置101は、対象であるテストスイートがなくなるまで以下のステップを繰り返す。
In step S2005, the
ステップS2006において、情報処理装置101は、対象テストスイートのテストスイート定義409を読み込む。
In step S2006, the
ステップS2007において、情報処理装置101は、対象テストスイートの数だけスレッドを作成する。複数のテストスイートが実行されるとき、スレッドは複数作成され並列に実行される。情報処理装置101は、作成されたスレッドをテスト全体ビュー2106に表示する。
In step S2007, the
ステップS2008において、情報処理装置101は、対象テストスイートに含まれるテストケース定義を読み込む。
ステップS2009において、情報処理装置101は、ステップS2008で読み込んだテストケースがなくなるまで以下のステップを繰りかえす。
In step S2008, the
In step S2009, the
ステップS2010において、情報処理装置101は、読み込んだテスト定義に基づいてテストを実行する。
In step S2010, the
ステップS2011において、情報処理装置101は、テストの実行状況に応じてテスト進捗バー2107を更新する。一つのテスト進捗バーは1つのテストスイートに対してどれだけ作業が完了したかを表す。
In step S2011, the
ステップS2012において、情報処理装置101は、テストスイート設定画面2200でテスト結果を表示する。ここで、図22を用いて、テストスイート定義を用いたテスト結果の表示方法について説明する。テストスイート設定画面2200は、テストスイート設定画面2150でテストの実行の開始がされたテストスイートが終了した際の画面の一例である。図22において、テスト進捗バー2201は、テストが完了したことを示している。本実施形態において、「Suite1.wptx」のテスト進捗バーは、エラーが発生せずにテストが完了したことを示す。一方、「Suite2.wptx」のテスト進捗バーは、はエラーが発生してテストが完了したことを示す。テストスイート設定画面2200に示す通り、それぞれのテストスイート定義の進捗バーは、異なる色で表示されるため、ユーザは、エラーが発生せずにテストが完了したか否かを視認することができる。また、それぞれのテストスイート定義の進捗バーの横に、結果が識別可能なアイコン2203が表示される。ユーザは、アイコン2203を目視することにより、いずれのテストスイートでエラーが発生したのかを認識することができる。また、それぞれのテストスイート定義に含まれるテストの横に、結果が識別可能なアイコン2204が表示される。ユーザは、アイコン2204を目視することにより、テストスイートに含まれるテストケースのうちいずれのテストケースでエラーが発生したのかを認識することができる。それぞれのテストケースのステップごとに、テスト結果を識別可能なアイコン2205が表示される。ユーザは、アイコン2205を目視することにより、テストケースのうちいずれのステップでエラーが発生したのかを認識することができる。
In step S2012, the
なお、本実施形態のようなアプリケーション構築ツールは、アプリケーションを構築するために設定した定義情報が予想通りに設定されているかのテストをするものである。つまり、本実施形態では、アプリケーション構築ツールによるアプリケーション構築又はプログラム生成そのものではなく、構築又は生成の基となる定義情報についての正否についてテストしている。 Note that the application construction tool as in the present embodiment tests whether the definition information set for building an application is set as expected. That is, in this embodiment, whether or not the definition information that is the basis of construction or generation is tested for correctness, not application construction or program generation itself by the application construction tool.
以上、上述の実施形態によれば、情報処理装置は、データベース定義からデータベースの選択を受け付け、互いに異なるデータベースを接続先とする複数のテストスイートを生成し、生成された複数のテストスイートに基づいて、選択された接続先のデータベースのデータを用いてアプリケーションに係るテストを実行する。そのため、ユーザがテストスイートごとに接続すべきデータベースを選択可能となる。従って、テストの過程でデータベースのデータの値を変更する場合であっても、複数のテストスイートを並行して同時に実行することができる。つまり、大規模なアプリケーションのテスト工程であっても、正確かつ迅速にテストを実行することができる。 As described above, according to the above-described embodiment, the information processing apparatus receives a selection of a database from a database definition, generates a plurality of test suites having different databases as connection destinations, and based on the generated plurality of test suites. Then, a test related to the application is executed using the data of the selected connection destination database. Therefore, the user can select a database to be connected for each test suite. Therefore, even when the data value of the database is changed during the test process, a plurality of test suites can be executed in parallel. In other words, even in a large-scale application test process, a test can be executed accurately and quickly.
上述の実施形態による効果についてより具体的に説明する。情報処理装置は、複数のテストスイートを並行して同時に実行することでトータルのテスト時間が短縮される。例えば、情報処理装置は、10000個のテストケースを実行する場合、直列に実行すれば10時間かかる場合に、10台の装置で並行して実行すれば、理論上は1時間で完了することができる。ただし、10台の装置で同じデータベースを利用した場合は、データベース同士のデータの衝突(他のテストの実行によりデータベースが上書きされる等)による問題が発生する。この考え方を適用すると、情報処理装置は、テストスイートごとに接続するデータベースを分けるために、どのテストをどのデータベースに接続するのかを設定することは有用である。また、複数のテストケースのそれぞれに接続先データベースを設定することは煩雑である。そのため、複数のテストケースを目的ごとにまとめたテストスイート定義を用いて、テストスイート単位ごとデータベースの接続先を設定することはより有用である。特に、本件のようなリポジトリ定義をベースとしたアプリケーション開発ツールを用いる場合と異なり、既存のスクラッチ開発で使われるテストスイートクラスは単にテストケースをまとめただけである。したがって、上述の実施形態のように、テストスイート定義に追加の条件を加えられることは効果的である。本実施形態のアプリケーション開発ツールは、テストスイート定義とともにデータベース定義を有しているため、当該データベース定義の中のどのデータベースに接続するのかを選択するだけで容易に設定が可能となる。 The effect by the above-mentioned embodiment is demonstrated more concretely. The information processing apparatus reduces the total test time by simultaneously executing a plurality of test suites. For example, when executing 10,000 test cases, an information processing device takes 10 hours if executed in series, and if executed in parallel on 10 devices, it can theoretically be completed in one hour. it can. However, when the same database is used by 10 apparatuses, a problem occurs due to data collision between databases (for example, the database is overwritten by execution of another test). When this concept is applied, it is useful for the information processing apparatus to set which test is connected to which database in order to divide the database to be connected for each test suite. Moreover, it is complicated to set a connection destination database for each of a plurality of test cases. Therefore, it is more useful to set a database connection destination for each test suite unit using a test suite definition in which a plurality of test cases are grouped for each purpose. In particular, unlike the case of using an application development tool based on the repository definition as in this case, the test suite class used in the existing scratch development is simply a collection of test cases. Therefore, it is effective to add an additional condition to the test suite definition as in the above-described embodiment. Since the application development tool of this embodiment has a database definition together with a test suite definition, it can be easily set only by selecting which database in the database definition to connect to.
また、情報処理装置は、ユーザにより任意のデータベースの選択を受け付けていない場合には、データベース定義のうち初期設定のデータベースを用いてアプリケーションに係るテストを実行する。このため、情報処理装置は、必要に応じて、選択をせずともデータベースを用いたテストスイートの実行が可能となる。そのため、テスト工程におけるユーザの利便性を向上させることができる。 In addition, when the information processing apparatus does not accept selection of an arbitrary database by the user, the information processing apparatus executes a test related to the application using an initial setting database among the database definitions. For this reason, the information processing apparatus can execute a test suite using a database without making a selection, if necessary. Therefore, user convenience in the test process can be improved.
勿論、本発明の実施形態により生成したテストケースを用いて、テスト対象を定義情報に絞ったテストを行うだけでなく、構築又は生成したアプリケーションを動作させてテストを行うことでアプリケーション全体まで範囲を広げたテストを行うとしてもよい。 Of course, using the test cases generated according to the embodiments of the present invention, not only the test focused on the definition information but also the test is performed by operating the constructed or generated application, so that the scope of the entire application can be expanded. An extended test may be performed.
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(又はCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。 As described above, a recording medium in which a program for realizing the functions of the above-described embodiments is recorded is supplied to the system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the program stored in the recording medium. It goes without saying that the object of the present invention can also be achieved by reading and executing.
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。 In this case, the program itself read from the recording medium realizes the novel function of the present invention, and the recording medium recording the program constitutes the present invention.
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。 As a recording medium for supplying the program, for example, a flexible disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, DVD-ROM, magnetic tape, nonvolatile memory card, ROM, EEPROM, silicon A disk or the like can be used.
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, by executing the program read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on an instruction of the program is actually It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the processing and the processing is included.
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Furthermore, after the program read from the recording medium is written to the memory provided in the function expansion board inserted into the computer or the function expansion unit connected to the computer, the function expansion board is based on the instructions of the program code. It goes without saying that the case where the CPU or the like provided in the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。 The present invention may be applied to a system constituted by a plurality of devices or an apparatus constituted by a single device. It goes without saying that the present invention can also be applied to a case where the present invention is achieved by supplying a program to a system or apparatus. In this case, by reading a recording medium storing a program for achieving the present invention into the system or apparatus, the system or apparatus can enjoy the effects of the present invention.
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、OS(オペレーティングシステム)に供給されるスクリプトデータ等の形態から成ってもよい。 The form of the program may be in the form of object code, program code executed by an interpreter, script data supplied to an OS (operating system), and the like.
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
Furthermore, by downloading and reading a program for achieving the present invention from a server, database, etc. on a network using a communication program, the system or apparatus can enjoy the effects of the present invention. In addition, all the structures which combined each embodiment mentioned above and its modification are also included in this invention.
101 情報処理装置
102 アプリケーションサーバ
103 データベースサーバ
104 アプリケーションクライアント
105 ネットワーク
302 テスト実行部
305 テストケース生成部
311 テストスイート生成部
101
Claims (6)
前記アプリケーションを構築するためのデータベース定義からデータベースの選択を受け付けるデータベース選択受付手段と、
前記データベース選択受付手段で選択されたデータベースであって、互いに異なるデータベースを接続先とする複数のテストスイートを生成するテストスイート生成手段と、
前記テストスイート生成手段により生成された複数のテストスイートに基づいて、前記接続先のデータベースのデータを用いて前記アプリケーションに係るテストを実行するテスト実行手段
を備えることを特徴とする情報処理装置。 An information processing apparatus for building an application,
Database selection accepting means for accepting selection of a database from a database definition for constructing the application;
A test suite generating unit that generates a plurality of test suites selected by the database selection receiving unit and having different databases as connection destinations;
An information processing apparatus comprising: a test execution unit that executes a test related to the application using data of the connection destination database based on a plurality of test suites generated by the test suite generation unit.
前記テスト実行手段は、前記データベース選択受付手段により選択を受け付けていない場合に、前記データベース記憶手段で記憶される初期設定のデータベースのデータを用いて前記アプリケーションに係るテストを実行することを特徴とする請求項1に記載の情報処理装置。 Database storage means for storing an initial connection destination among database definitions for constructing the application;
The test execution unit executes a test related to the application using data of an initial setting database stored in the database storage unit when selection is not received by the database selection reception unit. The information processing apparatus according to claim 1.
前記アプリケーションを構築するためのデータベース定義からデータベースの選択を受け付けるデータベース選択受付工程と、
前記データベース選択受付工程で選択されたデータベースであって、互いに異なるデータベースを接続先とする複数のテストスイートを生成するテストスイート生成工程と、
前記テストスイート生成工程により生成された複数のテストスイートに基づいて、前記接続先のデータベースのデータを用いて前記アプリケーションに係るテストを実行するテスト実行工程
を備えることを特徴とする情報処理装置の制御方法。 A method for controlling an information processing apparatus for building an application,
A database selection receiving step of receiving a selection of a database from a database definition for constructing the application;
A test suite generating step of generating a plurality of test suites selected in the database selection receiving step and having different databases as connection destinations;
Control of an information processing apparatus comprising: a test execution step of executing a test related to the application using data of the connection destination database based on a plurality of test suites generated by the test suite generation step Method.
The program for functioning a computer as an information processing apparatus of any one of Claims 1 thru | or 4.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018089331A JP2019197259A (en) | 2018-05-07 | 2018-05-07 | Information processor, method for controlling the same, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018089331A JP2019197259A (en) | 2018-05-07 | 2018-05-07 | Information processor, method for controlling the same, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019197259A true JP2019197259A (en) | 2019-11-14 |
Family
ID=68538389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018089331A Pending JP2019197259A (en) | 2018-05-07 | 2018-05-07 | Information processor, method for controlling the same, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019197259A (en) |
-
2018
- 2018-05-07 JP JP2018089331A patent/JP2019197259A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100492316C (en) | System and method for test automation | |
JP4395761B2 (en) | Program test support apparatus and method | |
CN109739855B (en) | Method and system for realizing data sheet splicing and automatically training machine learning model | |
JPWO2013073504A1 (en) | Program analysis / verification service providing system, control method thereof, control program, control program for causing computer to function, program analysis / verification device, program analysis / verification tool management device | |
JP2009265810A (en) | Status transition test support device, status transition test support program and status transition test support method | |
CN113505082B (en) | Application program testing method and device | |
CN112494940A (en) | User interface manufacturing method and device, storage medium and computer equipment | |
CN112667517A (en) | Method, device, equipment and storage medium for acquiring automatic test script | |
JP7212238B2 (en) | Information processing device, its control method and program | |
JP6434435B2 (en) | Information processing apparatus, operation support method, and operation support program | |
JP5344658B2 (en) | Information processing apparatus, control method thereof, and program | |
JP7277694B2 (en) | Information processing device, its control method and program | |
JP4602312B2 (en) | Device setting device, device setting method, information acquisition device, information acquisition method, recording medium, and program | |
KR101901310B1 (en) | System for providing user-oriented interconnection application integration | |
JP2019197259A (en) | Information processor, method for controlling the same, and program | |
JP7219389B2 (en) | Information processing device, its control method and program | |
JP7323755B2 (en) | Information processing system, its control method and program | |
JP7319516B2 (en) | Program, information processing device, and control method thereof | |
JP7256353B2 (en) | Information processing system, its control method and program | |
JP7268759B2 (en) | TEST DATA GENERATION DEVICE, TEST DATA GENERATION METHOD, AND PROGRAM | |
JP2019197261A (en) | Information processor, method for controlling the same, and program | |
JP2019192135A (en) | Information processing device, processing method therefor and program | |
JP7311740B2 (en) | Information processing system, its control method, and program | |
JP2019153265A (en) | Information processing apparatus, processing method of the same and program | |
JP2019153264A (en) | Information processing apparatus, processing method of the same and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20180703 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20181031 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20190115 |