JP2016194781A - Device, method, and program for software testing - Google Patents
Device, method, and program for software testing Download PDFInfo
- Publication number
- JP2016194781A JP2016194781A JP2015073980A JP2015073980A JP2016194781A JP 2016194781 A JP2016194781 A JP 2016194781A JP 2015073980 A JP2015073980 A JP 2015073980A JP 2015073980 A JP2015073980 A JP 2015073980A JP 2016194781 A JP2016194781 A JP 2016194781A
- Authority
- JP
- Japan
- Prior art keywords
- screen
- test
- software
- unit
- value
- 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.)
- Granted
Links
- 238000013522 software testing Methods 0.000 title claims abstract description 22
- 238000000034 method Methods 0.000 title claims description 113
- 238000012360 testing method Methods 0.000 claims description 181
- 238000013515 script Methods 0.000 claims description 85
- 238000004458 analytical method Methods 0.000 description 42
- 238000012795 verification Methods 0.000 description 36
- 238000003860 storage Methods 0.000 description 26
- 238000013461 design Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 239000000284 extract Substances 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラムに関する。 The present invention relates to a software test apparatus, a software test method, and a software test program.
従来、ソフトウェア開発において、ソフトウェア試験の自動化用の試験シナリオ(スクリプト)は、設計工程、製造工程、及び試験工程の各工程のうち、試験工程に入った段階で作成される。試験スクリプトは、プログラミングによって作成されるか、従来の一般的なソフトウェア試験方式であるキャプチャ&リプレイ方式によって作成される。試験スクリプトは、従来、試験工程、すなわち、実際に試験対象のソフトウェアが製造されたタイミングで、製造されたソフトウェアの実行画面を読み取る(キャプチャする)ことによって、作成される。
特許文献1に記載の発明では、ソフトウェア自動試験装置は、自動操作プログラムにより試験対象のアプリケーションプログラムを自動操作しながら、これと並行して該アプリケーションプログラムの操作画面の更新の有無をスクリーンキャプチャプログラムにより監視する。
2. Description of the Related Art Conventionally, in software development, a test scenario (script) for software test automation is created at the stage of entering the test process among the design process, manufacturing process, and test process. The test script is created by programming or a capture and replay method that is a conventional general software test method. Conventionally, the test script is created by reading (capturing) an execution screen of the manufactured software at a test process, that is, when the software to be tested is actually manufactured.
In the invention described in
キャプチャ&リプレイ方式によるソフトウェア試験では、製造されたソフトウェアの実行画面を読み取ることによって、ソフトウェアが実装した通りに動作するかについての確認はできるが、その実装が本来、当初より設計していたソフトウェア仕様に即しているかについての確認はできない場合がある。また、プログラミングによって試験スクリプトを作成する方式では、ソフトウェアの自動化試験のテストケースを作成する作業者が、プログラミングスキル、及び自動実行エンジンのコマンドの知識を有していることが求められる。また、従来のソフトウェア試験方式では、試験項目に付随する項目、すなわち、本来設計したソフトウェアとして実現したいことに付随して、コマンドを実行するタイミングの調整や、試験の実施内容の証跡を残すための画面キャプチャ取得、及び応答時間測定等の手順を作成するために、作業者が専門の高度なスキルを有していることが求められる。したがって、作業者が有するスキルレベルによって、作成された試験スクリプトの品質にバラつきが生じ得る。 In a software test using the capture and replay method, it is possible to check whether the software operates as implemented by reading the execution screen of the manufactured software, but the software specifications that the implementation originally designed from the beginning. It may not be possible to confirm whether it conforms to In the method of creating a test script by programming, an operator who creates a test case for a software automated test is required to have programming skills and knowledge of an automatic execution engine command. In addition, in the conventional software testing method, the items associated with the test items, i.e., the adjustment of the timing of executing the command and the trail of the contents of the test execution are left accompanying the implementation of the originally designed software. In order to create procedures such as screen capture acquisition and response time measurement, the worker is required to have specialized high-level skills. Therefore, the quality of the created test script may vary depending on the skill level possessed by the worker.
本発明は上記の点に鑑みてなされたものであり、ソフトウェア試験自動化用の試験シナリオを、ソフトウェアが製造される前の設計段階から、自然言語によって作成できるようにすることができるソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラムを提供する。また、設計書を元に試験シナリオを作成することで、当初より設計した仕様の通りに製造されているかを試験することができ、また、作業者のスキルに依存しない均一な品質で試験スクリプトを作成することができるソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラムを提供する。 The present invention has been made in view of the above points, and is a software test apparatus capable of creating a test scenario for software test automation in a natural language from a design stage before software is manufactured, A software test method and a software test program are provided. In addition, by creating a test scenario based on the design document, it is possible to test whether it is manufactured according to the specifications designed from the beginning, and test scripts can be created with uniform quality that does not depend on the skill of the operator. A software test apparatus, a software test method, and a software test program that can be created are provided.
(1)本発明は上記の課題を解決するためになされたものであり、本発明の一態様としては、データベースに接続されたwebサーバに対して、アプリケーション画面を生成させ、画面の入力欄に入力値を入力し、前記入力値に対する第1出力値を取得する実行部と、前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力し、前記入力値に対する第2出力値を取得する取得部と、前記第1出力値と前記第2出力値を照合する照合部と、を備えることを特徴とするソフトウェア試験装置である。 (1) The present invention has been made to solve the above-mentioned problems. As one aspect of the present invention, an application screen is generated on a web server connected to a database, and an input field of the screen is displayed. An execution unit that inputs an input value and obtains a first output value for the input value; and inputs the input value to the database without going through the application screen, and a second output value for the input value A software test apparatus comprising: an acquisition unit that acquires the first output value; and a verification unit that collates the first output value and the second output value.
(2)また、本発明の一態様としては、前記アプリケーション画面に設定する前記入力値を取得し、前記アプリケーション画面を生成させ、画面の入力欄に前記入力値を入力することと、前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力することと、前記第1出力値と前記第2出力値とを照合するプログラムを含む試験スクリプトを生成することを特徴とする(1)に記載のソフトウェア試験装置である。 (2) Moreover, as one aspect of the present invention, the input value to be set on the application screen is acquired, the application screen is generated, and the input value is input to an input field on the screen; On the other hand, a test script including a program for inputting the input value without using the application screen and collating the first output value with the second output value is generated (1). ).
(3)また、本発明の一態様としては、データベースに接続されたwebサーバに対して、アプリケーション画面を生成させ、画面の入力欄に入力値を入力し、前記入力値に対する第1出力値を取得する実行ステップと、前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力し、前記入力値に対する第2出力値を取得する取得ステップと、前記第1出力値と前記第2出力値を照合する照合ステップと、を有することを特徴とするソフトウェア試験方法である。 (3) Moreover, as one aspect of the present invention, an application screen is generated for a web server connected to a database, an input value is input in an input field of the screen, and a first output value for the input value is set. An acquisition step of acquiring the second output value for the input value by inputting the input value to the database without going through the application screen; the first output value; And a collation step of collating two output values.
(4)また、本発明の一態様としては、コンピュータに、データベースに接続されたwebサーバに対して、アプリケーション画面を生成させ、画面の入力欄に入力値を入力し、前記入力値に対する第1出力値を取得する実行ステップと、前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力し、前記入力値に対する第2出力値を取得する取得ステップと、前記第1出力値と前記第2出力値を照合する照合ステップと、を実行させるためのソフトウェア試験用プログラムである。 (4) Moreover, as one aspect of the present invention, a computer is caused to generate an application screen for a web server connected to a database, an input value is input in an input field of the screen, An execution step of acquiring an output value, an acquisition step of inputting the input value to the database without going through the application screen, and acquiring a second output value for the input value, and the first output value And a collation step for collating the second output value.
本発明によれば、ソフトウェア試験自動化用の試験シナリオを、自然言語によって作成することができる。また、代表的な試験実行命令を、プルダウン形式の自然言語で提供することで、シナリオ作成者(作業者)のプログラミングスキルに依存せず、試験スクリプトの品質を保つことができる。
また、試験スクリプトを自動で生成することで、試験スクリプトのプログラミングミスを防止することができる。
According to the present invention, a test scenario for software test automation can be created in a natural language. Also, by providing a typical test execution instruction in a pull-down natural language, the quality of the test script can be maintained without depending on the programming skill of the scenario creator (worker).
Further, by automatically generating the test script, it is possible to prevent programming mistakes in the test script.
以下、本発明の実施形態について、図面を参照しながら説明する。
(実施形態)
まず始めに、本発明の実施形態に係るソフトウェア試験装置1の概要を説明する。
図1は、本発明の実施形態に係るソフトウェア試験装置1の構成の一例を示すブロック図である。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
(Embodiment)
First, an outline of the
FIG. 1 is a block diagram showing an example of the configuration of a
実施形態に係るソフトウェア試験装置1は、ソフトウェア試験を自動化するため、試験シナリオ(試験スクリプト)を作成する装置である。また、ソフトウェア試験装置1は、作成した試験シナリオ(試験スクリプト)に従って、ソフトウェア試験を自動実行し、試験結果を出力する装置である。
なお、ソフトウェア試験とは、ソフトウェアが当初の設計どおりに作られているか否か、及びソフトウェアが正常に動作や表示をするか否か、を確認するための試験である。
実施形態に係るソフトウェア試験装置1は、ソースコード解析部11と、画面仕様書生成部12と、手順書作成部13と、自動実行部14と、バッチファイル15とを含んで構成される。
The
The software test is a test for confirming whether or not the software is made according to the original design and whether or not the software operates and displays normally.
The
ソースコード解析部11は、ソフトウェア試験の対象であるソフトウェアによってブラウザに表示される画面のソースコードを読み込む。例えば、ソースコードは、HTML形式で記述される。ソースコード解析部11は、読み込んだソースコードを解析して、画面を構成する画面構成部品を特定し、特定した各画面構成部品についてソフトウェア試験に必要な情報を抽出する。例えば、ソフトウェア試験に必要な情報とは、各画面構成部品の「項目名」、「ID属性」、「部品種別」、及び「画面ID」等である。例えば、ソースコード上に、「ID属性」が存在しない場合は、「XPath」情報を代替情報としてソースコードから抽出する。
ソースコード解析部11は、抽出したソフトウェア試験に必要な情報(例えば、「項目名」、「ID属性」、「部品種別」、及び「画面ID」等)を、画面仕様書生成部12へ出力する。
The source
The source
なお、「項目名」とは、画面構成部品に対し自然言語等によって名付けられた任意の名称である。「ID属性」とは、画面構成部品を一意に特定するための識別子である。例えば、HTML形式で記述されたソースコードにおいては、画面構成部品を示す「input」や「select」等のタグに付与する「id=“ID名”」という記述である。「部品種別」とは、画面構成部品の種類を示す。例えば、「部品種別」は「ボタン」や「テキストボックス」等である。「画面ID」とは、試験対象の画面構成部品が存在する画面を特定するための識別子である。「XPath」は、HTMLソースコード上のタグの場所を相対位置で表した情報である。 The “item name” is an arbitrary name given to a screen component by a natural language or the like. “ID attribute” is an identifier for uniquely identifying a screen component. For example, in the source code described in the HTML format, the description is “id =“ ID name ”” given to a tag such as “input” or “select” indicating a screen component. “Part type” indicates the type of screen component. For example, “part type” is “button”, “text box”, or the like. The “screen ID” is an identifier for specifying a screen on which a screen component to be tested exists. “XPath” is information representing the location of the tag on the HTML source code as a relative position.
画面仕様書生成部12は、画面設計書を読み込む。画面仕様書生成部12は、読み込んだ画面設計書からソフトウェア試験に必要な情報(例えば、各画面構成部品の「項目名」、「ID属性」、「部品種別」、及び「画面ID」等)を抽出する。
また、画面仕様書生成部12は、ソースコード解析部からソフトウェア試験に必要な情報(例えば、「項目名」、「ID属性」、「部品種別」、及び「画面ID」等)の一覧を取得する。
The screen
Further, the screen
なお、基本的には、画面設計書の中に必要な情報、すなわち、「項目名」、「ID属性」、「部品種別」、及び「画面ID」が含まれている場合は、画面仕様書生成部12は画面設計書を読み込む。また、画面設計書の中に必要な情報が含まれていない、または、画面仕様書が存在しない場合は、画面仕様書生成部12は、ソースコード解析部11から「項目名」、「ID属性」、「部品種別」、及び「画面ID」の一覧を取得する。
Basically, if the screen design document contains necessary information, that is, “item name”, “ID attribute”, “component type”, and “screen ID”, the screen specification document The
画面仕様書生成部12は、様々な様式の設計書、及び様々な画面ソースコード解析結果を、手順書作成部13が読み込むことができる記述形式に変換する。
画面仕様書生成部12は、「項目名」、「ID属性」、「部品種別」、及び「画面ID」の一覧を、手順書作成部13での読み込みが可能な画面仕様書として出力する。
The screen
The screen
手順書作成部13は、画面仕様書生成部12から、ソフトウェア試験に必要な情報(例えば、「項目名」、「ID属性」、「部品種別」、及び「画面ID」等)の一覧をユーザ任意のタイミングで取得する。
手順書作成部13は、「部品種別」と「実行/検証内容」とが対応付けられたリストである試験項目リストを記憶している。「実行/検証内容」とは、ソフトウェアの動作や表示などを示す項目である。例えば、「実行/検証内容」とは、「クリックする」、または「値を選択する」、または「値を設定する」などである。
手順書作成部13は、取得した「項目名」とともに、取得した「部品種別」に対応付けられた「実行/検証内容」のリストを、ユーザに提示する。手順書作成部13は、「項目名」毎に「実行/検証内容」をユーザに選択させる。また、例えば「値を設定する」というような「実行/検証内容」については、必要に応じて、ユーザに値を設定させる。
以上により、手順書作成部13は、「項目名」毎に「実行/検証内容」が指定されたソフトウェア試験手順書を作成する。
The procedure
The procedure
The procedure
As described above, the procedure
ソフトウェア試験手順書が作成された後、ユーザから手順書作成部13へ、テストケースを出力する指示がなされ得る。テストケースを出力する指示がなされた場合、手順書作成部13は、ソフトウェア試験手順書に、以下のようなコマンドを生成することによってテストケースを生成する。
手順書作成部13は、作成した手順書の中の、選択された「実行/検証内容」と「部品種別」との組み合わせに基づいて、その組み合わせに付随して必要となるコマンドを抽出する。コマンドは、予め手順書作成部13の中に記憶されている。例えば、コマンドは、試験対象のソフトウェアを操作する操作コマンドだけでなく、その操作コマンドに付随して、試験スクリプトを正常に動作させるために必要となるコマンドを実行するためのタイミングを指定すること、または、試験の証跡を残すために必要な画面キャプチャを取ること、等を命令することを示す記述である。手順書作成部13は、抽出したコマンドを、対応する「実行/検証内容」に合わせて、一連の検証内容をテストケースに追記する。
手順書作成部13は、生成したテストケースをバッチファイル15として、出力する。ユーザは、テストケースのバッチファイル15を実行することで、自動実行部14へ入力する。
手順書作成部13からテストケースのバッチファイル15を出力することで、ユーザは、任意のタイミング、任意の回数、テストケースの実行が可能となる。このように、手順書作成部13は、生成したテストケースをバッチファイルとして作成しておくため、同一の試験を再度実施するような場合にも、ユーザは再度ソフトウェア試験手順書を作成する必要がない。したがって、ソフトウェア試験の実施効率が向上する。
After the software test procedure manual is created, the user can instruct the procedure
Based on the selected combination of “execution / verification contents” and “part type” in the created procedure manual, the procedure
The procedure
By outputting the
自動実行部14は、ユーザによってバッチファイル15が実行されることによって、起動する。または、バッチファイル15がタスクマネージャー等に登録されることによって起動する。自動実行部14は、起動すると、手順書作成部13から出力されたテストケースを取得する。自動実行部14は、取得したテストケースを実行する。テストケースが実行されることによって、ソフトウェア試験がなされる。
ソフトウェア試験が終了すると、自動実行部14は、結果ファイルと画面キャプチャとを出力する。
The
When the software test ends, the
以上、本発明の実施形態に係るソフトウェア試験装置1の概要を説明した。
以下、ソフトウェア試験装置1の機能構成毎に、詳細に説明する。
The outline of the
Hereinafter, each functional configuration of the
(手順書作成部の構成)
以下に、本発明の実施形態に係るソフトウェア試験装置1の手順書作成部13の構成について説明する。
図1に図示するように、ソフトウェア試験装置1の手順書作成部13は、画面仕様書読込部131と、手順定義部132と、リスト記憶部133と、テストケース生成部134と、によって構成される。
(Configuration of the procedure manual creation department)
Below, the structure of the procedure
As illustrated in FIG. 1, the procedure
画面仕様書読込部131は、画面仕様書生成部12より出力された、画面仕様書を取得する。画面仕様書読込部131は、取得した画面仕様書から画面構成部品毎の「項目名」、「ID属性」、「部品種別」、及び「画面ID」を抽出する。画面仕様書読込部131は、抽出した画面構成部品毎のソフトウェア試験に必要な情報(例えば、「項目名」、「ID属性」、「部品種別」、及び「画面ID」等)を手順定義部132へ出力する。
The screen
リスト記憶部133は、「部品種別」と、「実行/検証内容」と、「生成コマンド」とが対応付けられた試験項目リストを予め記憶する。
図2は、本発明の実施形態に係るソフトウェア試験装置1のリスト記憶部133が記憶する試験項目リストの一例を示す概略図である。
図2に示す試験項目リストは、「部品種別」と、「生成コマンド」と、複数の「実行/検証内容」とが対応付けられた2次元の表形式のデータである。なお、図2に示す試験項目リストは、試験項目リストの一部分である。試験項目リストは、図2に図示されている行数及び列数以上の行数及び列数が含まれる。しかしながら、説明を簡易にするため、以下の説明においては、試験項目リストのデータは図2に示すものが全てであるものとする。
The
FIG. 2 is a schematic diagram illustrating an example of a test item list stored in the
The test item list shown in FIG. 2 is two-dimensional tabular data in which “part type”, “generation command”, and a plurality of “execution / verification contents” are associated with each other. The test item list shown in FIG. 2 is a part of the test item list. The test item list includes the number of rows and the number of columns greater than the number of rows and columns shown in FIG. However, in order to simplify the explanation, in the following explanation, it is assumed that the test item list data is all shown in FIG.
図2に示す試験項目リストにおいて、例えば、「部品種別」が「ボタン」である列の値が「○」になっている「実行/検証内容」は、「をクリックする(画面ロード無)」及び「をクリックする(画面ロード有)」の2つである。すなわち、ソフトウェアの画面構成部品である「ボタン」に対するソフトウェア試験手順は、2種類存在することを意味する。例えば、ソフトウェア試験の対象である「部品種別」が「ボタン」である場合において、「実行/検証内容」として「をクリックする(画面ロード無)」が選択された場合には、ボタンをクリックしたときのソフトウェアの動作を確認するためのソフトウェア試験手順が定義されたことを意味する。 In the test item list shown in FIG. 2, for example, “execution / verification contents” in which the value of the column whose “part type” is “button” is “◯” is “click (no screen loading)” And “click (with screen loading)”. That is, there are two types of software test procedures for “buttons” that are software screen components. For example, when the “part type” that is the target of the software test is “button”, if “click (no screen load)” is selected as the “execution / verification content”, the button is clicked This means that a software test procedure has been defined to confirm the operation of the software.
なお、「画面ロード無」とは、ボタンがクリックされた時に、ソフトウェアが画面の表示を更新する動作を伴なわないことを意味する。なお、「画面ロード有」は、上記の場合とは逆に、ボタンがクリックされた時に、ソフトウェアが画面の表示を更新する動作を伴なうことを意味する。「画面ロード有」と「画面ロード無」とを区別している理由は、画面の表示の更新を伴なう「画面ロード有」の場合には「画面ロード無」の場合と比べて、ボタンがクリックされてから、クリックされた結果が画面に表示されるまでに、より時間を要するためである。「画面ロード有」が定義された場合には、ボタンがクリックされてから、一定の時間を経過した後に、クリックされた結果の確認がなされることが求められる。 “No screen loading” means that when the button is clicked, the software is not accompanied by an operation of updating the screen display. Note that “with screen loading” means that, contrary to the above case, when the button is clicked, the software is accompanied by an operation of updating the display of the screen. The reason for distinguishing between “with screen loading” and “without screen loading” is that the button is not displayed when “screen loading is present”, which is accompanied by a screen display update, compared to when “screen loading is not performed”. This is because it takes more time for the clicked result to be displayed on the screen after being clicked. When “with screen load” is defined, it is required that the result of the click be confirmed after a certain time has elapsed since the button was clicked.
再び図1に戻って、本発明の実施形態に係るソフトウェア試験装置1の手順書作成部13の構成について説明する。
Returning to FIG. 1 again, the configuration of the procedure
手順定義部132は、画面仕様書読込部131から「項目名」、「ID属性」、「部品種別」、及び「画面ID」の一覧を取得する。手順定義部132は、取得した「部品種別」に対応付けられた「実行/検証内容」及び「生成コマンド」のリストをリスト記憶部133から取得する。
手順定義部132は、ディスプレイ(図示せず)にソフトウェア試験手順を定義するための手順定義画面を表示する。手順定義部132は、手順定義画面において、リスト記憶部133から取得した「実行/検証内容」のリストを表示する。それにより、ユーザは、各ソフトウェア試験手順毎の「実行/検証内容」を選択し得る。
The
The
以下に、手順定義部132が行うソフトウェア試験手順の定義について説明する。
図3は、本発明の実施形態に係るソフトウェア試験装置1の手順定義部132によるソフトウェア試験手順の定義の一例を示す概略図である。
図3(A)に示すテーブルの各行は、それぞれ1つのソフトウェア試験手順を示す。
ユーザは、この各行の各項目について、値を選択、または値を入力することによって、各ソフトウェア試験手順を定義する。ユーザが各ソフトウェア試験手順を定義することによって、ソフトウェア試験手順書が作成される。
The definition of the software test procedure performed by the
FIG. 3 is a schematic diagram illustrating an example of the definition of the software test procedure by the
Each row of the table shown in FIG. 3A indicates one software test procedure.
The user defines each software test procedure by selecting a value or inputting a value for each item in each row. A user defines each software test procedure, thereby creating a software test procedure document.
図3(A)の左列の「画面項目定義orメッセージ」の欄は、手順書作成部13が、画面設計書から抽出した情報、またはソースコード解析部から取得した情報を構成する「項目名」、「ID属性」、「部品種別」、及び「画面ID」に基づいて生成される。
例えば、「●●(ボタン)」は、上記の「項目名」の情報に基づいて生成される。なお、項目名「●●」のソフトウェア画面構成部品の部品種別は「ボタン」である。
In the column of “screen item definition or message” in the left column of FIG. 3A, the “item name” constituting the information extracted from the screen design document by the procedure
For example, “● (button)” is generated based on the information of the “item name”. The component type of the software screen component of the item name “●●” is “button”.
図3(A)に図示するように、左列「画面項目定義orメッセージ」の欄の値が「●●(ボタン)」である行の、中列「実行/検証内容」の欄の値は、「をクリックする(画面ロード無)」である。手順定義部132は、「部品種別」が「ボタン」であることに基づいて、リスト記憶部133の試験項目リストから、「ボタン」に対応する「実行/検証内容」を取得する。「ボタン」に対応する「実行/検証内容」は、図2に図示するように、「をクリックする(画面ロード無)」または「をクリックする(画面ロード有)」である。
As shown in FIG. 3A, the value in the middle column “execution / verification contents” of the row in which the value in the column “screen item definition or message” in the left column is “●● (button)” is , “Click (no screen loading)”. The
すなわち、図3(A)の「項目定義orメッセージ」の欄で指定された内容が「●●(ボタン)」であり、その「部品種別」が「ボタン」であることに基づいて、「実行/検証内容」の欄には、「をクリックする(画面ロード無)」と「をクリックする(画面ロード有)」との2種類の選択肢がユーザに提示される。図3(A)は、ユーザが「をクリックする(画面ロード無)」を選択した状態を示す。 That is, based on the fact that the content specified in the “item definition or message” field in FIG. 3A is “●● (button)” and its “part type” is “button”, “execute” In the “Verification contents” column, two types of options, “click (no screen loading)” and “click (with screen loading)” are presented to the user. FIG. 3A shows a state in which the user selects “click (no screen loading)”.
また、図3(A)に図示するように、左列「画面項目定義orメッセージ」の欄の値が「ウインドウID」である行の、中列「実行/検証内容」の欄の値は、「が次のwindowID値であること」である。手順定義部132は、「ウインドウID」に対応する「実行/検証内容」を、リスト記憶部133の試験項目リストから取得する。手順定義部132は、取得した「実行/検証内容」のリストを提示する。そして、図3(A)は、ユーザが「が次のwindowID値であること」を選択した状態を示す。また、ユーザは「ウインドウID」に対応する「値」欄に、正しいウインドウ名を入力することができる。すなわち、このソフトウェア試験手順の定義は、ソフトウェア画面構成部品であるウインドウの「ウインドウID」が、ユーザによって定義された正しいウインドウ名になっているかを確認するためのソフトウェア試験手順の定義であることを示す。なお、本発明の実施形態に係るソフトウェア試験装置1においては、この「ウインドウID」の項目は任意の入力項目である。入力されなかった場合の動作は後述する。
Further, as illustrated in FIG. 3A, the value in the middle column “execution / verification contents” of the row in which the value in the column “screen item definition or message” in the left column is “window ID” is “Is the next windowID value”. The
図3(A)のように、ユーザにより、自然言語(第1言語)によって、ソフトウェア試験手順の定義がなされると、手順定義部132は、自然言語による定義を、自動実行部14が実行可能な記述形式による定義(試験スクリプト)に変換する。なお、図3(A)の例における自然言語(第1言語)による定義とは、例えば、「●●(ボタン)」及び「をクリックする(画面ロード無)」である。すなわち、図3(A)の例における自然言語(第1言語)とは、日本語である。
図3(B)は、図3(A)に示す自然言語によるソフトウェア試験手順の定義を、試験スクリプトに変換した場合の例を示す図である。
図3(B)に図示する「click,id=xxx」は、図3(A)に図示する「●●(ボタン)」及び「をクリックする(画面ロード無)」を、試験スクリプトに変換したものである。
As shown in FIG. 3A, when the software test procedure is defined by the user in the natural language (first language), the
FIG. 3B is a diagram showing an example in which the definition of the software test procedure in the natural language shown in FIG. 3A is converted into a test script.
“Click, id = xxx” illustrated in FIG. 3B is converted from “●● (button)” and “click (no screen loading)” illustrated in FIG. 3A into a test script. Is.
図3(B)に図示する「click,id=xxx」の中の「click」は、自然言語(第1言語)である「をクリックする(画面ロード無)」がプログラム言語へ変換されたものである。図2の試験項目リストに図示するように、「実行/検証内容」の値が「をクリックする(画面ロード無)」であるときの「生成コマンド」は「click」である。なお、例えば、図3の例において、「をクリックする(画面ロード有)」がユーザによって定義されていたならば、「clickAndWait」に変換される。 “Click” in “click, id = xxx” illustrated in FIG. 3B is obtained by converting a natural language (first language) “click (no screen loading)” into a programming language. It is. As illustrated in the test item list of FIG. 2, the “generation command” when the value of “execution / verification content” is “click (no screen loading)” is “click”. For example, in the example of FIG. 3, if “click (with screen loading)” is defined by the user, it is converted to “clickAndWait”.
図3(B)に図示する「click,id=xxx」の中の「id=xxx」は、「●●(ボタン)」に紐づく「ID属性」である。「ID属性」は、例えばアルファベットによる記述等のコンピュータプログラムが認識可能な記述形式(第2言語)で、ソフトウェアのソースコードの製作者によってソースコード上に定義されたものである。上述したように、手順定義部132は、「ID属性」を、画面仕様書読込部131から、「項目名」、「部品種別」、及び「画面ID」とともに取得する。この「id=xxx」の定義によって、ソフトウェア試験の対象のボタンが、ソフトウェアの画面の中のどのボタンなのかが一意に特定される。
“Id = xxx” in “click, id = xxx” illustrated in FIG. 3B is an “ID attribute” associated with “● (button)”. The “ID attribute” is a description format (second language) that can be recognized by a computer program, such as an alphabet description, and is defined on the source code by the producer of the software source code. As described above, the
また、図3(B)に図示する「selectWindow,ウインドウ名」は、図3(A)に図示する「ウインドウID」を、自動実行部14が実行可能な記述形式による定義に変換したものである。これは、指定したウインドウ名が付けられたウインドウへ、アクティブウインドウを切り替えることを示す試験スクリプトである。なお、アクティブウインドウとは、例えば、パソコンの操作画面内に同時に複数のウインドウを表示できるようなマルチウインドウの環境において、ユーザによる入力や操作の対象となっているウインドウのことである。
Further, “selectWindow, window name” illustrated in FIG. 3B is obtained by converting “window ID” illustrated in FIG. 3A into a definition in a description format executable by the
手順定義部132は、テストケースを出力することを示すユーザからの指示を受け付けると、作成したソフトウェア試験手順書(例えば、図3(B)に示す試験スクリプトによって構成されるソフトウェア試験手順書)を、自動実行部14のテストケース生成部134へ出力する。
When the
テストケース生成部134は、手順定義部132から取得したソフトウェア試験手順書に含まれる試験スクリプトに、さらに、次のようなソフトウェア試験手順の定義(コマンド)を付加する。テストケース生成部134は、さらに、定義された「項目名」及びその「部品種別」と、定義された「実行/検証内容」との組み合わせに基づいて、その組み合わせに付随して必要となるコマンドを付加する。例えば、組み合わせに付随して必要となる定義とは、各ソフトウェア試験手順を実行するタイミングを指定するコマンド、及び画面キャプチャを取得することを指示するコマンド、等である。なお、一般的なソフトウェア試験においては、正しくソフトウェア試験が行われたことを示すエビデンス(証跡)を残すために、適切なタイミングで画面キャプチャを取得することが求められる。
The test
図3(C)は、手順定義部132によって変換された図3(B)に示す定義に、テストケース生成部134が、さらに、付随して必要となるコマンドを付加した場合の例を示す図である。
FIG. 3C is a diagram showing an example in which the test
図3(C)に図示するように、テストケース生成部134は、まず、「click,id=xxx」の定義の前に、「selectWindow,@saveHandle!」というコマンドを付加する。このコマンドは、現在開いているウインドウ情報を取得して、保存することを命令するコマンドである。
As illustrated in FIG. 3C, the test
また、テストケース生成部134は、「selectWindow」の定義に続けて、「@autoSelect!,$childWindowId_001」というコマンドを付加する。このコマンドを付加したことによって、次に示すようなソフトウェア試験手順の定義に変換される。まず、ウインドウ情報を再取得して、再取得したウインドウ情報と、上記の「selectWindow,@saveHandle!」のコマンドによって取得したウインドウ情報と、を比較する。比較することによって、新しいウインドウを特定する。次に、検出したウインドウにフォーカスを切り替える。次に、切り替えたウインドウのウインドウ情報を、指定した変数「$childWindowId_001」に保持する。
Further, the test
図3(B)に図示する定義においては、「selectWindow」のあとに「ウインドウ名」を明示的に指定する必要があった。しかしながら、ウインドウ名が不明な場合には、このソフトウェア試験手順の定義を作成することができない。
図3(C)に図示するように、テストケース生成部134は、「selectWindow」の定義に続けて、「@autoSelect!,$childWindowId_001」というコマンドを付加することによって、切り替えたウインドウの「ウインドウ名」が不明でも、自動的にウインドウ名を取得し、そのウインドウ名を変数に指定する。以上により、本発明の実施形態に係るソフトウェア試験装置1は、切り替えたウインドウの「ウインドウ名」を明示的に指定しなくても、テストケースを実行することができる。
In the definition shown in FIG. 3B, it is necessary to explicitly specify “window name” after “selectWindow”. However, if the window name is unknown, this software test procedure definition cannot be created.
As illustrated in FIG. 3C, the test
また、テストケース生成部134は、「captureEntirePageScreenshot,xxxxx」というコマンドを付加する。このコマンドは、画面キャプチャを取得することを命令するコマンドである。
以上のように、テストケース生成部134は、付随して必要となるコマンドを自動的に付加する。
テストケース生成部134は、手順定義部132から取得したソフトウェア試験手順書にコマンドを付加することによって生成したテストケースを、自動実行部14のテストケース読込部141へ出力する。
Further, the test
As described above, the test
The test
以上、説明したように、本発明の実施形態に係るソフトウェア試験装置1の手順書作成部13は、自然言語(日本語)で定義されたソフトウェア試験手順の定義と、自動実行部14が実行可能な記述形式による定義(試験スクリプト)と、を対応付けるデータベースを備える。それによって、ソフトウェア試験装置1の手順書作成部13は、自然言語(日本語)で定義されたソフトウェア試験手順の定義から、試験スクリプトを生成することができる。
As described above, the procedure
(手順定義画面におけるソフトウェア試験手順の定義)
次に、ユーザがソフトウェア試験手順を定義する際の、手順定義画面について説明する。
図4は、本発明の実施形態に係るソフトウェア試験装置1の手順定義画面の一例を示す概略図である。
図4に示す手順定義画面には、プルダウンメニューp01と、プルダウンメニューp02と、が表示されている。プルダウンメニューとは、ソフトウェアの操作画面において、メニューから項目を選択する方式の一つである。例えば、メニューのタイトル部分にマウスカーソルをあわせてマウスのボタンをクリックすると、そこから選択項目の一覧が引き出されたように垂れ下がってくる表示方法のことである。
(Definition of software test procedure on the procedure definition screen)
Next, a procedure definition screen when a user defines a software test procedure will be described.
FIG. 4 is a schematic diagram illustrating an example of a procedure definition screen of the
On the procedure definition screen shown in FIG. 4, a pull-down menu p01 and a pull-down menu p02 are displayed. The pull-down menu is one of methods for selecting an item from a menu on a software operation screen. For example, it is a display method that hangs down as if a list of selection items is pulled out when a mouse button is clicked with the mouse cursor on the menu title.
図4において、プルダウンメニューp01には、手順定義部132が画面仕様書読込部131から取得した「項目名」が表示される。ユーザが、プルダウンメニューp01にマウスカーソルを合わせて、マウスのボタンをクリックすると、「項目名」の一覧が引き出されたように垂れ下がって表示される。図4に示すプルダウンメニューp01は、表示された「項目名」一覧の中から、ユーザが「●●(ボタン)」を選択した状態であることを示す。
ユーザが、上記のように「項目名」を選択した後、プルダウンメニューp02にマウスカーソルを合わせて、マウスのボタンをクリックすると、プルダウンメニューp01で選択された「項目名」に対応する「部品種別」に対応付けられた「実行/検証内容」の一覧が引き出されたように垂れ下がって表示される。なお、図4は、この時点における手順定義画面の状態を示したものである。
In FIG. 4, “item name” acquired by the
When the user selects the “item name” as described above and then moves the mouse cursor to the pull-down menu p02 and clicks the mouse button, the “component type” corresponding to the “item name” selected in the pull-down menu p01 is selected. A list of “execution / verification contents” associated with “” is displayed in a hanging manner. FIG. 4 shows the state of the procedure definition screen at this point.
プルダウンメニューp02に表示される「実行/検証内容」の一覧は、手順定義部132が、リスト記憶部133から取得するデータに基づいて生成される。
例えば、図4に示すように、プルダウンメニューp01において「●●(ボタン)」がユーザによって選択される。手順定義部132は、画面仕様書読込部131から取得したソフトウェア試験に必要な情報(例えば、「項目名」、「ID属性」、「部品種別」、及び「画面ID」等)が紐付られた情報に基づいて、「●●(ボタン)」の「部品種別」が「ボタン」であることを認知する。手順定義部132は、「部品種別」が「ボタン」であることに基づいて、「ボタン」に対応する「実行/検証内容」の一覧を、リスト記憶部133に記憶された試験項目リストから取得する。
A list of “execution / verification contents” displayed in the pull-down menu p02 is generated based on data acquired by the
For example, as shown in FIG. 4, “●● (button)” is selected by the user in the pull-down menu p01. The
図2に示す試験項目リストにおいて、「部品種別」が「ボタン」である列の値が「○」になっている「実行/検証内容」は、「をクリックする(画面ロード無)」及び「をクリックする(画面ロード有)」の2つである。したがって、手順定義部132はこの2つの「実行/検証内容」の情報からなる一覧を取得して、取得した一覧を図4に示すプルダウンメニューp02において表示させる。
In the test item list shown in FIG. 2, “execution / verification contents” in which the value of the column whose “part type” is “button” is “◯” are “click (no screen loading)” and “ Click (with screen load) ”. Therefore, the
以上、説明したように、本発明の実施形態に係るソフトウェア試験装置1の手順定義部132は、プルダウンメニューにより選択されたソフトウェア試験の試験項目(「項目名」)に応じて、試験項目に予め対応付けられた命令(「実行/検証内容」)の候補をプルダウンメニューでユーザに選択させる。そして、手順定義部132は、選択された命令(「実行/検証内容」)に基づいて、試験スクリプトを生成する。
プルダウンメニューによる選択に基づいて試験スクリプトを生成するため、ソフトウェア試験装置1の手順定義部132は、均一的な記述レベルによって品質が確保されたソフトウェア試験手順書、及び試験スクリプトを生成することができる。
As described above, the
Since the test script is generated based on the selection by the pull-down menu, the
(自動実行部の構成)
次に、本発明の実施形態に係るソフトウェア試験装置1の自動実行部14の構成について説明する。
図1に図示するように、ソフトウェア試験装置1の自動実行部14は、テストケース読込部141と、スクリプト実行部142と、コマンド記憶部143と、結果出力部144と、結果格納部145と、によって構成される。
(Configuration of automatic execution unit)
Next, the configuration of the
As shown in FIG. 1, the
テストケース読込部141は、手順書作成部13のテストケース生成部134から、テストケースを取得する。ここで、ユーザによってバッチファイル15が実行されることにより、テストケースを実行する命令がなされ得る。または、タスクマネージャー等に登録されることによって自動的に実行ファイルが起動することにより、任意のタイミング、任意の回数テストケースを実行する命令がなされ得る。
テストケースを実行する命令がなされた場合、テストケース読込部141は、取得したテストケースをスクリプト実行部142へ出力する。その場合、テストケース読込部141は、テストケースを、所望のブラウザの形式(例えば、Internet Explorer(登録商標)、FireFox(登録商標)、またはGoogleChrome(登録商標)、等)に合わせた記述へ変換した後、スクリプト実行部142へ出力する。
The test
When an instruction to execute the test case is given, the test
スクリプト実行部142は、取得したテストケースに記述された試験スクリプトを順に実行する。
なお、実行する試験スクリプトには、外部サーバへアクセスすることを要する試験スクリプトが含まれる場合がある。例えば、ソフトウェアが、外部サーバが有するデータベースから取得した情報を、自らのソフトウェアの画面に表示させるような処理を含むとき、その取得した情報が正しく表示されるかをチェックするような場合である。このような、外部サーバのデータベースへのアクセスを伴なうテストケースについての説明は、後述する。
なお、スクリプト実行部142は、取得したテストケースに記述されていないコマンドを、コマンド記憶部143から取得して、テストケースにそのコマンドを追加することもできる。
The
Note that the test script to be executed may include a test script that requires access to an external server. For example, when the software includes a process for displaying information acquired from a database of an external server on the screen of its own software, it is checked whether the acquired information is correctly displayed. Such a test case involving access to an external server database will be described later.
Note that the
スクリプト実行部142は、テストケースに記述された試験スクリプトの実行が終了すると、すなわち、ソフトウェア試験が終了すると、実行結果を示す結果ファイル、及び画面キャプチャを結果格納部145へ出力する。
結果ファイルには、ソフトウェア試験手順毎に、「試験番号」と、「手順実行結果」と、「処理時間」と、「画面キャプチャファイル名」と、「トータルの実行結果」(例えば、時間、手順件数、結果が正常であった件数、及び結果が異常であった件数、等)と、が含まれる。
When the execution of the test script described in the test case is finished, that is, when the software test is finished, the
In the result file, for each software test procedure, “test number”, “procedure execution result”, “processing time”, “screen capture file name”, and “total execution result” (for example, time, procedure Number of cases, number of cases where the result was normal, and number of cases where the result was abnormal, etc.).
なお、結果が異常であったソフトウェア試験項目が存在する場合には、結果出力部144は、出力する結果ファイルのファイル名に「NG」等の文言を付与するようにしてもよい。その場合、ユーザは、結果ファイルを開かなくても、結果が異常であったソフトウェア試験項目が存在することを知ることができる。
また、結果ファイル内においても、結果が異常であったソフトウェア試験項目、及びその実行結果を示す文字を、色を変えて(例えば、赤字で)表示するようにしてもよい。その場合、ユーザは、結果ファイルの中で、結果が異常であったソフトウェア試験項目を容易に識別することができる。
When there is a software test item whose result is abnormal, the
Also in the result file, the software test item whose result is abnormal and the character indicating the execution result may be displayed in different colors (for example, in red). In that case, the user can easily identify the software test item whose result is abnormal in the result file.
(外部サーバのデータベースへのアクセスを伴なうテストケースの実行について)
以下に、外部サーバのデータベースへのアクセスを伴なうテストケースの実行について説明する。
図5は、本発明の実施形態に係るソフトウェア試験装置1の手順定義画面の一例を示す概略図である。
外部サーバのデータベースへアクセスし、その結果を確認するソフトウェア試験を行う場合、ユーザは、例えば図5に図示するような手順定義画面のプルダウンメニューp03によって、「DBアクセス」を選択する。「DBアクセス」が選択されると、図6に示すようなDBアクセス情報設定画面pp01がポップアップ表示される。なお、DBは、databese(データベース)の略である。
(About execution of test cases with access to external server database)
In the following, execution of a test case with access to a database of an external server will be described.
FIG. 5 is a schematic diagram illustrating an example of a procedure definition screen of the
When performing a software test for accessing the database of the external server and confirming the result, the user selects “DB access” by using a pull-down menu p03 on the procedure definition screen as shown in FIG. 5, for example. When “DB access” is selected, a DB access information setting screen pp01 as shown in FIG. 6 is popped up. DB is an abbreviation for database.
図6は、本発明の実施形態に係るソフトウェア試験装置1のDBアクセス情報設定画面pp01の一例を示す概略図である。
DBアクセス情報設定画面pp01において、ユーザは、アクセスする外部サーバ及びデータベースの情報を入力し、アクセス設定をする。設定する項目は、例えば図6に図示するような、「サーバ名」、「ポート番号」、「DB名」、「DB接続用ID」、「(DB接続用)パスワード」、「SQL文」、及び「SQL実行に伴う処理内容」等である。例えば、図6においては、それぞれ「192.111.222.333」、「9999」、「test」、「dbuser」、「user2015」、「select item1 from where itemid=’012345’」、及び「結果を変数に格納して比較処理を行う。比較する数:1、画面ID=1K100」と設定されている。
FIG. 6 is a schematic diagram showing an example of the DB access information setting screen pp01 of the
In the DB access information setting screen pp01, the user inputs information on the external server and database to be accessed, and performs access setting. Items to be set include, for example, “server name”, “port number”, “DB name”, “DB connection ID”, “(DB connection) password”, “SQL sentence”, as shown in FIG. And “processing contents accompanying SQL execution”. For example, in FIG. 6, “192.122.333”, “9999”, “test”, “dbuser”, “user2015”, “select item1 from where item ==“ 012345 ””, and “result” The comparison processing is performed by storing in a variable.Number to be compared: 1, Screen ID = 1K100 ”is set.
上記の設定の入力がなされ、DBアクセス情報設定画面pp01の右下のほうに配置された「OK」ボタンがクリックされると、図7に示すような比較カラム情報設定画面pp02がポップアップ表示される。 When the above settings are input and the “OK” button arranged at the lower right of the DB access information setting screen pp01 is clicked, a comparison column information setting screen pp02 as shown in FIG. 7 is popped up. .
図7は、本発明の実施形態に係るソフトウェア試験装置1の比較カラム情報設定画面pp02の一例を示す概略図である。
比較カラム情報設定画面pp02において、ユーザは、ソフトウェア試験対象の画面を実行することによって画面に表示される結果と、データベースへアクセスすることによって取得する結果とを比較するための設定をする。例えば、図7に図示するように、比較カラム情報設定画面pp02において、ユーザは、「カラム名」、「レコード番号」、「比較対象の画面項目定義」、及び「画面項目の比較位置」を設定する。例えば、図7においては、それぞれ「item1」、「1」、「18_18(テキストボックス)」、及び「${COMP_DATA}」と設定されている。
FIG. 7 is a schematic diagram illustrating an example of the comparison column information setting screen pp02 of the
In the comparison column information setting screen pp02, the user makes a setting for comparing the result displayed on the screen by executing the software test target screen and the result obtained by accessing the database. For example, as shown in FIG. 7, in the comparison column information setting screen pp02, the user sets “column name”, “record number”, “comparison screen item definition”, and “screen item comparison position”. To do. For example, in FIG. 7, “
上記の設定の入力がなされ、比較カラム情報設定画面pp02の右下のほうに配置された「OK」ボタンがクリックされると、DBアクセス情報設定画面pp01及び比較カラム情報設定画面pp02において入力された設定情報に基づいて、図8に示すようなソフトウェア試験手順の定義(試験スクリプト)が生成される。 When the above settings are input and the “OK” button arranged on the lower right side of the comparison column information setting screen pp02 is clicked, it is input on the DB access information setting screen pp01 and the comparison column information setting screen pp02. Based on the setting information, a software test procedure definition (test script) as shown in FIG. 8 is generated.
図8は、本発明の実施形態に係るソフトウェア試験装置1の手順定義部132によるソフトウェア試験手順の定義の一例を示す概略図である。
手順定義部132は、テストケースを出力することを示すユーザからの指示を受け付けると、作成したソフトウェア試験手順書(例えば、図8に示すソフトウェア試験手順の定義によって構成されるソフトウェア試験手順書)を、自動実行部14のテストケース生成部134へ出力する。
テストケース生成部134は、手順定義部132から取得したソフトウェア試験手順の定義に、さらに、コマンドを付加する。それにより、図9に図示するようなテストケースが生成される。
FIG. 8 is a schematic diagram illustrating an example of the definition of the software test procedure by the
When the
The test
図9は、本発明の実施形態に係るソフトウェア試験装置1のテストケース生成部134が生成するテストケースの一例を示す概略図である。
なお、説明を容易にするため、図9に示すテストケースの中の各試験スクリプト(コマンド)の左側に番号を付している。例えば、「1」番の番号が付与された1番目の試験スクリプト(コマンド)は、「echo,□JDBC設定(PostgreSQL),,,」である。
図9に示す、1、6、8、10、12、14、及び16番目の試験スクリプト(コマンド)は、操作をログに出力しソフトウェア試験の実行記録を残すための、テストケース生成部134によって付加されたコマンドである。
FIG. 9 is a schematic diagram illustrating an example of a test case generated by the test
For ease of explanation, a number is assigned to the left side of each test script (command) in the test case shown in FIG. For example, the first test script (command) assigned the number “1” is “echo, □ JDBC setting (PostgreSQL),...”.
The first, sixth, eighth, tenth, twelfth, fourteenth, and sixteenth test scripts (commands) shown in FIG. 9 are generated by the test
2、3、4、5、及び7番目の試験スクリプトは、外部サーバのデータベースへ接続するための試験スクリプトである。
2番目の試験スクリプトは、外部サーバのデータベースへの接続に使用するライブラリを指定することを示す。各種のライブラリは、自動実行部14のコマンド記憶部143に予め記憶されている。3番目の試験スクリプトは、外部サーバのデータベースの接続パラメータ(URL)を指定することを示す。4番目の試験スクリプトは、外部サーバのデータベースの接続パラメータ(接続ユーザ名)を指定することを示す。5番目の試験スクリプトは、外部サーバのデータベースの接続パラメータ(パスワード)を指定することを示す。7番目の試験スクリプトは、外部サーバのデータベースへ接続することを示す。
The second, third, fourth, fifth and seventh test scripts are test scripts for connecting to the database of the external server.
The second test script indicates that a library to be used for connection to the database of the external server is specified. Various libraries are stored in advance in the
9番目の試験スクリプトは、図6に示すDBアクセス情報設定画面pp01において指定されたSQL文に従って、外部サーバのデータベースを検索することを示す。また、9番目の試験スクリプトは、検索結果を取得し、指定された保存名称で保存することを示す。
11番目の試験スクリプトは、外部サーバのデータベースへ接続を切断することを示す。
13番目の試験スクリプトは、データベースの検索結果の保存先から、列及び行で指定した特定の位置データを取り出し、変数($COMP_DATA)に格納することを示す。
15番目の試験スクリプトは、変数($COMP_DATA)に格納したデータベース情報を表示することを示す。
The ninth test script indicates that the database of the external server is searched according to the SQL sentence specified on the DB access information setting screen pp01 shown in FIG. The ninth test script indicates that the search result is acquired and stored with the specified storage name.
The eleventh test script indicates that the connection to the external server database is to be disconnected.
The thirteenth test script indicates that specific position data designated by a column and a row is taken out from the storage destination of the search result of the database and stored in a variable ($ COMP_DATA).
The fifteenth test script indicates that the database information stored in the variable ($ COMP_DATA) is displayed.
17番目の試験スクリプトは、画面項目の内容と、13番目の試験スクリプトにおいて格納されたデータベース情報とを比較する。例えば、画面項目の内容とは、図10に図示するような内容である。
図10は、本発明の実施形態に係るソフトウェア試験装置1のスクリプト実行部142が生成する画面項目検証画面の一例を示す概略図である。
The 17th test script compares the contents of the screen item with the database information stored in the 13th test script. For example, the contents of the screen item are contents as illustrated in FIG.
FIG. 10 is a schematic diagram illustrating an example of a screen item verification screen generated by the
以上において説明した試験スクリプトの実行の流れを図11に示す。
図11は、本発明の実施形態に係るソフトウェア試験装置1のスクリプト実行部142による試験スクリプト実行の流れの一例を示す概略図である。
まず、スクリプト実行部142は、外部サーバのデータベースに接続する(ステップst01)。次に、スクリプト実行部142は、接続した外部サーバのデータベースに対し、検索実行させる命令(例えば、SQL文)を送信する(ステップst02)。外部サーバのデータベースは、受信した命令に基づいて検索実行をする。外部サーバのデータベースは、検索結果をスクリプト実行部142へ送信する(ステップst03)。
FIG. 11 shows the flow of execution of the test script described above.
FIG. 11 is a schematic diagram illustrating an example of a test script execution flow by the
First, the
スクリプト実行部142は、受信した検索結果を、例えばRAM(Random Access read/write Memory;読み書き可能なメモリ)等の一時記憶領域(図示せず)に保存する(ステップst04)。なお、受信した検索結果のデータ量が多い場合等においては、スクリプト実行部142は、検索結果のデータを、一時記憶領域にではなく自動実行部14の外部の記憶装置に保存するようにしてもよい(ステップst05)。なお、スクリプト実行部142は、検索結果のデータを外部の記憶装置に保存する場合、検索結果のデータをCSV(Comma−Separated Values;カンマ区切り)形式のデータに変換してから保存するようにしてもよい。
The
スクリプト実行部142は、保存した検索結果のデータから、指定された特定の位置のデータを取り出し、変数($COMP_DATA)へ格納する(ステップst07)。図11に図示するように、例えば、スクリプト実行部142は、保存した検索結果のデータから、2行目かつ2列目に位置するデータである「山田」を変数($COMP_DATA)へ格納する。
スクリプト実行部142は、変数($COMP_DATA)に格納したデータである「山田」と、表示された画面項目の内容である「山田」とを比較して、双方のデータが一致していることを確認する。以上により、スクリプト実行部142は、ソフトウェア試験対象であるソフトウェアの画面に表示される画面項目の内容が正しいことを検証することができる。
なお、図8及び図9には図示していないが、図5のプルダウンメニューp03において「DBアクセス」選択された場合、試験対象のソフトウェアの画面に上記の画面項目の内容(例えば、「山田」)を表示させるための試験スクリプトも生成される。
The
The
Although not shown in FIGS. 8 and 9, when “DB access” is selected in the pull-down menu p03 of FIG. 5, the contents of the above screen items (for example, “Yamada”) are displayed on the screen of the software to be tested. ) Is also generated.
以上、説明したように、本発明の実施形態に係るソフトウェア試験装置1の自動実行部14は、外部サーバが有するデータベースからデータを取得することを伴なう試験項目の試験を実施する場合において、試験対象のソフトウェアが外部サーバから取得して画面に表示したデータと、自動実行部14が外部サーバから取得したデータと、を比較する。それにより、外部サーバへの2種類のアクセス手段に基づいて、それぞれのデータ取得結果を比較できるため、ソフトウェア試験装置1はより信頼性の高いソフトウェア試験の試験結果を得ることができる。
As described above, in the case where the
(ソースコード解析部11の説明)
次に、ソースコード解析部11が行うソースコード解析について説明する。
上述したように、試験対象であるソフトウェアの画面設計書の中に、ソフトウェア試験に必要な情報(例えば、「項目名」、「ID属性」、「部品種別」、及び「画面ID」)が含まれていない、または、画面仕様書が存在しない場合には、画面仕様書生成部12は、ソースコード解析部11からソフトウェア試験に必要な情報を取得する。
以下に、ソースコード解析部11が、画面のソースコードを解析し、ソフトウェア試験に必要な情報を取得する場合について説明する。
(Description of source code analysis unit 11)
Next, source code analysis performed by the source
As described above, information required for software testing (for example, “item name”, “ID attribute”, “component type”, and “screen ID”) is included in the screen design document of the software to be tested. If the screen specification is not present or the screen specification does not exist, the screen
The case where the source
まず、ソースコード解析部11は、画面のソースコードを解析することを示すユーザからの命令等に基づいて、画面のソースコードの解析を実行開始する。
ソースコード解析部11は、例えば、画面のソースコードの解析を、プログラミング言語が有する関数を用いて行う。例えば、プログラミング言語が有する関数とは、Javascriptの「getElementsByTagName()」という関数である。
関数「getElementsByTagName()」は、HTML形式で記述されたソースコードから、タグ名に関する「Elementオブジェクト」を取得する関数である。
「Elementオブジェクト」とは、HTML形式で記述されたソースコードの中にあるform要素内で配置されるエレメント(要素)を集めたオブジェクトである。このElementオブジェクトは、「Button」、「Checkbox」、「FileUpload」、「Hidden」、「Password」、「Radio、Reset」、「Text」、「Textarea」、「Submit」、「Select」、及び「Option」等の各種のオブジェクトを含む。
First, the source
For example, the source
The function “getElementsByTagName ()” is a function for acquiring an “Element object” related to the tag name from the source code described in the HTML format.
An “Element object” is an object in which elements (elements) arranged in a form element in a source code described in an HTML format are collected. The Element objects are “Button”, “Checkbox”, “FileUpload”, “Hidden”, “Password”, “Radio, Reset”, “Text”, “Textarea”, “Submit”, “Select”, and “Option”. And various other objects.
ソースコード解析部11は、関数「getElementsByTagName()」によって取得した「Elementオブジェクト」の各エレメント(要素)に対し、各エレメントの属性情報(例えば、attributeプロパティ等)から、各画面構成部品の「位置情報(例えば、ID属性、XPath)」、「部品種別」、及び「表示状態」等の情報を取得する。ソースコード解析部11は、取得した情報を、例えばCSV形式による記述形式にしてポップアップ画面やクリップボードインターフェースへ出力する。
ソースコード解析部11が出力する書式は、例えば、「名称(項目名)、位置情報(ID属性、XPath等)、部品種別、表示状態」のような書式である。例えば、ソースコード解析部11は、「ワード検索、inputword、テキストボックス、〇」という情報を出力する。
For each element of the “Element object” acquired by the function “getElementsByTagName ()”, the source
The format output by the source
なお、ソースコード解析部11は、「位置情報(ID属性、XPath等)」を、例えば、以下の情報から取得する。ID属性の場合、ソースコード解析部11は、各エレメントにおけるid属性の値を、「位置情報」とする。各エレメントにおけるid属性の値がない場合には、各エレメントの「nodeType」、または「parentNode」等を利用した「sibling情報」からDOM(Document Object Model)における位置(XPath)を計算し、「位置情報」とする。
The source
なお、ソースコード解析部11は、例えば、以下の条件に基づいて「表示状態」の値を決定する。
ソースコード解析部11は、取得した各エレメントの親のタグのstyle属性に「DISPLAY:NONE」という記述がある場合、及び取得した各エレメントの親のタグのtype属性に「hidden」という記述がある場合には、「表示状態」の値を「×」とする。「×」は「非表示」を意味する。
ソースコード解析部11は、取得した各エレメントのinputタグ、またはselectタグ等にdisable属性がある場合には、「表示状態」の値を「□」とする。「□」は「表示・非活性」を意味する。
ソースコード解析部11は、上記の「非表示」及び「表示・非活性」以外の場合には、「表示状態」の値を「〇」とする。「〇」は「表示・活性」を意味する。
The source
The source
The source
The source
ソースコード解析部11は、試験対象のソフトウェアが表示する画面のソースコードに含まれる画面構成部品を全て解析した後、解析した結果を、CSV形式で記述されたテキストファイル、またはクリップボードインターフェースへ出力する。
The source
また、ソースコード解析部11は、画面のソースコードに含まれる画面構成部品を全て解析するだけでなく、指定された画面構成部品のみを解析(以下、部分解析という)することもできる。
部分解析を行う場合、例えば、ソースコード解析部11は、Javascriptの「elementsFromPoint」という関数を用いる。「elementsFromPoint」は、マウスカーソルの位置に対するエレメントのElementオブジェクトを取得する関数である。
Further, the source
When performing the partial analysis, for example, the source
ソースコード解析部11は、関数「elementsFromPoint」によって取得したElementオブジェクトの各エレメント(要素)に対し、各エレメントの属性情報(例えば、attributeプロパティ等)から、ソフトウェア試験に必要な情報(例えば、各画面構成部品の「位置情報(例えば、ID属性、XPath)」、「部品種別」、及び「表示状態」等)を取得する。ソースコード解析部11は、取得した情報を、例えばCSV形式による記述形式にしてポップアップ画面やクリップボードインターフェースへ出力する。
なお、「位置情報(ID属性、XPath等)」の取得方法、及び「表示状態」の値を決定する条件については、上述した画面のソースコードに含まれる画面構成部品を全て解析する場合と同様である。
For each element (element) of the Element object acquired by the function “elementsFromPoint”, the source
The method for acquiring “position information (ID attribute, XPath, etc.)” and the condition for determining the value of “display state” are the same as in the case of analyzing all the screen components included in the above-described screen source code. It is.
画面仕様書生成部12は、ソースコード解析部11が、CSV形式によるテキストデータ、またはクリップボードインターフェースに出力したデータ等を取得する。画面仕様書生成部12が取得するデータには、ソフトウェア試験に必要な情報(例えば、「項目名」、「ID属性(または、XPath)」、「部品種別」、「画面ID」、及び「表示状態」等)が含まれる。
なお、画面仕様書生成部12は、生成する画面仕様書上において、「表示状態」の値が「×」である画面構成部品の部分に網掛けを施すように記載するようにしてもよい。それにより、ユーザはその画面構成部品が非表示の状態であることを容易に認知することができる。
なお、画面仕様書生成部12は、「位置情報(例えば、ID属性、XPath)」に基づいてHTML画面上でその画面構成部品の位置を明確に表示することができる他のツール(または、機能)等連携するようにしてもよい。それにより、ユーザは、ユーザは試験対象である画面構成部品の位置を容易に特定することができる。
The
Note that the screen
Note that the screen
以上、説明したように、本発明の実施形態に係るソフトウェア試験装置1のソースコード解析部11は、画面(例えば、ブラウザ内)に表示される試験対象のソフトウェアのソースコード(例えば、HTML形式のソースコード)を読み取り、各画面構成部品、及び各画面構成部品に対応するID属性情報(または、XPath情報)等を自動的に抽出し、抽出した情報を記憶することができる。
また、ソースコード解析部11は、試験対象のソフトウェアの表示画面において、特定の画面構成部品が指定された場合、その画面構成部品のID属性情報(または、XPath情報)等を抽出し、抽出した情報を記憶することができる。
As described above, the source
In addition, when a specific screen component is specified on the display screen of the software to be tested, the source
それにより、試験対象のソフトウェアの画面設計書からソフトウェア試験に必要な情報を得ることができない場合であっても、ソフトウェア試験装置1は、試験対象のソフトウェアの表示画面からソースコードを読み取って、ソフトウェア試験に必要な情報を得ることができる。
ソフトウェア試験に必要な情報を得ることができない場合とは、例えば、試験対象のソフトウェアの画面設計書の中にソフトウェア試験に必要な情報が記載されていなかったり、試験対象のソフトウェアの画面設計書そのものが無くなっていたりする場合である。また、ソフトウェア試験に必要な情報とは、例えば、「項目名」、「ID属性」、「部品種別」、及び「画面ID」である。
As a result, even if the information required for the software test cannot be obtained from the screen design document of the software to be tested, the
Information required for software testing cannot be obtained, for example, information required for software testing is not included in the screen design document for the software under test, or the screen design document for the software under test itself This is the case when there are no more. Information necessary for the software test is, for example, “item name”, “ID attribute”, “component type”, and “screen ID”.
(ソフトウェア試験装置1の動作)
次に、ソフトウェア試験装置1の動作の流れについて説明する。
図12は、本発明の実施形態に係るソフトウェア試験装置1の動作の一例を示すフローチャートである。
(Operation of the software test apparatus 1)
Next, the operation flow of the
FIG. 12 is a flowchart showing an example of the operation of the
(ステップS101)まず、ソフトウェア試験の対象であるソフトウェアの画面設計書が存在する場合には、ステップS102へ進む。そうでない場合は、ステップS103へ進む。 (Step S101) First, if there is a screen design document for software to be tested, the process proceeds to step S102. Otherwise, the process proceeds to step S103.
(ステップS102)ソフトウェア試験の対象であるソフトウェアの画面設計書に必要な情報が記載されている場合には、ステップS103へ進む。そうでない場合は、ステップS104へ進む。 (Step S102) If necessary information is described in the screen design document of the software to be tested, the process proceeds to Step S103. Otherwise, the process proceeds to step S104.
(ステップS103)ソースコード解析部11は、試験対象であるソフトウェアが表示する画面のソースコードを解析する。ソースコード解析部11は、ソースコードの解析結果を、画面仕様書生成部12へ出力する。なお、解析結果とは、ソフトウェア試験に必要な情報、例えば、「項目名」、「ID属性(または、XPath)」、「部品種別」、及び「画面ID」等である。その後、ステップS104へ進む。
(Step S103) The source
(ステップS104)画面仕様書生成部12は、画面設計書を解析して抽出したデータ(例えば、「項目名」、「ID属性(または、XPath)」、「部品種別」、及び「画面ID」等)、または、ソースコード解析部11から取得したソースコードの解析結果を示すデータを、手順書作成部13が処理することができるデータ形式に変換する。画面仕様書生成部12は、変換したデータによって構成される画面仕様書を生成する。そして、画面仕様書生成部12は、変換したデータを手順書作成部13へ出力する。その後、ステップS105へ進む。
(Step S104) The screen
(ステップS105)手順書作成部13は、画面仕様書生成部12から取得したデータに基づいて、手順定義画面を生成する。手順定義画面において、例えば、ソフトウェア試験装置1のユーザによって、各ソフトウェア試験手順が定義される。手順書作成部13は、定義された各ソフトウェア試験手順を各試験スクリプトに変換し、ソフトウェア試験手順書を作成する。その後、ステップS106へ進む。
(Step S105) The procedure
(ステップS106)ここで、ユーザ等によって、手順書作成部13に対し、テストケースを生成する指示がなされ得る。テストケースを生成する指示がなされた場合、手順書作成部13は、ソフトウェア試験手順書を、テストケース生成部134へ出力する。その後、ステップS107へ進む。そうでない場合は、ステップS106に留まる。
(Step S106) Here, an instruction to generate a test case can be given to the procedure
(ステップS107)テストケース生成部134は、ソフトウェア試験手順書を手順定義部132から取得する。テストケース生成部134は、取得したソフトウェア試験手順書に含まれる各試験スクリプトに付随して必要となるコマンドを、ソフトウェア試験手順書に付加する。それにより、テストケースが生成される。テストケース生成部134は、テストケースをバッチファイル15として出力する。その後、ステップ108へ進む。
(Step S <b> 107) The test
(ステップS108)ここで、ユーザ、またはタスクマネージャ等によって、テストケースを示すバッチファイル15の実行がなされ得る。バッチファイル15を実行する指示がなされた場合、ステップS109へ進む。そうでない場合は、ステップS108に留まる。
(Step S108) Here, the
(ステップS109)自動実行部14のテストケース読込部141はテストケースを読み込む。そして、テストケース読込部141はスクリプト実行部142へ読み込んだテストケースを出力する。スクリプト実行部142は、テストケースに含まれる試験スクリプトの実行を開始する。その後、ステップS110へ進む。
(Step S109) The test
(ステップS110)スクリプト実行部142が実行する試験スクリプトが、外部サーバが有するデータベースへのアクセスを伴なう試験スクリプトであった場合、ステップS111へ進む。そうでない場合は、ステップS112へ進む。
(Step S110) If the test script executed by the
(ステップS111)スクリプト実行部142は、試験対象のソフトウェアが外部サーバから取得して画面に表示したデータと、自動実行部14が外部サーバから取得したデータと、を比較する。それにより、スクリプト実行部142は、外部サーバへの2種類のアクセス手段に基づいてそれぞれのデータ取得結果を比較することによって結果を検証する。その後、ステップS112へ進む。
(Step S111) The
(ステップS112)テストケースに含まれる試験スクリプトの実行が全て完了した場合には、ステップS113へ進む。そうでない場合は、ステップS110に戻り、まだ実行していない次の試験スクリプトを実行する。 (Step S112) When the execution of all the test scripts included in the test case is completed, the process proceeds to Step S113. Otherwise, the process returns to step S110, and the next test script that has not been executed is executed.
(ステップS113)
スクリプト実行部142は、テストケースの実行結果を結果出力部144へ出力する。結果出力部144は、スクリプト実行部142から取得したテストケースの実行結果に基づいて、テストケースの実行結果を示す結果ファイル、及び画面キャプチャファイルを生成する。そして、結果出力部144は、生成した結果ファイル及び画面キャプチャファイルを、結果格納部145に格納する。
以上で、本フローチャートの処理を終了する。
(Step S113)
The
Above, the process of this flowchart is complete | finished.
以上、この発明の実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。 The embodiment of the present invention has been described in detail above, but the specific configuration is not limited to the above-described one, and various design changes and the like can be made without departing from the scope of the present invention. is there.
なお、上述した実施形態におけるソフトウェア試験装置1の一部又は全部をコンピュータで実現するようにしてもよい。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。
In addition, you may make it implement | achieve part or all of the
なお、ここでいう「コンピュータシステム」とは、ソフトウェア試験装置1に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
Here, the “computer system” is a computer system built in the
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信回線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。 Further, the “computer-readable recording medium” is a medium that dynamically holds a program for a short time, such as a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line, In this case, a volatile memory inside a computer system that serves as a server or a client may be included that holds a program for a certain period of time. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
また、上述した実施形態におけるソフトウェア試験装置1、を、LSI(Large Scale Integration)等の集積回路として実現してもよい。ソフトウェア試験装置1の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
Further, the
1・・・ソフトウェア試験装置、11・・・ソースコード解析部、12・・・画面仕様書生成部、13・・・手順書作成部、14・・・自動実行部、15・・・バッチファイル、131・・・画面仕様書読込部、132・・・手順定義部、133・・・リスト記憶部、134・・・テストケース生成部、141・・・テストケース読込部、142・・・スクリプト実行部、143・・・コマンド記憶部、144・・・結果出力部、145・・・結果格納部、p01・・・プルダウンメニュー、p02・・・プルダウンメニュー、p03・・・プルダウンメニュー、pp01・・・DBアクセス情報設定画面、pp02・・・比較カラム情報の設定画面
DESCRIPTION OF
(1)本発明は上記の課題を解決するためになされたものであり、本発明の一態様としては、データベースに接続されたwebサーバによって生成されたアプリケーション画面を示す情報を取得し、前記アプリケーション画面の入力欄へ入力した入力値を前記webサーバへ送信し、前記入力値の送信に対応して前記webサーバから送信されたアプリケーション画面から前記入力値に対する第1出力値を取得する実行部と、前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力し、前記入力値に対する第2出力値を取得する取得部と、前記第1出力値と前記第2出力値を照合する照合部と、を備えることを特徴とするソフトウェア試験装置である。 (1) The present invention has been made to solve the above problems, as one aspect of the present invention, to obtain information indicating the application screen that is thus generated web server connected to the database, the to send the value input to the input field of the application screen to the web server, the input value execution unit in response to the transmission to obtain a first output value for the input value from the transmitted application screen from the web server And an acquisition unit that inputs the input value to the database without using the application screen and acquires a second output value for the input value; and the first output value and the second output value. A software test apparatus comprising: a collation unit for collation.
(3)また、本発明の一態様としては、データベースに接続されたwebサーバによって生成されたアプリケーション画面を示す情報を取得し、前記アプリケーション画面の入力欄へ入力した入力値を前記webサーバへ送信し、前記入力値の送信に対応して前記webサーバから送信されたアプリケーション画面から前記入力値に対する第1出力値を取得する実行ステップと、前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力し、前記入力値に対する第2出力値を取得する取得ステップと、前記第1出力値と前記第2出力値を照合する照合ステップと、を有することを特徴とするソフトウェア試験方法である。 (3) Further, as one embodiment of the present invention obtains the information indicating the application screen that is thus generated web server connected to the database, the input value input to the input field of the application screen to said web server Transmitting the first output value for the input value from the application screen transmitted from the web server in response to the transmission of the input value , and the database without passing through the application screen A software test comprising: an acquisition step of inputting the input value and acquiring a second output value corresponding to the input value; and a collation step of collating the first output value and the second output value Is the method.
(4)また、本発明の一態様としては、コンピュータに、データベースに接続されたwebサーバによって生成されたアプリケーション画面を示す情報を取得し、前記アプリケーション画面の入力欄へ入力した入力値を前記webサーバへ送信し、前記入力値の送信に対応して前記webサーバから送信されたアプリケーション画面から前記入力値に対する第1出力値を取得する実行ステップと、前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力し、前記入力値に対する第2出力値を取得する取得ステップと、前記第1出力値と前記第2出力値を照合する照合ステップと、を実行させるためのソフトウェア試験用プログラムである。 (4) Further, as an embodiment of the present invention, the computer obtains information indicating the application screen that is thus generated web server connected to the database, the input value input to the input field of the application screen send to the web server, and execution step of obtaining a first output value for the input value from the transmitted application screen from the web server in response to the transmission of the input value, with respect to said database, said application screen Software for executing the acquisition step of inputting the input value without intervention and acquiring the second output value for the input value, and the collating step of collating the first output value and the second output value This is a test program.
Claims (4)
前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力し、前記入力値に対する第2出力値を取得する取得部と、
前記第1出力値と前記第2出力値を照合する照合部と、
を備えることを特徴とするソフトウェア試験装置。 An execution unit that generates an application screen for a web server connected to the database, inputs an input value in an input field of the screen, and acquires a first output value for the input value;
An acquisition unit that inputs the input value to the database without using the application screen, and acquires a second output value for the input value;
A collation unit for collating the first output value and the second output value;
A software testing apparatus comprising:
前記アプリケーション画面を生成させ、画面の入力欄に前記入力値を入力することと、
前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力することと、
前記第1出力値と前記第2出力値とを照合するプログラムを含む試験スクリプトを生成することを特徴とする請求項1に記載のソフトウェア試験装置。 Obtain the input value to be set on the application screen,
Generating the application screen and entering the input value in an input field on the screen;
Entering the input value for the database without going through the application screen;
The software test apparatus according to claim 1, wherein a test script including a program for collating the first output value and the second output value is generated.
前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力し、前記入力値に対する第2出力値を取得する取得ステップと、
前記第1出力値と前記第2出力値を照合する照合ステップと、
を有することを特徴とするソフトウェア試験方法。 An execution step of generating an application screen for a web server connected to the database, inputting an input value in an input field of the screen, and acquiring a first output value for the input value;
An acquisition step for inputting the input value to the database without using the application screen and acquiring a second output value for the input value;
A collation step of collating the first output value and the second output value;
A software testing method characterized by comprising:
データベースに接続されたwebサーバに対して、アプリケーション画面を生成させ、画面の入力欄に入力値を入力し、前記入力値に対する第1出力値を取得する実行ステップと、
前記データベースに対して、前記アプリケーション画面を介さずに、前記入力値を入力し、前記入力値に対する第2出力値を取得する取得ステップと、
前記第1出力値と前記第2出力値を照合する照合ステップと、
を実行させるためのソフトウェア試験用プログラム。 On the computer,
An execution step of generating an application screen for a web server connected to the database, inputting an input value in an input field of the screen, and acquiring a first output value for the input value;
An acquisition step for inputting the input value to the database without using the application screen and acquiring a second output value for the input value;
A collation step of collating the first output value and the second output value;
Software test program for running
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015073980A JP5982526B1 (en) | 2015-03-31 | 2015-03-31 | Software test apparatus, software test method, and software test program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015073980A JP5982526B1 (en) | 2015-03-31 | 2015-03-31 | Software test apparatus, software test method, and software test program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5982526B1 JP5982526B1 (en) | 2016-08-31 |
JP2016194781A true JP2016194781A (en) | 2016-11-17 |
Family
ID=56819866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015073980A Active JP5982526B1 (en) | 2015-03-31 | 2015-03-31 | Software test apparatus, software test method, and software test program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5982526B1 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0628209A (en) * | 1992-07-06 | 1994-02-04 | Hitachi Ltd | Program inspecting device |
JPH10301809A (en) * | 1997-04-23 | 1998-11-13 | Nippon Telegr & Teleph Corp <Ntt> | Method for automatically generating gui operation procedure |
-
2015
- 2015-03-31 JP JP2015073980A patent/JP5982526B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP5982526B1 (en) | 2016-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5942009B1 (en) | Software test apparatus, software test method, and software test program | |
JP7398068B2 (en) | software testing | |
AU2017258963B2 (en) | Simultaneous multi-platform testing | |
US9424167B2 (en) | Automated testing of an application system | |
CN105468779B (en) | A kind of client Web application capture and playback system and method towards browser compatibility detection | |
WO2018010552A1 (en) | Test method and device | |
US8903691B2 (en) | Linking graphical user interface testing tools and human performance modeling to enable usability assessment | |
Romano et al. | An empirical analysis of UI-based flaky tests | |
US8875103B2 (en) | Method of testing multiple language versions of a software system using one test script | |
US20130275946A1 (en) | Systems and methods for test development process automation for a test harness | |
JP7385740B2 (en) | Improving the process of retrieving GUI elements using user input | |
US11615018B2 (en) | Automation testing tool framework | |
EP3333712B1 (en) | Simultaneous multi-platform testing | |
US11436133B2 (en) | Comparable user interface object identifications | |
US20220350857A1 (en) | Methods and systems for browser extension used to generate relative xpath, absolute xpath and/or css selectors | |
US9798650B1 (en) | Application testing system and method | |
Hallé et al. | Testing web applications through layout constraints | |
CN112463586B (en) | Method and medium for automatically generating application program interface test case | |
US20180232299A1 (en) | Composing future tests | |
JP5998239B1 (en) | Software test apparatus, software test method, and software test program | |
CN112540924A (en) | Interface automation test method, device, equipment and storage medium | |
CN107038117B (en) | Web automatic testing method based on definition-reference between event processing functions | |
JP5998238B1 (en) | Software test apparatus, software test method, and software test program | |
US11106571B2 (en) | Identification of input object in a graphical user interface | |
JP5982526B1 (en) | Software test apparatus, software test method, and software test program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160610 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160705 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160801 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5982526 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |