JP2019197261A - Information processor, method for controlling the same, and program - Google Patents

Information processor, method for controlling the same, and program Download PDF

Info

Publication number
JP2019197261A
JP2019197261A JP2018089333A JP2018089333A JP2019197261A JP 2019197261 A JP2019197261 A JP 2019197261A JP 2018089333 A JP2018089333 A JP 2018089333A JP 2018089333 A JP2018089333 A JP 2018089333A JP 2019197261 A JP2019197261 A JP 2019197261A
Authority
JP
Japan
Prior art keywords
test
database
application
definition
processing apparatus
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
Application number
JP2018089333A
Other languages
Japanese (ja)
Inventor
勲 上田
Isao Ueda
勲 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Marketing Japan Inc, Canon IT Solutions Inc filed Critical Canon Marketing Japan Inc
Priority to JP2018089333A priority Critical patent/JP2019197261A/en
Publication of JP2019197261A publication Critical patent/JP2019197261A/en
Pending legal-status Critical Current

Links

Images

Abstract

To provide a mechanism for running a test efficiently in an application construction tool.SOLUTION: The information processor for constructing an application includes: database selection receiving means for receiving a selection of a database for a test from the database definition for constructing an application; test case generation means for generating a test case, using the definition for constructing an application; and test execution means connecting to the connection destination of the database for a test received by the database selection receiving means, the test execution means executing a test related to an application, using a test case generated by the test case generation means.SELECTED DRAWING: Figure 8

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. Further, it is known that an application to be constructed is connected to a database as a data management method.

特許文献1には、登録されたテストケースに基づきテスト用のプログラムを生成する仕組みが開示されている。   Patent Document 1 discloses a mechanism for generating a test program based on a registered test case.

特開2010−237841号公報JP 2010-237841 A

しかしながら、特許文献1に記載の技術では、データベースに接続してテストを実行する場合について何ら考慮されていない。そのため、データベースに接続してテストを実行するとデータベースの内容が変更されるおそれがあった。したがって、テストを実行したものと同一のデータベースを用いて本番用のアプリケーションを実行すると、適切な動作が行われないおそれがあった。   However, in the technique described in Patent Document 1, no consideration is given to a case where a test is executed by connecting to a database. Therefore, there is a possibility that the contents of the database are changed when the test is executed by connecting to the database. Therefore, when the production application is executed using the same database as that used for the test, there is a possibility that an appropriate operation may not be performed.

そこで本発明は、上記の課題に鑑みてなされたものであり。データベースに接続してテスト工程を実行する場合に、本番環境のデータベースに与える影響を低減する仕組みを提供する。   Therefore, the present invention has been made in view of the above problems. Provide a mechanism to reduce the impact on the production environment database when connecting to the database and executing the test process.

本発明の目的を達成するために、例えば、本発明の情報処理装置は、以下の構成を有する。すなわち、アプリケーションを構築する情報処理装置であって、前記アプリケーションを構築するためのデータベース定義からテスト用のデータベースの選択を受け付けるデータベース選択受付手段と、前記アプリケーションを構築するための定義を用いてテストケースを生成するテストケース生成手段と、前記データベース選択受付手段で選択を受け付けたテスト用のデータベースの接続先に接続し、前記テストケース生成手段により生成されたテストケースを用いて前記アプリケーションに係るテストを実行するテスト実行手段を備えることを特徴とする。   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 selection of a test database from a database definition for building the application, and a test case using the definition for building the application A test case generation unit that generates a test data and a connection destination of a test database that has received a selection by the database selection reception unit, and a test related to the application is performed using the test case generated by the test case generation unit Test execution means for executing is provided.

本発明によれば、データベースに接続してテスト工程を実行する場合に、本番環境のデータベースに与える影響を低減する仕組みを提供することができる。   ADVANTAGE OF THE INVENTION According to this invention, when connecting with a database and performing a test process, the mechanism which reduces the influence which it has on the database of a production environment can be provided.

本発明の一実施形態に係るシステムの構成図の一例である。It is an example of the block diagram of the system which concerns on one Embodiment of this invention. 情報処理装置、アプリケーションサーバ、データベースサーバ、アプリケーションクライアント、として適用可能な各ハードウェア構成の一例を示すブロック図である。It is a block diagram which shows an example of each hardware constitutions applicable as an information processing apparatus, an application server, a database server, and an application client. ソフトウェア構成を示すブロック図の一例である。It is an example of a block diagram showing a software configuration. 本発明の一実施形態に係るシステムの構成図である。1 is a configuration diagram of a system according to an embodiment of the present invention. アプリケーション生成のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of an application production | generation. アプリケーションの入出力定義画面及びアプリケーションの実行画面の一例を示す図である。It is a figure which shows an example of the input / output definition screen of an application, and the execution screen of an application. テストケース定義生成のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of test case definition production | generation. テスト実行のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of test execution. テスト実行のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of test execution. テスト実行のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of test execution. テストケース作成メニューの一例を示す図である。It is a figure which shows an example of a test case creation menu. テストケース手順入力画面の一例を示す図である。It is a figure which shows an example of a test case procedure input screen. テストケース作成画面の一例を示す図である。It is a figure which shows an example of a test case creation screen. テスト実行画面の一例を示す図である。It is a figure which shows an example of a test execution screen. テスト結果画面の一例を示す図である。It is a figure which shows an example of a test result screen. テストケース定義情報の一例を示す図である。It is a figure which shows an example of test case definition information. データベース設定画面の一例を示す図である。It is a figure which shows an example of a database setting screen.

以下、本発明の実施の形態を、図面を参照して詳細に説明する。   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 the present invention.

情報処理装置101は、開発者の操作に従って画面レイアウト及びデータベース検索指示などを定義する。情報処理装置101は、アプリケーションのプログラム生成を行う。   The information processing apparatus 101 defines a screen layout, a database search instruction, and the like in accordance with developer operations. The information processing apparatus 101 generates an application program.

なお、本実施形態においては、情報処理装置101で生成するアプリケーションはWebアプリケーションとしたが、これに限定するものではなく、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなど、Web技術による通信を利用するアプリケーションでなくてもよい。   In the present embodiment, the application generated by the information processing apparatus 101 is a Web application. However, the application is not limited to this, and an application or embedded software that operates on an information processing apparatus such as a mobile phone, a smartphone, or a tablet. The application may not be a web technology communication.

また、本実施形態においては、情報処理装置101はアプリケーションのプログラムを生成するとしたが、この方法に限定するものではなく、プログラムを生成することなく、アプリケーションサーバ102やクラウド環境等でアプリケーションが動作する様にデータやファイル等を生成することにより、アプリケーション(の動作環境)を構築する等であってもよい。   In this embodiment, the information processing apparatus 101 generates an application program. However, the present invention is not limited to this method, and the application operates in the application server 102 or a cloud environment without generating a program. Similarly, an application (operating environment) may be constructed by generating data, files, and the like.

アプリケーションサーバ102は、情報処理装置101で生成され配置されたアプリケーションを実行する。また、アプリケーションサーバ102は、データベースサーバ103に接続し、データベースのデータを操作することができる。   The application server 102 executes an application generated and arranged by the information processing apparatus 101. Further, the application server 102 can connect to the database server 103 and operate data in the database.

データベースサーバ103は、生成されたアプリケーションが利用するデータベースである。なお、開発時にも動作確認などのために利用してもよい。また、データベースサーバ103は、情報処理装置101や、アプリケーションサーバ102と同一の装置で構成されていてもよいし、LANなどのネットワーク105内に配置されてもよい。   The database server 103 is a database used by the generated application. Note that it may be used for operation confirmation during development. The database server 103 may be configured by the same apparatus as the information processing apparatus 101 and the application server 102, or may be disposed in a network 105 such as a LAN.

アプリケーションクライアント104は、アプリケーションサーバ102と協調して情報処理装置101で開発したアプリケーションプログラムを動作させる、エンドユーザの操作端末である。この、アプリケーションクライアント104は、携帯端末などの情報処理装置であってもよい。   The application client 104 is an end user operation terminal that operates an application program developed by the information processing apparatus 101 in cooperation with the application server 102. The application client 104 may be an information processing apparatus such as a mobile terminal.

クラウド環境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 information processing apparatus 101. Further, the virtual application server 107 can connect to the virtual database server 108 and operate the data in the database.

クラウド環境106内の仮想データベースサーバ108は、生成されたアプリケーションが利用するデータベースである。なお、開発時にも動作確認などのために利用してもよい。   The virtual database server 108 in the cloud environment 106 is a database used by the generated application. Note that it may be used for operation confirmation during development.

なお、クラウド環境106は動的にスケーラブルかつ仮想化されたリソースを供給することが可能な環境であるとしたが、本実施形態においては、この特徴を備えている必要はなく、クラウド環境106が仮想アプリケーションサーバ107及び仮想データベースサーバ108の動作を提供するのであれば、動的にスケーラブルでなくても、仮想化されたリソースを供給できなくてもよい。   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 showing an example of each hardware configuration applicable as the information processing apparatus 101, application server 102, database server 103, and application client 104 according to the present invention.

図2において、CPU201は、システムバス204に接続される各デバイスを統括的に制御する。   In FIG. 2, the CPU 201 comprehensively controls each device connected to the system bus 204.

また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるオペレーティングシステム(OS)や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。   The ROM 203 or the external memory 211 stores an operating system (OS) that is a control program of the CPU 201 and programs for realizing various functions described later of the information processing apparatus such as each server, client, and device.

RAM202は、CPU201の主メモリ、ワークエリア、一時待避領域等として機能する。   The RAM 202 functions as a main memory, work area, temporary save area, and the like for the CPU 201.

入力コントローラ205は、入力部209からの入力を制御する。この入力部209としては、情報処理装置では、キーボード、マウス等のポインティングデバイス、タッチパネルが挙げられる。   The input controller 205 controls input from the input unit 209. Examples of the input unit 209 include a keyboard, a pointing device such as a mouse, and a touch panel in the information processing apparatus.

なお、入力部209がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。   Note that when the input unit 209 is a touch panel, various instructions can be given by the user pressing (touching with a finger or the like) according to an icon, a cursor, or a button displayed on the touch panel.

また、タッチパネルは、マルチタッチスクリーン等の、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。   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 output controller 206 controls the display of the output unit 210. Examples of the output unit 210 include a CRT and a liquid crystal display. In addition, the display of the notebook-type personal computer integrated with the main body shall also be included. Further, it may be a projector.

外部メモリコントローラ207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ211へのアクセスを制御する。外部メモリ211には、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ211としては、ハードディスク(HD)やフレキシブルディスク(FD)、PCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)、スマートメディア等が挙げられる。   The external memory controller 207 controls access to the external memory 211 that stores a boot program, various applications, font data, user files, edit files, printer drivers, and the like. The external memory 211 stores various tables and parameters for realizing various functions of each server, client, device, and the like. Examples of the external memory 211 include a hard disk (HD), a flexible disk (FD), a compact flash (registered trademark) connected to a PCMCIA card slot via an adapter, and smart media.

なお、CPU201は、例えばRAM202内の表示情報用領域へアウトラインフォント展開(ラスタライズ)処理を実行することにより、出力部210上での表示を可能としている。また、CPU201は、出力部210上の不図示のマウスカーソル等でのユーザ指示を可能とする。   Note that the CPU 201 enables display on the output unit 210 by executing outline font development (rasterization) processing on a display information area in the RAM 202, for example. Further, the CPU 201 enables a user instruction with a mouse cursor (not shown) on the output unit 210.

通信I/Fコントローラ208は、ネットワークを介して外部機器との通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。   The communication I / F controller 208 executes communication control processing with an external device via a network. For example, communication using TCP / IP is possible.

本発明を実現するためのプログラム212は外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。   A program 212 for realizing the present invention is recorded in the external memory 211 and is executed by the CPU 201 by being loaded into the RAM 202 as necessary.

図3は、本発明の実施の形態のソフトウェア構成を示すブロック図の一例である。   FIG. 3 is an example of a block diagram illustrating a software configuration according to the embodiment of this invention.

情報処理装置101は、以下の機能部を備える。   The information processing apparatus 101 includes the following functional units.

定義情報取得部301は、アプリケーションを構築するための定義情報を取得する機能部である。ここで、定義情報は、リポジトリ定義部401に設定された、アプリケーション定義402、入出力定義403、データモデル定義404、ビジネスプロセス定義405、データベース定義406(図4参照)を含む。   The definition information acquisition unit 301 is a functional unit that acquires definition information for building an application. Here, the definition information includes an application definition 402, an input / output definition 403, a data model definition 404, a business process definition 405, and a database definition 406 (see FIG. 4) set in the repository definition unit 401.

テスト実行部302は、定義情報取得部301により取得された定義情報を用いて生成されたテストケースに基づき、アプリケーションに係るテストを実行する機能部である。   The test execution unit 302 is a functional unit that executes a test related to an application based on a test case generated using the definition information acquired by the definition information acquisition unit 301.

テスト実行部302は、定義情報取得部301により取得された定義情報を用いて生成されたテストケースに基づき、アプリケーションに係るテストを実行する機能部である。言い換えると、テスト実行部302は、定義情報取得部301により取得された定義情報を用いて生成されたテストケースに基づき、定義情報が正しく定義されているか否かのテストを実行する機能部であるともいえる。また、テスト実行部302は、情報受付部303により受け付けた情報を用いて、テストを実行する機能部である。   The test execution unit 302 is a functional unit that executes a test related to an application based on a test case generated using the definition information acquired by the definition information acquisition unit 301. In other words, the test execution unit 302 is a functional unit that executes a test to determine whether the definition information is correctly defined based on the test case generated using the definition information acquired by the definition information acquisition unit 301. It can be said. The test execution unit 302 is a functional unit that executes a test using the information received by the information reception unit 303.

情報受付部303は、テスト実行部302により実行されるテストに用いる情報を受け付ける機能部である。情報受付部303は、一態様として、表示制御部310により出力部210で選択可能に表示された各種情報の選択を受け付ける。一例として、情報受付部303は、アプリケーションを構築するためのデータベース定義からテスト用のデータベースの選択を受け付ける。この場合、情報受付部303は、データベース選択受付手段として機能を備える。また、情報受付部303は、テストケース定義の生成のための各種操作(図7を参照)を受け付ける。情報受付部303は、生成されたテストケース定義に基づき、アプリケーションに係るテストの開始を受け付ける。   The information reception unit 303 is a functional unit that receives information used for a test executed by the test execution unit 302. The information reception part 303 receives selection of the various information displayed on the output part 210 so that selection is possible by the display control part 310 as one aspect | mode. As an example, the information reception unit 303 receives selection of a test database from a database definition for constructing an application. In this case, the information receiving unit 303 functions as a database selection receiving unit. The information receiving unit 303 receives various operations (see FIG. 7) for generating a test case definition. The information reception unit 303 receives the start of a test related to the application based on the generated test case definition.

テストケース定義受付部304は、テストケースの定義を受け付ける機能部である。   The test case definition accepting unit 304 is a functional unit that accepts test case definitions.

テストケース生成部305は、テストケース定義受付部304により受け付けた定義に基づき、テストケースを生成する機能部である。テストケース生成部305は、代入値入力受付部306により受け付けた値を項目に対して代入することを含むテストケースを生成する機能部である。テストケース生成部305は、予想値入力受付部307により受け付けた値と項目が持つ値とを比較することを含むテストケースを生成する機能部である。   The test case generation unit 305 is a functional unit that generates a test case based on the definition received by the test case definition reception unit 304. The test case generation unit 305 is a functional unit that generates a test case including substituting the value received by the substitution value input reception unit 306 for the item. The test case generation unit 305 is a functional unit that generates a test case including comparing the value received by the predicted value input reception unit 307 with the value of the item.

代入値入力受付部306は、定義情報取得部301により取得された定義情報に含まれる項目に対して代入する値の入力を受け付ける機能部である。   The substitution value input reception unit 306 is a functional unit that receives an input of a value to be substituted for an item included in the definition information acquired by the definition information acquisition unit 301.

予想値入力受付部307は、定義情報取得部301により取得された定義情報に含まれる項目が持つと予想される値の入力を受け付ける機能部である。   The expected value input receiving unit 307 is a functional unit that receives an input of a value expected to be included in an item included in the definition information acquired by the definition information acquiring unit 301.

テスト成否判定部308は、予想値入力受付部307により受け付けた値と項目が持つ値とを比較した結果に基づいて、テスト実行部302により実行されるテストの成否を判定する機能部である。   The test success / failure determination unit 308 is a functional unit that determines the success / failure of the test executed by the test execution unit 302 based on the result of comparing the value received by the predicted value input reception unit 307 with the value of the item.

アプリケーション構築制御部309は、テスト成否判定部308によりテストの結果に従って、アプリケーションの構築をする/しないを制御する機能部である。   The application construction control unit 309 is a functional unit that controls whether or not the application is constructed according to the test result by the test success / failure judgment unit 308.

表示制御部310は、出力部210(例えば、ディスプレイの画面上の表示)へ表示される内容を制御する機能部である。本実施形態において、表示制御部310は、後述する、図6、図11〜15、図17等のテストケース定義の生成から実行に係る各画面の表示を制御する。また、表示制御部310は、図17で説明するデータベースの選択に関連する各種画面を表示する機能を備える。   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 case definitions shown in FIGS. 6, 11 to 15, and 17, which will be described later. Further, the display control unit 310 has a function of displaying various screens related to database selection described in FIG.

以上で、図3の説明を終了する。   This is the end of the description of FIG.

図4は、情報処理装置101、アプリケーションサーバ102及びアプリケーションクライアント104の構成図である。   FIG. 4 is a configuration diagram of the information processing apparatus 101, the application server 102, and the application client 104.

情報処理装置101は、リポジトリ定義部401及びアプリケーション生成部410を備える。   The information processing apparatus 101 includes a repository definition unit 401 and an application generation unit 410.

情報処理装置101は、アプリケーションを開発する開発者により設定されたリポジトリ定義部401の各定義を用いて、アプリケーション生成部410によりアプリケーションを生成する。   The information processing apparatus 101 generates an application by the application generation unit 410 using each definition of the repository definition unit 401 set by the developer who develops the application.

リポジトリ定義部401には、アプリケーション定義402、入出力定義403、データモデル定義404、ビジネスプロセス定義405、データベース定義406が記憶されている。これら402〜406の定義は、アプリケーション構築ツールを介して、開発者によって入力設定または配置される。   The repository definition unit 401 stores an application definition 402, an input / output definition 403, a data model definition 404, a business process definition 405, and a database definition 406. These definitions of 402 to 406 are input or set by the developer via the application construction tool.

入出力定義403は、アプリケーション画面に配置される各種項目のレイアウトの定義情報を保持する。入出力定義403は、入力項目定義情報及び出力項目定義情報を含む。入力項目定義情報は、生成されたアプリケーションの画面を介して当該アプリケーションのエンドユーザが入力する入力項目を定義した情報である。出力項目定義情報は、生成されたアプリケーションの画面に出力する出力項目を定義した情報である。以降、「入力項目定義情報」及び「出力項目定義情報」をまとめて「入出力項目定義情報」と呼ぶ。   The input / output definition 403 holds definition information of layouts of various items arranged on the application screen. The input / output definition 403 includes input item definition information and output item definition information. The input item definition information is information that defines an input item to be input by the end user of the application via the generated application screen. The output item definition information is information defining output items to be output to the generated application screen. Hereinafter, “input item definition information” and “output item definition information” are collectively referred to as “input / output item definition information”.

なお、本実施形態においては、「入力項目定義情報は、生成されたアプリケーションの画面を介して当該アプリケーションのエンドユーザが入力する入力項目を定義した情報」「出力項目定義情報は、生成されたアプリケーションの画面に出力する出力項目を定義した情報」としたが、これらに限定するものではなく、例えば、画面を有さないバッチや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 data model definition 404 holds definition information of items in the database table. Each item of the input / output definition 403 can be associated with the item of the data model definition 404.

ビジネスプロセス定義405は、アプリケーションにおけるデータを処理するためのロジックの定義情報を保持する。   The business process definition 405 holds logic definition information for processing data in the application.

データベース定義406は、アプリケーションが接続するデータベースに係る情報(データベースサーバ103のIPアドレス、接続ユーザ、接続パスワード等)を定義する。   The database definition 406 defines information related to the database to which the application is connected (IP address of the database server 103, connected user, connection password, etc.).

アプリケーション生成部410は、アプリケーション生成用のリポジトリ定義解析部411を用いてリポジトリ定義部401に記憶されている各定義を解析し、アプリケーションコード生成部412及びソースコードコンパイル部413を介し、コンパイル済Java(登録商標)コード441及びHTML/JSP/JavaScript(登録商標)442を含むアプリケーションを生成する。すなわち、アプリケーション生成部410は、設定された定義を用いて、アプリケーションとして用いられるプログラムを生成する手段の一例である。   The application generation unit 410 analyzes each definition stored in the repository definition unit 401 using the repository definition analysis unit 411 for generating an application, and passes the compiled Java through the application code generation unit 412 and the source code compilation unit 413. An application including (registered trademark) code 441 and HTML / JSP / JavaScript (registered trademark) 442 is generated. In other words, the application generation unit 410 is an example of a unit that generates a program used as an application using a set definition.

リポジトリ定義エディタ部420は、リポジトリ定義参照部421によってリポジトリ定義部401を解析し、テストケース定義407の場合は、テストケース定義エディタ部422を用いて、それ以外の定義の時はそれぞれに対応したその他定義エディタ部423を用いてリポジトリ定義を変更及び参照する。   The repository definition editor unit 420 analyzes the repository definition unit 401 by using the repository definition reference unit 421. In the case of the test case definition 407, the test case definition editor unit 422 is used, and the other definitions correspond to the respective cases. Other definition editor unit 423 is used to change and refer to the repository definition.

データベース定義エディタ部450は、データベース定義を選択可能な画面の生成・編集を行う機能部である。データベース定義エディタ部450は、データベース一覧表示部451とデータベース定義選択受付部452を備える。データベース一覧表示部451は、図17におけるデータベース一覧表示1701を表示する機能部である。データベース定義選択受付部452は、テスト用あるいはデフォルト(本番用)で用いるデータベースの選択を受け付ける。つまり、データベース一覧表示部451は、データベース定義選択受付部452で受け付けた内容に従いその表示を編集する。なお、これらの表示制御は、表示制御部310により行われる。   The database definition editor unit 450 is a functional unit that generates and edits a screen from which a database definition can be selected. The database definition editor unit 450 includes a database list display unit 451 and a database definition selection reception unit 452. The database list display unit 451 is a functional unit that displays the database list display 1701 in FIG. The database definition selection accepting unit 452 accepts selection of a database used for testing or default (for production). That is, the database list display unit 451 edits the display according to the contents received by the database definition selection receiving unit 452. Note that these display controls are performed by the display control unit 310.

テスト実行部302は、テストケース定義受信部431によってテストケース定義407を取得し、テストケース定義解釈部433を用いてその内容を解析する。テスト実行部(インタープリタ)434は、テストケース定義解釈部433を用いて、アプリケーションコードアクセス部436から、アプリケーションコードをテスト実行する。   The test execution unit 302 acquires the test case definition 407 by using the test case definition receiving unit 431 and analyzes the contents using the test case definition interpretation unit 433. The test execution unit (interpreter) 434 uses the test case definition interpretation unit 433 to perform test execution of the application code from the application code access unit 436.

テスト実行部(インタープリタ)434は、テストケース定義解釈部433を用いて解釈した内容からテスト実行準備部432を用いてテストの事前処理を行い、アプリケーションコードアクセス部436を用いてアプリケーションコードをテスト実行する。   The test execution unit (interpreter) 434 performs test pre-processing using the test execution preparation unit 432 from the content interpreted using the test case definition interpretation unit 433, and performs test execution of the application code using the application code access unit 436. To do.

テストがすべて完了すると、テスト実行部(インタープリタ)435はテスト終了処理部437を用いてテスト終了処理を行う。   When all the tests are completed, the test execution unit (interpreter) 435 uses the test end processing unit 437 to perform test end processing.

最後に、テスト結果取得部435を用いて、テスト実行の結果を取得し、テスト結果表示部438に表示する。   Finally, the test execution result is acquired using the test result acquisition unit 435 and displayed on the test result display unit 438.

以上で、図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の各定義を管理してもよいし、クラウドなどネットワーク上の記憶装置を用いて管理する等としてもよい。   The information processing apparatus 101 manages each definition of the repository definition unit 401 as a file using the directory structure. In the present embodiment, each definition of the repository definition unit 401 is managed as a file using a directory structure. However, the present invention is not limited to this. For example, each definition of the repository definition unit 401 using a database is used. May be managed, or may be managed using a storage device on a network such as a cloud.

アプリケーション生成のフローチャートについて説明する。   An application generation flowchart will be described.

ステップS501において、情報処理装置101は、アプリケーション定義402の設定を受け付ける。具体的には、アプリケーション構築ツールの画面を介して、アプリケーション開発者から入出力定義403、データモデル定義404、ビジネスプロセス定義405及びデータベース定義406の設定を受け付ける。   In step S <b> 501, the information processing apparatus 101 receives a setting of the application definition 402. Specifically, settings of the input / output definition 403, the data model definition 404, the business process definition 405, and the database definition 406 are received from the application developer via the screen of the application construction tool.

ステップS501にて、受け付けたアプリケーション定義402、入出力定義403、データモデル定義404、ビジネスプロセス定義405及びデータベース定義406の設定は、リポジトリ定義部401にXMLファイル形式で記憶する。   In step S501, the received application definition 402, input / output definition 403, data model definition 404, business process definition 405, and database definition 406 settings are stored in the repository definition unit 401 in an XML file format.

ステップS502において、情報処理装置101は、アプリケーション生成の指示を受け付ける。   In step S502, the information processing apparatus 101 receives an application generation instruction.

ステップS503において、情報処理装置101は、リポジトリ定義部401からアプリケーション定義402を取得する。リポジトリ定義解析部411は、読み込んだ定義を解析したうえでROM203に記憶しておき、解析された定義は各生成部から適宜参照される。   In step S <b> 503, the information processing apparatus 101 acquires the application definition 402 from the repository definition unit 401. The repository definition analysis unit 411 analyzes the read definition and stores it in the ROM 203, and the analyzed definition is appropriately referred to by each generation unit.

ステップS504において、情報処理装置101は、リポジトリ定義部401からデータモデル定義404を取得する。   In step S <b> 504, the information processing apparatus 101 acquires the data model definition 404 from the repository definition unit 401.

ステップS505において、情報処理装置101は、リポジトリ定義部401から入出力定義403を取得する。   In step S505, the information processing apparatus 101 acquires the input / output definition 403 from the repository definition unit 401.

ステップS506において、情報処理装置101は、リポジトリ定義部401からビジネスプロセス定義405を取得する。   In step S <b> 506, the information processing apparatus 101 acquires the business process definition 405 from the repository definition unit 401.

ステップS507において、情報処理装置101は、リポジトリ定義部401からデータベース定義406を取得する。具体的には、情報処理装置101は、データベース定義406のうち、データベース設定画面1710においてテスト用の接続先のデータベースと、デフォルトの接続先のデータベースとして設定されたそれぞれのデータベース定義を取得する。なお、データベースの設定方法については、図17を用いて詳細に説明する。   In step S507, the information processing apparatus 101 acquires the database definition 406 from the repository definition unit 401. Specifically, the information processing apparatus 101 acquires, from the database definition 406, each database definition set as a test connection destination database and a default connection destination database on the database setting screen 1710. The database setting method will be described in detail with reference to FIG.

ステップS501〜S507は、アプリケーションを構築するための定義情報を取得する処理の一例を示すステップである。   Steps S501 to S507 are steps showing an example of processing for acquiring definition information for building an application.

ステップS508において、情報処理装置101は、アプリケーション生成部410を用いて、Webアプリケーションに用いるプログラムを生成する。すなわち、ステップS508は、アプリケーションのプログラムを生成する処理の一例を示すステップである。また、ステップS508は、アプリケーションを構築する処理の一例を示すステップである。ここで、情報処理装置101は、ステップS507において取得したそれぞれのデータベース定義に関する接続用設定ファイルを作成する。ここで、接続用設定ファイルとは、取得したデータベース定義の各情報に基づいて、JDBCの書式、プロトコル、ユーザID等をまとめたファイルである。   In step S508, the information processing apparatus 101 uses the application generation unit 410 to generate a program used for the Web application. That is, step S508 is a step showing an example of processing for generating an application program. Step S508 is a step showing an example of processing for building an application. Here, the information processing apparatus 101 creates a connection setting file related to each database definition acquired in step S507. Here, the connection setting file is a file in which the format, protocol, user ID, etc. of the JDBC are compiled based on each information of the acquired database definition.

ステップS509において、情報処理装置101は、テストケース定義を生成する(詳細は、図7の説明にて後述する)。すなわち、ステップS509は、取得された定義情報を用いて、テストケースを生成する処理の一例を示すステップである。また、ステップS509は、受け付けた定義に基づき、テストケースを生成する処理の一例を示すステップである。   In step S509, the information processing apparatus 101 generates a test case definition (details will be described later with reference to FIG. 7). That is, step S509 is a step showing an example of processing for generating a test case using the acquired definition information. Step S509 is a step showing an example of processing for generating a test case based on the accepted definition.

ステップS510において、情報処理装置101は、ステップS509にて生成したテストケース定義に用いてテストを実行する(詳細は、図8の説明にて後述する)。すなわち、ステップS510は、定義情報を用いて生成されたテストケースに基づき、アプリケーションに係るテストを実行する処理の一例を示すステップである。また、ステップS510は、定義情報を用いて生成されたテストケースに基づき、定義情報が正しく定義されているか否かテストを実行する処理の一例を示すステップである。   In step S510, the information processing apparatus 101 executes a test using the test case definition generated in step S509 (details will be described later with reference to FIG. 8). That is, step S510 is a step showing an example of processing for executing a test related to an application based on a test case generated using the definition information. Step S510 is a step showing an example of a process for executing a test to determine whether the definition information is correctly defined based on the test case generated using the definition information.

この段階ではアプリケーションをアプリケーションサーバ102に配置(デプロイ)していないため、以上により、アプリケーションサーバ102を用意することなく、テストを実行することができる。   At this stage, since the application is not arranged (deployed) on the application server 102, the test can be executed without preparing the application server 102 as described above.

また、以上により、アプリケーションアーカイブファイルの生成、アプリケーションサーバ102への転送、デプロイをすることなく、テストを実行することができるため、テストにかかる時間を削減することができ、開発とテストをシームレスに何度も繰り返すことができる。   In addition, as described above, the test can be executed without generating the application archive file, transferring to the application server 102, and deploying, so the time required for the test can be reduced, and the development and the test can be seamlessly performed. It can be repeated many times.

また、以上により、情報処理装置101だけでアプリケーションサーバ102にて動作するアプリケーションのテストを実行することができるため、複数人の開発者が同時に並行してテストを行うことができる。   In addition, as described above, a test of an application running on the application server 102 can be executed only by the information processing apparatus 101, so that a plurality of developers can simultaneously test in parallel.

ステップS511において、情報処理装置101は、ステップS510にて実行したテストにおける失敗したテストケースの有無を判定し、有る場合は本フローチャートを終了し、無い場合はステップS512に進む。すなわち、ステップS511は、テストの結果に従って、アプリケーションの構築をする/しないを制御する処理の一例を示すステップである。   In step S511, the information processing apparatus 101 determines whether there is a failed test case in the test executed in step S510. If there is, the process ends the flowchart, and if not, the process proceeds to step S512. That is, step S511 is a step showing an example of processing for controlling whether or not to build an application according to the result of the test.

ステップS512において、情報処理装置101は、ステップS508にて生成したプログラムをアプリケーションサーバ102に配置(デプロイ)する。   In step S512, the information processing apparatus 101 arranges (deploys) the program generated in step S508 on the application server 102.

これにより、失敗テストが無い状態のアプリケーションをサーバに構築する仕組みを提供することができる。よって、テストに時間がかかってしまう場合、夜間にテストを実行させ、テストが成功した場合は、続けてアプリケーションサーバ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 application server 102, thus eliminating the trouble of the application administrator and the operator. be able to.

また、失敗テストが有る状態のアプリケーションはサーバに構築することが無くなるため、不具合を含んだアプリケーションをリリースすることがなくなり、アプリケーションが不整合なデータを出力するといったこともなくなるため、結果として、信頼性の高いアプリケーションを運用することができる。   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.

図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 information processing apparatus 101 receives a test case definition generation instruction from the user. Specifically, a press of a new test case creation menu 1101 (FIG. 11) is accepted.

ステップS702において、情報処理装置101は、外部メモリ211にアプリケーション定義402が作成済か否かを判定する。作成済の場合はステップS703に進み、未作成の場合は本フローチャートを終了する。   In step S <b> 702, the information processing apparatus 101 determines whether the application definition 402 has been created in the external memory 211. If it has been created, the process proceeds to step S703. If it has not been created, this flowchart is terminated.

ステップS703において、情報処理装置101は、新規テストケース作成ダイアログ1102(図11)を表示し、新規のテストケースの生成に必要な「コード名」「名前」「対象アプリケーション1103」の入力を受け付け、受け付けた情報に基づき、外部メモリ211にテストケース定義407を新規に作成する。   In step S <b> 703, the information processing apparatus 101 displays a new test case creation dialog 1102 (FIG. 11), accepts inputs of “code name”, “name”, and “target application 1103” necessary for generating a new test case, Based on the received information, a new test case definition 407 is created in the external memory 211.

ステップS704において、情報処理装置101は、ステップS703にて作成されたテストケースのテスト手順を入力するためのテスト手順入力画面1201(図12)表示する。この時点では、テストケースにテスト手順が登録されていない状態であるため、テスト手順入力画面1201の「テスト手順」タブを選択した場合、テスト手順を設定するエディタ部には何も表示されていない。   In step S704, the information processing apparatus 101 displays a test procedure input screen 1201 (FIG. 12) for inputting the test procedure of the test case created in step S703. At this point, since the test procedure is not registered in the test case, when the “Test Procedure” tab of the test procedure input screen 1201 is selected, nothing is displayed in the editor section for setting the test procedure. .

ステップS705において、情報処理装置101は、ステップS703にて入力を受け付けた「対象アプリケーション1103」に属す入出力定義403を外部メモリ211から取得する。   In step S <b> 705, the information processing apparatus 101 acquires, from the external memory 211, the input / output definition 403 belonging to the “target application 1103” that has received the input in step S <b> 703.

ステップS706において、情報処理装置101は、登録するテスト手順の数だけステップS707〜S712を繰り返す。   In step S706, the information processing apparatus 101 repeats steps S707 to S712 for the number of test procedures to be registered.

ステップS707において、情報処理装置101は、テスト実行時に疑似的に行う命令の選択を受け付ける。命令の種類は、例えば、「画面表示」「行追加」「項目値入力」「項目値検証」等がある。   In step S <b> 707, the information processing apparatus 101 accepts a pseudo instruction selection performed during test execution. Examples of command types include “screen display”, “add row”, “item value input”, “item value verification”, and the like.

通常、スクラッチ開発によって構築されたアプリケーションのテストは、テスト要員による「画面表示」「行追加」「項目値入力」等の操作及び目視による「項目値検証」を必要とするが、本実施形態におけるテストは、テスト要員が行う操作及び目視をステップ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 information processing apparatus 101 displays the input / output definition 403 belonging to the “target application 1103” as options based on the input / output definition 403 acquired in step S705 (1203 in FIG. 12).

ステップS709において、情報処理装置101は、ステップS708にて表示した選択肢から、テスト実行に用いる入出力定義403の選択を受け付ける。   In step S709, the information processing apparatus 101 receives selection of the input / output definition 403 used for test execution from the options displayed in step S708.

ステップS710において、情報処理装置101は、ステップS709にて選択を受け付けた入出力定義403に属す入出力項目を選択肢として表示する(図12の1204)。例えば、ステップS707にて、命令に「項目値入力」が選択された場合は、入出力項目のうち値を入力できる項目だけに絞った選択肢を表示する。   In step S710, the information processing apparatus 101 displays the input / output items belonging to the input / output definition 403 that has been selected in step S709 as options (1204 in FIG. 12). For example, if “input item value” is selected as the command in step S707, options that are narrowed down only to items for which values can be input are displayed.

ステップS711において、情報処理装置101は、ステップS710にて表示した選択肢から、テスト実行に用いる入出力項目の選択を受け付ける。   In step S711, the information processing apparatus 101 accepts selection of input / output items used for test execution from the options displayed in step S710.

ステップS712において、情報処理装置101は、テストの命令実行時に用いる入出力項目への引数の入力を受け付ける。   In step S712, the information processing apparatus 101 receives an input of an argument to an input / output item used when executing a test instruction.

例えば、図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 information processing apparatus 101 generates a test case definition 407 as shown in FIG. 16 based on the test case procedure (for example, 1301 in FIG. 13) created by repeating steps S706 to S712, and the external memory 211.

具体的には、テストケース手順1301を1つずつ、テストケース定義407の要素<autotest−step>に変換することにより、テストケース定義407を生成する。同様に、テストケース手順1301の「命令」はテストケース定義407の要素<command>に、「入出力」は<object_01>に、「入出力項目」は<object_02>に、「行番号」は<object_03>に、「引数」は<argument>にそれぞれ変換する。   Specifically, a test case definition 407 is generated by converting the test case procedure 1301 one by one into an element <autotest-step> of the test case definition 407. Similarly, the “instruction” of the test case procedure 1301 is the element <command> of the test case definition 407, “input / output” is <object_01>, “input / output item” is <object_02>, and “line number” is < The “argument” is converted to <argument> in object_03>.

なお、本実施形態においては、テストケース定義407を図16のようなXMLファイルとしたが、XMLファイルに限定するものではなく、その他の形式のファイルとして生成したり、データベースに記憶させたり、ファイルやデータベース以外の情報にしたりしてもよい。   In this embodiment, the test case definition 407 is an XML file as shown in FIG. 16. However, the test case definition 407 is not limited to an XML file, but may be generated as a file of another format, stored in a database, Or information other than the database.

すなわち、ステップ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は、テスト実行指示を受け付ける。具体的には、実行メニュー1401(図14)の押下を受け付ける。   In step S801, the information processing apparatus 101 receives a test execution instruction. Specifically, the pressing of the execution menu 1401 (FIG. 14) is accepted.

ステップS802において、情報処理装置101は、テスト実行対象のテストケース定義に係る対象アプリケーション1103(図11)のアプリケーションコード440が作成済か否かを判定する。作成済の場合はステップS803に進み、未作成の場合は本フローチャートを終了する。   In step S802, the information processing apparatus 101 determines whether the application code 440 of the target application 1103 (FIG. 11) related to the test case definition to be tested is created. If it has been created, the process proceeds to step S803. If it has not been created, this flowchart is terminated.

ステップS803において、情報処理装置101は、テスト実行部(インタープリタ)434とテストケース定義解釈部433を用いて、ステップS801で実行メニュー1401の押下時に選択されていたテストケースに対応するテストケース定義407を外部メモリ211から取得する。   In step S803, the information processing apparatus 101 uses the test execution unit (interpreter) 434 and the test case definition interpretation unit 433, and the test case definition 407 corresponding to the test case selected when the execution menu 1401 is pressed in step S801. Is obtained from the external memory 211.

ステップS804において、情報処理装置101は、テスト実行部(インタープリタ)434とテストケース定義解釈部433を用いて、ステップS803にて取得したテストケース定義407に含まれるテストケース数及びテスト手順数をカウントする。   In step S804, the information processing apparatus 101 uses the test execution unit (interpreter) 434 and the test case definition interpretation unit 433 to count the number of test cases and the number of test procedures included in the test case definition 407 acquired in step S803. To do.

ステップS805において、情報処理装置101は、テストビュー1403(図14)を表示する。   In step S805, the information processing apparatus 101 displays the test view 1403 (FIG. 14).

ステップS806において、情報処理装置101は、テスト進捗バー1404(図14)を空の状態で表示する。   In step S806, the information processing apparatus 101 displays the test progress bar 1404 (FIG. 14) in an empty state.

ステップS807において、情報処理装置101は、テスト情報のテストツリーペイン1406(図14)に、ステップS803及びステップS804でテスト対象としたテストケース名(例:ユーザ登録フォームチェック、商品登録フォームチェック)及びテスト手順(1.画面表示、2.行追加、3.…)を表示する。   In step S807, the information processing apparatus 101 displays, in the test information test tree pane 1406 (FIG. 14), the name of the test case (eg, user registration form check, product registration form check) to be tested in steps S803 and S804. Display the test procedure (1. Screen display, 2. Add row, 3 ....).

ステップS808において、情報処理装置101は、テスト情報の詳細ペイン1407(図14)にメッセージ「実行中…」を表示する。   In step S808, the information processing apparatus 101 displays the message “executing ...” in the test information details pane 1407 (FIG. 14).

ステップS809において、情報処理装置101は、テスト実行準備部432を用いて、テスト実行前準備を行う。具体的には、テスト実行前準備では、セッション、クッキー及びスレッド等の生成を行い、ユーザが実際にブラウザを用いてアプリケーションを実行した場合と同様のアプリケーションデータを生成する。これにより、ブラウザ、エンドユーザ操作及びアプリケーションサーバ等を用いずに、アプリケーション構築ツールにおいて、テストを効率的に行うことができるようになる。   In step S <b> 809, the information processing apparatus 101 uses the test execution preparation unit 432 to prepare for test execution. Specifically, in the preparation before the test execution, a session, a cookie, a thread, and the like are generated, and application data similar to that when the user actually executes the application using the browser is generated. As a result, the application construction tool can efficiently perform a test without using a browser, an end user operation, an application server, and the like.

ステップS810において、情報処理装置101は、テスト実行の際の接続先データベースを選択する。本実施形態において、情報処理装置101は、S509で作成した設定ファイルに基づき接続先のデータベースを設定する。具体的には、情報処理装置101は、テスト用の接続先のデータベースの設定ファイルが作成されていれば、当該設定ファイルで定められたデータベースを接続先とする。一方で、情報処理装置101は、テスト実行の際の接続先のデータベースの設定ファイルが作成されていない場合には、デフォルトのデータベースを接続先とする。このようにして、情報処理装置101は、テスト実行の際のデータベースの接続先を本番環境のデータベースと異ならせることが可能となる。つまり、情報処理装置101は、テストが実行された場合には、テスト用のデータベースに接続するように接続先を選択制御しているとも言える。また、情報処理装置101は、本番環境として実行するアプリケーションが実行された場合には、デフォルトのデータベースを接続先として選択することは言うまでもない。つまり、情報処理装置は、テストが実行されたか本番環境で実行されるかをトリガとして、接続するデータベースを選択的に切り替えている。   In step S810, the information processing apparatus 101 selects a connection destination database for test execution. In the present embodiment, the information processing apparatus 101 sets a connection destination database based on the setting file created in S509. Specifically, if a test connection destination database setting file has been created, the information processing apparatus 101 uses the database defined by the setting file as the connection destination. On the other hand, the information processing apparatus 101 sets the default database as the connection destination when the connection destination database setting file for the test execution has not been created. In this way, the information processing apparatus 101 can make the connection destination of the database at the time of test execution different from the database in the production environment. That is, it can be said that the information processing apparatus 101 selects and controls the connection destination so as to connect to the test database when the test is executed. It goes without saying that the information processing apparatus 101 selects a default database as a connection destination when an application to be executed as a production environment is executed. In other words, the information processing apparatus selectively switches the database to be connected, triggered by whether the test is executed or executed in the production environment.

ステップS901において、情報処理装置101は、テスト実行対象のテストケースの分だけ、ステップS902〜S1001を繰り返す。   In step S901, the information processing apparatus 101 repeats steps S902 to S1001 for the number of test cases to be tested.

ステップS902において、情報処理装置101は、テスト実行対象のテストケースのテスト手順の分だけ、ステップS903〜S915、S921又はS925を繰り返す。   In step S902, the information processing apparatus 101 repeats steps S903 to S915, S921 or S925 for the test procedure of the test case to be tested.

ステップS903において、情報処理装置101は、強制終了ボタン1405(図14)の押下を受け付けたか否かを判断し、押下された場合はステップS904へ進み、押下されていない場合はステップS905へ進む。   In step S903, the information processing apparatus 101 determines whether or not the pressing of the forcible termination button 1405 (FIG. 14) has been accepted. If it is pressed, the process proceeds to step S904, and if not, the process proceeds to step S905.

ステップS904において、情報処理装置101は、テスト進捗バー1404を灰色100%で更新し、未実行のテストケース又はテスト手順がある場合であっても中断し、本フローチャートを終了する。   In step S904, the information processing apparatus 101 updates the test progress bar 1404 with gray 100%, interrupts even if there is an unexecuted test case or test procedure, and ends this flowchart.

ステップS905において、情報処理装置101は、テストケース定義解釈部433を用いて、テスト手順情報1203を取得する。   In step S <b> 905, the information processing apparatus 101 acquires test procedure information 1203 using the test case definition interpretation unit 433.

ステップS906において、情報処理装置101は、テスト手順情報のテスト命令が入力系か否かを判定し、入力系の場合はステップS907へ進み、入力系でない場合はステップS908へ進む。   In step S906, the information processing apparatus 101 determines whether the test instruction of the test procedure information is an input system. If the test instruction is an input system, the process proceeds to step S907. If not, the process proceeds to step S908.

ステップS907において、情報処理装置101は、アプリケーションコードアクセス部436を用いて、生成済のアプリケーションコード440へ疑似的に値の入力を実行する。その後、アプリケーションコードアクセス部436を用いて、アプリケーションコード440から実行結果を受け取り、テスト結果取得部435を用いてテスト結果を得る。すなわち、ステップS907は、ステップS712にて受け付けた情報を用いて、テストを実行する処理の一例を示すステップである。   In step S <b> 907, the information processing apparatus 101 uses the application code access unit 436 to execute a pseudo value input to the generated application code 440. Thereafter, the application code access unit 436 is used to receive the execution result from the application code 440, and the test result acquisition unit 435 is used to obtain the test result. That is, step S907 is a step showing an example of a process for executing a test using the information received in step S712.

ステップS908において、情報処理装置101は、テスト手順情報のテスト命令が実行系か否かを判定し、実行系の場合はステップS909へ進み、実行系でない場合はステップS910へ進む。   In step S908, the information processing apparatus 101 determines whether the test instruction in the test procedure information is an execution system. If the test instruction is an execution system, the process proceeds to step S909. If the test instruction is not an execution system, the process proceeds to step S910.

ステップS909において、情報処理装置101は、アプリケーションコードアクセス部436を用いて、生成済のアプリケーションコード440へ疑似的にアクションを実行するリクエストを送る。その後、アプリケーションコードアクセス部436を用いて、アプリケーションコード440から実行結果を受け取り、テスト結果取得部435を用いてテスト結果を得る。   In step S909, the information processing apparatus 101 uses the application code access unit 436 to send a request to execute a pseudo action to the generated application code 440. Thereafter, the application code access unit 436 is used to receive the execution result from the application code 440, and the test result acquisition unit 435 is used to obtain the test result.

ステップS910において、情報処理装置101は、アプリケーションコードアクセス部436を用いて、生成済のアプリケーションコード440から検証対象の情報を取得する。   In step S <b> 910, the information processing apparatus 101 acquires information to be verified from the generated application code 440 using the application code access unit 436.

ステップS911において、情報処理装置101は、検証対象の情報(検証対象が定義情報に含まれる項目である場合、当該項目に係る情報(例;当該項目が持つ値や属性値))が条件(例;ステップS712にて入力を受け付けた引数の値)に合致するか否かを判定し、検証が成功(条件に合致する)の場合はステップS916へ進み、失敗(条件に合致しない)の場合はステップS912へ進む。   In step S911, the information processing apparatus 101 determines that the information to be verified (when the verification target is an item included in the definition information, information related to the item (for example, a value or attribute value of the item)) is a condition (for example, The value of the argument received in step S712) is determined. If the verification is successful (matches the condition), the process proceeds to step S916. If the verification is failed (the condition is not met), Proceed to step S912.

例えば、図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 information processing apparatus 101 stores the status of the test procedure in the RAM 202 as “failure”.

ステップS913において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、検証失敗数を更新する(図15の1503)。   In step S913, the information processing apparatus 101 updates the number of verification failures by using the test result acquisition unit 435 and the test result display unit 438 (1503 in FIG. 15).

ステップS914において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、テスト手順数を更新する(図15の1502)。   In step S914, the information processing apparatus 101 updates the number of test procedures using the test result acquisition unit 435 and the test result display unit 438 (1502 in FIG. 15).

ステップS915において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、進捗バーを赤色で更新する(図15の1505)。   In step S915, the information processing apparatus 101 updates the progress bar in red using the test result acquisition unit 435 and the test result display unit 438 (1505 in FIG. 15).

ステップS916において、情報処理装置101は、アプリケーションエラーが発生していないことを確認する。発生していなければステップS922へ進み、エラーが発生している場合は、ステップS917へ進む。   In step S916, the information processing apparatus 101 confirms that no application error has occurred. If no error has occurred, the process proceeds to step S922. If an error has occurred, the process proceeds to step S917.

ステップS917において、情報処理装置101は、テスト手順のステータスを“テスト失敗”としてRAM202に記憶する。   In step S917, the information processing apparatus 101 stores the test procedure status in the RAM 202 as “test failure”.

ステップS918において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、テスト失敗数を更新する(図15の1504)。   In step S918, the information processing apparatus 101 updates the number of test failures using the test result acquisition unit 435 and the test result display unit 438 (1504 in FIG. 15).

ステップS919において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、テスト手順数を更新する(図15の1502)。   In step S919, the information processing apparatus 101 uses the test result acquisition unit 435 and the test result display unit 438 to update the number of test procedures (1502 in FIG. 15).

ステップS920において、情報処理装置101は、テスト結果取得部435及びテスト結果表示部438を用いて、進捗バーを赤色で更新する(図15の1505)。   In step S920, the information processing apparatus 101 updates the progress bar in red using the test result acquisition unit 435 and the test result display unit 438 (1505 in FIG. 15).

ステップS921において、情報処理装置101は、テスト結果表示部438を用いて、テストケース数を更新する(図15の1501)。その後、未実施のテスト手順が実行中のテストケースに含まれている場合であっても、それらの実行はせず、次に実行予定のテストケースを実行する。ステップS902に戻る。   In step S921, the information processing apparatus 101 updates the number of test cases using the test result display unit 438 (1501 in FIG. 15). Thereafter, even if an unexecuted test procedure is included in the test case that is being executed, the test case that is scheduled to be executed next is executed without being executed. The process returns to step S902.

ステップS922において、情報処理装置101は、テスト手順のステータスを“成功”として登録する(図15の1507)。   In step S922, the information processing apparatus 101 registers the status of the test procedure as “success” (1507 in FIG. 15).

ステップS923において、情報処理装置101は、テスト結果表示部438を用いて、テスト手順数を更新する(図15の1502)。   In step S923, the information processing apparatus 101 updates the number of test procedures using the test result display unit 438 (1502 in FIG. 15).

ステップS924において、情報処理装置101は、これまでのテスト手順のステータスにテスト失敗及び検証失敗の両方が0件であるか否かを判定し、正の場合はステップS925に進み、偽の場合はステップS925を行わない。   In step S924, the information processing apparatus 101 determines whether the status of the test procedure so far is zero for both test failure and verification failure, and proceeds to step S925 if positive and proceeds to false if false. Step S925 is not performed.

ステップS1001において、情報処理装置101は、テスト結果表示部438を用いて、テストケース数を更新する(図15の1501)。   In step S1001, the information processing apparatus 101 updates the number of test cases using the test result display unit 438 (1501 in FIG. 15).

ステップS1002において、情報処理装置101は、テスト終了処理部437を用いて、テスト実行を終了する。具体的には、テスト実行終了処理では、ステップS809にて生成したセッション、クッキー及びスレッド等をクローズする。   In step S <b> 1002, the information processing apparatus 101 ends the test execution using the test end processing unit 437. Specifically, in the test execution end process, the session, cookie, thread, and the like generated in step S809 are closed.

ステップS1003において、情報処理装置101は、テスト結果表示部438を用いて、テスト実行時間を更新する(図15の1506)。   In step S1003, the information processing apparatus 101 updates the test execution time using the test result display unit 438 (1506 in FIG. 15).

ステップS1004において、情報処理装置101は、テスト結果取得部435とテスト結果表示部438を用いて、テスト中に出力されるログをアプリケーションログビューに表示する(図15の1509)。   In step S1004, the information processing apparatus 101 displays the log output during the test in the application log view using the test result acquisition unit 435 and the test result display unit 438 (1509 in FIG. 15).

以上により、テスト対象のアプリケーションが動作可能な状態でなくても、アプリケーション構築ツールにおいて、テスト対象の定義についてのみテストを行うことができるため、テストを効率的に行うことができるようになる。   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を用いて、データベース設定画面について説明する。図17におけるデータベース設定画面1700は、テスト用のデータベースが設定される前の画面である。図17におけるデータベース設定画面1710は、テスト用のデータベースが設定された後の画面である。なお、ここではデータベースへの接続方式がJDBCの場合について説明するがこれに限られるものではない。   Next, the database setting screen will be described with reference to FIG. A database setting screen 1700 in FIG. 17 is a screen before a test database is set. A database setting screen 1710 in FIG. 17 is a screen after the test database is set. Here, the case where the database connection method is JDBC is described, but the present invention is not limited to this.

データベース設定画面1700は、データベース定義406で記憶されるデータベースの情報を一覧で表示する画面である。データベース設定画面1700は、データベース一覧表示1701と、データベース1702と、識別表示1703とを少なくとも含んでいる。データベース一覧表示1701は、行単位でデータベースの情報を示し、列単位でデータベースを識別するための各項目を示している。ここで、各項目には、コード、名前、接続URL等の識別情報を含む。更に、各項目には、接続先データベース名、ユーザID、パスワード等のユーザ識別情報等が含まれる。データベース1702は、1行分(1レコードともいう)の情報であり、1のデータベースの情報セットを示す。識別表示1703は、デフォルトの接続先のデータベースがどの行のデータベースかを示す表示である。デフォルトの情報とは、構築される本番用のアプリケーションが接続されるデータベースである。情報処理装置101は、データベース設定画面1700で所定の操作を行うことによりコンテキストメニューを表示させ、当該コンテキストメニュー上にデフォルト設定受付部1704とテスト用のデータベース受付部1705を表示させる。   The database setting screen 1700 is a screen that displays a list of database information stored in the database definition 406. The database setting screen 1700 includes at least a database list display 1701, a database 1702, and an identification display 1703. A database list display 1701 shows database information in units of rows, and shows items for identifying databases in units of columns. Here, each item includes identification information such as a code, a name, and a connection URL. Further, each item includes user identification information such as a connection destination database name, a user ID, and a password. The database 1702 is information for one row (also referred to as one record), and indicates an information set of one database. The identification display 1703 is a display indicating which row the database of the default connection destination is. The default information is a database to which a production application to be constructed is connected. The information processing apparatus 101 displays a context menu by performing a predetermined operation on the database setting screen 1700, and displays a default setting reception unit 1704 and a test database reception unit 1705 on the context menu.

情報処理装置101は、データベースのレコードを選択した際に、デフォルト設定受付部1704の選択を受け付けると、当該選択されたレコードをデフォルトの接続先として設定する。情報処理装置101は、データベースのレコードを選択した際に、テスト用のデータベース受付部1705の選択を受け付けると、当該選択されたレコードのデータベースをテスト用の接続先として設定する。   When the information processing apparatus 101 receives a selection from the default setting reception unit 1704 when selecting a record in the database, the information processing apparatus 101 sets the selected record as a default connection destination. When the information processing apparatus 101 selects a database record and receives a selection from the test database receiving unit 1705, the information processing apparatus 101 sets the database of the selected record as a test connection destination.

データベース設定画面1710は、データベース設定画面1700において、テスト用の接続先のデータベースと、デフォルトの接続先のデータベースとが設定された後の画面である。ここで、識別表示1711は、テストに用いられるデータベースがどの行のデータベースかを示す表示である。そして、データベース設定画面1710は、テスト用に用いるデータベースとデフォルトの接続先のデータベースを識別可能に表示することができる。ここで、デフォルトの接続先のデータベースは、テスト用とは異なる用途で用いるデータベースであり、実際に使用するアプリケーションを接続するためのものである。   The database setting screen 1710 is a screen after the connection destination database for testing and the default connection destination database are set in the database setting screen 1700. Here, the identification display 1711 is a display indicating which row of the database is used for the test. The database setting screen 1710 can display a database used for testing and a default connection destination database in an identifiable manner. Here, the default connection destination database is a database used for a purpose different from that for testing, and is for connecting an application to be actually used.

なお、上述の実施形態のS810によれば、テスト実行がされたか否かでデータベースの接続先を設定しているがこれに限られるものではない。例えば、情報処理装置101は、アクセス方法に応じて、接続先のデータベースを切り替えてもよい。以下、具体的に説明する。情報処理装置101は、ブラウザからアクセスする場合には、本番環境のデータベースに接続する。一方で、情報処理装置101は、テストドライバからアクセスする場合には、テスト用のデータベースに接続する。その結果、情報処理装置101は、アクセス方法によって、接続するデータベースを設定した1つのアプリケーションが生成される。   According to S810 of the above-described embodiment, the database connection destination is set depending on whether or not the test is executed, but the present invention is not limited to this. For example, the information processing apparatus 101 may switch the connection destination database according to the access method. This will be specifically described below. When accessing from the browser, the information processing apparatus 101 connects to the production environment database. On the other hand, when accessing from a test driver, the information processing apparatus 101 connects to a test database. As a result, the information processing apparatus 101 generates one application in which a database to be connected is set by the access method.

以上、上述の実施形態によれば、情報処理装置は、アプリケーションを構築する又はプログラムを生成するために設定した定義情報が正しく定義されているかについて、テストを行うことができる。つまり、これにより、アプリケーション構築ツールにおいて、テスト対象を定義情報に絞ったテスト行うことができるため、テストを効率的に行うことができるようになる。   As described above, according to the above-described embodiment, the information processing apparatus can test whether or not the definition information set for building an application or generating a program is correctly defined. In other words, this allows the application construction tool to perform a test focusing on the definition target, so that the test can be performed efficiently.

また、上述の実施形態によれば、情報処理装置は、アプリケーションを構築するためのデータベース定義(図4)からテスト用のデータベースの選択を受け付け(情報受付部303、図17等)、アプリケーションを構築するための定義を用いてテストケースを生成し、選択されたテスト用のデータベースの接続先に接続し、生成されたテストケースを用いてアプリケーションに係るテストを実行する。このことにより、情報処理装置は、データベースに接続してテスト工程を実行する場合に、本番環境のデータベースに与える影響を低減する。言い換えると、テストと本番環境とで異なる接続先を設定するため、本番環境のデータベースの状態を確実に保全することができる。具体的に説明すると、テストケースを実行することにより仮に接続先のデータベースの情報が変更されたとしても、本番環境のデータベースには何ら影響を及ぼさないため、本番環境のデータベースの状態は確実に保全される。   Further, according to the above-described embodiment, the information processing apparatus accepts selection of a test database from the database definition for constructing the application (FIG. 4) (information accepting unit 303, FIG. 17, etc.), and constructs the application. A test case is generated using the definition for the connection, connected to the connection destination of the selected test database, and a test related to the application is executed using the generated test case. As a result, the information processing apparatus reduces the influence on the production environment database when the test process is executed by connecting to the database. In other words, since different connection destinations are set between the test and the production environment, the state of the production environment database can be reliably maintained. Specifically, even if the information in the connection destination database is changed by executing a test case, it will not affect the production database, so the state of the production database will be reliably preserved. Is done.

さらに、上述の実施形態によれば、情報処理装置は、本番環境のアプリケーションを構築する際に用いるデータベースとは異なるデータベースをテスト用のデータベースとして選択を受け付ける。このように予めそれぞれの用途で用いるデータベースを選択しておくことにより、本番環境とテスト用のデータベースの切り替えの手間を削減することができる。   Furthermore, according to the above-described embodiment, the information processing apparatus accepts selection as a test database that is a database different from the database used when building a production environment application. Thus, by selecting the database to be used for each application in advance, it is possible to reduce the trouble of switching between the production environment and the test database.

さらに、上述の実施形態によれば、情報処理装置は、テスト用のデータベースとして選択されたデータベースと、テスト用とは異なる用途で用いるデータベースとして設定されたデータベースとをデータベース定義エディタ画面上で互いに識別可能に表示する。このことにより、ユーザは、容易にデータベースの設定が可能となる。さらに、ユーザは接続先とデータベースの内容を確認しつつ、データベースを選択できる。そのため、情報処理装置は、誤ったデータベースがユーザにより選択されることを抑制することが可能となる。   Furthermore, according to the above-described embodiment, the information processing apparatus identifies a database selected as a test database and a database set as a database used for a purpose different from that for testing on the database definition editor screen. Display as possible. As a result, the user can easily set the database. Furthermore, the user can select a database while confirming the connection destination and the contents of the database. Therefore, the information processing apparatus can suppress selection of an incorrect database by the user.

なお、本実施形態のようなアプリケーション構築ツールにおいては、構築されたアプリケーション又は生成されたそのプログラムが正しく動作するかのテストよりも、アプリケーションを構築するために設定した定義情報が予想通りに設定されているかのテストをすべきである。勿論、本発明の実施形態により生成したテストケースを用いて、テスト対象を定義情報に絞ったテストを行うだけでなく、構築又は生成したアプリケーションを動作させてテストを行うことでアプリケーション全体まで範囲を広げたテストを行うとしてもよい。   Note that in the application construction tool as in the present embodiment, the definition information set for building the application is set as expected rather than testing whether the built application or the generated program operates correctly. Should be tested. 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 テスト実行部
303 情報受付部
305 テストケース生成部
101 Information processing apparatus 102 Application server 103 Database server 104 Application client 105 Network 302 Test execution unit 303 Information reception unit 305 Test case generation unit

Claims (6)

アプリケーションを構築する情報処理装置であって、
前記アプリケーションを構築するためのデータベース定義からテスト用のデータベースの選択を受け付けるデータベース選択受付手段と、
前記アプリケーションを構築するための定義を用いてテストケースを生成するテストケース生成手段と、
前記データベース選択受付手段で選択を受け付けたテスト用のデータベースの接続先に接続し、前記テストケース生成手段により生成されたテストケースを用いて前記アプリケーションに係るテストを実行するテスト実行手段
を備えることを特徴とする情報処理装置。
An information processing apparatus for building an application,
Database selection receiving means for receiving selection of a test database from a database definition for constructing the application;
Test case generation means for generating a test case using the definition for constructing the application;
A test execution unit configured to connect to a connection destination of a test database that has received a selection by the database selection reception unit, and to execute a test related to the application using the test case generated by the test case generation unit; A characteristic information processing apparatus.
前記データベース選択受付手段は、本番環境の前記アプリケーションを構築する際に用いるデータベースとは異なるデータベースの選択を受け付けることを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the database selection receiving unit receives selection of a database different from a database used when building the application in a production environment. 前記テスト実行手段は、デフォルトの接続先として設定されるデータベースから前記データベース選択受付手段で選択を受け付けたテスト用のデータベースに接続先を設定し、前記テストを実行することを特徴とする請求項1または2に記載の情報処理装置。   2. The test execution unit sets a connection destination from a database set as a default connection destination to a test database that is selected by the database selection reception unit, and executes the test. Or the information processing apparatus according to 2; 前記データベース選択受付手段によりテスト用のデータベースとして選択されたデータベースと、テスト用とは異なる用途で用いるデータベースとして設定されたデータベースとを互いに識別可能に表示するように制御する表示制御手段を更に備えることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。   And further comprising display control means for controlling the database selected as the test database by the database selection accepting means and the database set as a database used for a purpose different from that for the test so that they can be distinguished from each other. The information processing apparatus according to any one of claims 1 to 3. アプリケーションを構築する情報処理装置の処理方法であって、
前記アプリケーションを構築するためのデータベース定義からテスト用のデータベースの選択を受け付けるデータベース選択受付工程と、
前記アプリケーションを構築するための定義を用いてテストケースを生成するテストケース生成工程と、
前記データベース選択受付工程で選択を受け付けたテスト用のデータベースの接続先に接続し、前記テストケース生成工程により生成されたテストケースを用いて前記アプリケーションに係るテストを実行するテスト実行工程
を実行することを特徴とする情報処理装置の処理方法。
A processing method of an information processing apparatus for building an application,
A database selection accepting step for accepting selection of a test database from a database definition for constructing the application;
A test case generation step of generating a test case using a definition for constructing the application;
Executing a test execution step of connecting to a connection destination of a test database that has been selected in the database selection reception step, and executing a test related to the application using the test case generated by the test case generation step; A processing method of an information processing apparatus characterized by the above.
コンピュータを請求項1乃至4のいずれか1項に記載の情報処理装置として機能させるためのプログラム。
The program for functioning a computer as an information processing apparatus of any one of Claims 1 thru | or 4.
JP2018089333A 2018-05-07 2018-05-07 Information processor, method for controlling the same, and program Pending JP2019197261A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018089333A JP2019197261A (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
JP2018089333A JP2019197261A (en) 2018-05-07 2018-05-07 Information processor, method for controlling the same, and program

Publications (1)

Publication Number Publication Date
JP2019197261A true JP2019197261A (en) 2019-11-14

Family

ID=68538388

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018089333A Pending JP2019197261A (en) 2018-05-07 2018-05-07 Information processor, method for controlling the same, and program

Country Status (1)

Country Link
JP (1) JP2019197261A (en)

Similar Documents

Publication Publication Date Title
US11468226B2 (en) Systems and methods for presentation of a terminal application screen
JP6441786B2 (en) Test support apparatus, test support method, and program
JP7277694B2 (en) Information processing device, its control method and program
JP7212238B2 (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
JP7256353B2 (en) Information processing system, its control method and program
JP2019197261A (en) Information processor, method for controlling the same, and program
JP7319516B2 (en) Program, information processing device, and control method thereof
JP7323755B2 (en) Information processing system, its control method and program
JP7219389B2 (en) Information processing device, its control method and program
JP2019153264A (en) Information processing apparatus, processing method of the same and program
JP7311740B2 (en) Information processing system, its control method, and program
US10530835B2 (en) Application recording
JP7294609B2 (en) Program, Method, and Device for Supporting Software Operation Scenario Generation
JP2019192135A (en) Information processing device, processing method therefor and program
JP2019192133A (en) Information processing device, processing method therefor and program
US10798181B2 (en) Storage medium containing a program, information processing device, and processing method for deploying an application generated to a cloud environment
JP2019153265A (en) Information processing apparatus, processing method of the same and program
JP2021039433A (en) Information processing device, processing method therein, and program
JP2019197259A (en) Information processor, method for controlling the same, and program
KR101798867B1 (en) Method and apparatus for developing work system
JP5954309B2 (en) Program generation support apparatus, program generation support method, and program
JP7421137B2 (en) Information processing device, information processing method and program
JP7231823B2 (en) Program, information processing system and its control method
JP7231812B2 (en) Information processing system, processing method 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