JP4906805B2 - Remote test execution system for programs - Google Patents

Remote test execution system for programs Download PDF

Info

Publication number
JP4906805B2
JP4906805B2 JP2008186165A JP2008186165A JP4906805B2 JP 4906805 B2 JP4906805 B2 JP 4906805B2 JP 2008186165 A JP2008186165 A JP 2008186165A JP 2008186165 A JP2008186165 A JP 2008186165A JP 4906805 B2 JP4906805 B2 JP 4906805B2
Authority
JP
Japan
Prior art keywords
test
manual operation
manual
information
queue
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.)
Expired - Fee Related
Application number
JP2008186165A
Other languages
Japanese (ja)
Other versions
JP2010026706A (en
Inventor
隆義 本元
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.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions Ltd
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 Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2008186165A priority Critical patent/JP4906805B2/en
Publication of JP2010026706A publication Critical patent/JP2010026706A/en
Application granted granted Critical
Publication of JP4906805B2 publication Critical patent/JP4906805B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

本発明は、複数のテストマシンに実装したテスト対象のプログラムに対し、テスト操作情報や関連情報を配信し、各テストマシン上でテスト操作を実行するプログラムの遠隔テスト実行システムに関するものである。   The present invention relates to a remote test execution system for a program that distributes test operation information and related information to a test target program installed in a plurality of test machines and executes the test operation on each test machine.

テスト対象のプログラムに対するテスト操作を遠隔のコンピュータ上で実行する方法はあり、コンピュータを連携させてテストを行うことは可能である。操作内容はスクリプトなどにより記述されたプログラムとして表現され、プログラムを実行することで、遠隔のコンピュータ上でテスト操作を再現する。プログラムはスクリプトなどの汎用的な言語で記述されるため、プログラム中で独自の処理を行うことが可能である。
テスト対象プログラムは同時並行に実行が可能であるので、複数のテストマシン上でテストを行うことも可能である。もし全てのテスト操作がスクリプトなどにより自動的に操作可能であり、手動操作を伴わないのであれば、連続して操作を継続することが可能である。なお、本発明に関連する公知技術文献としては下記の特許文献1がある。
There is a method of executing a test operation for a program to be tested on a remote computer, and it is possible to perform a test by linking computers. The operation content is expressed as a program described by a script or the like, and the test operation is reproduced on a remote computer by executing the program. Since the program is written in a general-purpose language such as a script, it is possible to perform unique processing in the program.
Since the test target programs can be executed in parallel, it is possible to perform tests on a plurality of test machines. If all the test operations can be automatically performed by a script or the like and no manual operation is involved, the operation can be continued continuously. In addition, there exists the following patent document 1 as a well-known technical document relevant to this invention.

特開2008−40537「GUIテスト支援システム及びテスト支援用アプリケーションプログラム」JP2008-040537 “GUI Test Support System and Test Support Application Program” 特開2006−127000「プログラム遠隔起動装置及び方法並びにプログラム」JP2006-127000 “Program Remote Start Device and Method and Program”

しかしながら、テストケース(テスト内容)の一連のテスト操作の中に手動操作が含まれると、自動的な操作を行うことができないため、テスト操作の実行を中断しなければならず、手動操作を行った後、残りのテストケースの実行を再開する必要がある。
通常、ログイン、変数入力、オブジェクトのクリック操作などの手動操作はテスト対象プログラム(テストマシン)毎に別々のタイミングで発生する。このため、複数のテスト対象プログラム(テストマシン)毎に別々のタイミングで手動操作が発生すると、オペレータが操作を誤り、テストが正常に行われない恐れがある。
本発明は、複数のテスト対象プログラムをテストするに際し、別々のタイミングの手動操作に起因するオペレータの操作誤りを減少させ、テストを効率良く実施することができるプログラムの遠隔テスト実行システムを提供することである。
However, if a manual operation is included in a series of test operations of a test case (test contents), the automatic operation cannot be performed. Therefore, the execution of the test operation must be interrupted, and the manual operation is performed. After that, you need to resume execution of the remaining test cases.
Normally, manual operations such as login, variable input, and object click operations occur at different timings for each test target program (test machine). For this reason, if a manual operation occurs at different timings for each of a plurality of test target programs (test machines), there is a possibility that the operator makes an error in the operation and the test is not performed normally.
An object of the present invention is to provide a remote test execution system for a program that can reduce an operator's operation error due to manual operation at different timings and test efficiently when testing a plurality of programs to be tested. It is.

上記目的を達成するために、本発明に係るプログラムの遠隔テスト実行システムは、テスト対象のプログラムを実装した複数のテストマシンのそれぞれに対しテスト操作情報を配信するコンピュータと、配信されたテスト操作情報に従いテスト対象プログラムのテストを実行する複数のテストマシンから構成された遠隔テスト実行システムにおいて、
前記テスト操作情報を配信するコンピュータが、複数のテストマシンのそれぞれに配信するテスト操作情報から自動操作情報と手動操作指示情報とを抽出し、同一内容の手動操作が複数のテストマシンの全てまたは一部で同じタイミングで実行されるように各テストマシンに対する手動操作指示情報を並べ替える手段と、並べ替えた手動操作指示情報と自動操作情報とからなるテスト操作情報を複数のテストマシンのそれぞれに配信する手段とを備え、
前記複数のテストマシンが、
前記コンピュータから配信されたテスト操作情報に従い各テストマシンに実装されたテスト対象プログラムのテストを実行する手段とを備える
ことを特徴とする。
また、前記コンピュータが、同一の手動操作指示情報による手動操作の内容とその内容のテストを実行するテストマシンの一覧を表示する手段をさらに備えることを特徴とする。
また、前記テストマシンのそれぞれが、手動操作指示情報で示される手動操作内容を操作順に表示する手段をさらに備えることを特徴とする。
To achieve the above object, a remote test execution system for a program according to the present invention includes a computer for distributing test operation information to each of a plurality of test machines on which a program to be tested is mounted, and distributed test operation information. In a remote test execution system composed of a plurality of test machines that execute a test of a test target program according to
The computer that distributes the test operation information extracts the automatic operation information and the manual operation instruction information from the test operation information distributed to each of the plurality of test machines, and the manual operation with the same content is performed on all or one of the plurality of test machines. A means for rearranging manual operation instruction information for each test machine so that the test operation information is executed at the same timing, and distributing test operation information including the rearranged manual operation instruction information and automatic operation information to each of a plurality of test machines And means for
The plurality of test machines are
And means for executing a test of a test target program installed in each test machine in accordance with the test operation information distributed from the computer.
The computer further includes means for displaying a manual operation content based on the same manual operation instruction information and a list of test machines for executing the test of the content.
Each of the test machines further includes means for displaying manual operation contents indicated by the manual operation instruction information in an operation order.

本発明の遠隔テスト実行システムによれば、次のような効果がある。
(1)テスト操作情報を構成する手動操作指示情報を並べ替えることにより、1台以上のテストマシンで同じ手動操作を行う発生頻度が高くなる。
(2)1台以上のテストマシンで同じ手動操作を行う頻度が高くなるため、オペレータによる誤操作が減少し、テストを効率良く実施することができる。
(3)手動操作の手順と、操作が必要なテストマシンの一覧を表示することにより、テストに必要な手動操作の進捗が分かる。
The remote test execution system of the present invention has the following effects.
(1) By rearranging the manual operation instruction information constituting the test operation information, the occurrence frequency of performing the same manual operation on one or more test machines is increased.
(2) Since the frequency of performing the same manual operation on one or more test machines increases, erroneous operations by the operator are reduced, and the test can be performed efficiently.
(3) By displaying a manual operation procedure and a list of test machines that require the operation, the progress of the manual operation necessary for the test can be understood.

以下、本発明を適用した遠隔テスト実行システムの一実施の形態について説明する。
図1は本発明の実施の形態を示すシステム構成図である。
この実施形態のシステムは、コントローラ(101)と呼ばれるコンピュータと、ホストマシン(102)および仮想マシン(103)とで構成されている。
コントローラ(101)は、ホストマシン(102)の複数の仮想マシン(103)にそれぞれ実装されたテスト対象プログラムのテストを行うためのテスト操作情報を配信するコンピュータである。
ホストマシン(102)には、1台以上の仮想マシン(103)が動作する。コントローラ(101)とホストマシン(102)および複数の仮想マシン(103)は、ネットワーク(106)を介して通信する。
ホストマシン(102)にはホストエージェント(106)が動作し、複数の仮想マシン(103)には仮想マシンエージェント(104)が動作する。
コントローラ(101)は、仮想マシンエージェント(104)に対し、テスト操作の命令などの各種情報を送信し、仮想マシンエージェント(104)は命令に基づいて仮想マシン(103)にそれぞれ実装されたテスト対象プログラムのテスト操作を行う。
コントローラ(101)は、ホストエージェント(106)に命令を送信し、仮想マシン(103)の起動やシャットダウン、および初期化を行う。
テスト管理者(108)は、コントローラ(101)上でテスト操作情報を登録し、テストを実行し、テストの進捗及びテスト結果の確認を行う。オペレータ(107)は、仮想マシン(103)上で手動操作指示情報に従い手動操作を行う。
Hereinafter, an embodiment of a remote test execution system to which the present invention is applied will be described.
FIG. 1 is a system configuration diagram showing an embodiment of the present invention.
The system of this embodiment includes a computer called a controller (101), a host machine (102), and a virtual machine (103).
The controller (101) is a computer that distributes test operation information for testing a test target program mounted on each of the plurality of virtual machines (103) of the host machine (102).
One or more virtual machines (103) operate on the host machine (102). The controller (101), the host machine (102), and the plurality of virtual machines (103) communicate via the network (106).
A host agent (106) operates on the host machine (102), and a virtual machine agent (104) operates on the plurality of virtual machines (103).
The controller (101) transmits various kinds of information such as a test operation command to the virtual machine agent (104), and the virtual machine agent (104) is a test target implemented in the virtual machine (103) based on the command. Perform program test operations.
The controller (101) transmits a command to the host agent (106) to start up, shut down, and initialize the virtual machine (103).
The test manager (108) registers the test operation information on the controller (101), executes the test, and checks the progress of the test and the test result. The operator (107) performs a manual operation according to the manual operation instruction information on the virtual machine (103).

図2は、コントローラ(101)、ホストマシン(102)の詳細構成を示す機能ブロック図である。
図2において、テスト情報データベース(1011)には図10〜図14に示すようなテスト操作に関する情報が格納される。
テスト並べ替えロジック部(1012)は、1つ以上のテスト操作情報から手動操作指示情報のみを抽出する機能と、テスト操作情報を並べ替える機能で構成される。
操作配信ロジック部(1013)は、1台以上のテストマシンで同じ手動操作を同じタイミングで実行するように、テスト操作情報の配信を制御する。
FIG. 2 is a functional block diagram showing detailed configurations of the controller (101) and the host machine (102).
In FIG. 2, the test information database (1011) stores information relating to the test operation as shown in FIGS.
The test rearrangement logic unit (1012) includes a function for extracting only manual operation instruction information from one or more pieces of test operation information, and a function for rearranging test operation information.
The operation distribution logic unit (1013) controls the distribution of the test operation information so that the same manual operation is executed at the same timing on one or more test machines.

本発明では、図3に例示するように、複数のテストマシンに対して手動操作とスクリプトによる自動操作で構成されるテスト操作情報を操作配信キューとして配信するが、その配信の際に、同一の手動操作は同じタイミングで実施されるように並べ替えて配信する。
例えば、図3において、「手動1」、「手動2」という手動操作があるが、これら「手動1」、「手動2」の手動操作は同じ(またはほぼ同じ)タイミングで行われるように並び替えて配信する。この場合、タイミングを調整するために図3に空白欄で示す「何もしない」時間帯を挿入している。
なお、「手動1」、「手動2」の具体例は、ログイン、変数入力、クリック操作によるオブジェクト指定、ドラッグ&ドロップなどの操作である。
In the present invention, as illustrated in FIG. 3, test operation information composed of manual operation and automatic operation by script is distributed to a plurality of test machines as an operation distribution queue. Manual operation is rearranged to be performed at the same timing.
For example, in FIG. 3, there are manual operations “manual 1” and “manual 2”, but these “manual 1” and “manual 2” manual operations are rearranged to be performed at the same (or almost the same) timing. And deliver. In this case, in order to adjust the timing, a “do nothing” time zone indicated by a blank column in FIG. 3 is inserted.
Specific examples of “manual 1” and “manual 2” are operations such as login, variable input, object specification by a click operation, and drag and drop.

遠隔命令送信部(1014)は、自動操作情報と手動操作指示情報を遠隔の仮想マシン(103)上のテストマシンエージェント(104)へ配信し、操作結果が失敗であると判断されるときは、以降のテストケースの操作を中断するかどうかの判断を行う。
テストスクリプト(1015)は、遠隔命令送信部(1014)が自動操作情報を配信する際に、テストマシンエージェント(104)が行う動作を定義したファイルである。
テスト(1015)は、図7のテスト操作登録画面のテストスクリプト(702)で設定されるファイルであり、図13のファイルパス(1302)に格納されているファイルである。
エージェントスクリプト(1016)は、遠隔命令送信部(1014)からテストマシンエージェント(104)へ転送され、テストマシンエージェント(104)上で実行されるスクリプトファイルである。テストスクリプト(1015)にエージェントスクリプト(1016)の転送と実行処理が定義されている。
The remote command transmission unit (1014) distributes the automatic operation information and the manual operation instruction information to the test machine agent (104) on the remote virtual machine (103), and when the operation result is determined to be unsuccessful, Determine whether to interrupt the subsequent test case operations.
The test script (1015) is a file that defines operations performed by the test machine agent (104) when the remote command transmission unit (1014) distributes automatic operation information.
The test (1015) is a file set in the test script (702) on the test operation registration screen in FIG. 7, and is a file stored in the file path (1302) in FIG.
The agent script (1016) is a script file that is transferred from the remote command transmission unit (1014) to the test machine agent (104) and executed on the test machine agent (104). Transfer and execution processing of the agent script (1016) is defined in the test script (1015).

テストマシンエージェント(104)は、遠隔命令送信部(1014)から配信されたテスト操作情報に基づき、自動操作と手動操作によるテストを仮想マシン(103)上で実行する。
自動操作時は、テストスクリプト(1015)に記述された命令に基づいて動作し、エージェントスクリプト(1016)が転送された場合はエージェントスクリプト(1016)を実行する。実行結果はテストマシンエージェント(104)から遠隔命令送信部(1014)へ返信される。
手動操作時は、手動操作説明表示部(1032)により、コントローラ(101)の手動操作配信部(1018)へ手動操作内容の要求を行い、手動操作の表示を行う。
The test machine agent (104) executes a test by an automatic operation and a manual operation on the virtual machine (103) based on the test operation information distributed from the remote command transmission unit (1014).
At the time of automatic operation, it operates based on an instruction described in the test script (1015), and when the agent script (1016) is transferred, the agent script (1016) is executed. The execution result is returned from the test machine agent (104) to the remote command transmission unit (1014).
During manual operation, the manual operation explanation display unit (1032) requests the manual operation content to the manual operation distribution unit (1018) of the controller (101), and displays the manual operation.

コントローラ(101)の手動操作配信部(1018)は、要求のあった手動操作の内容に従い、操作手順HTMLファイル(1019)を読み出し、操作結果返信フォームを結合して、手動操作内容を生成する。手動操作内容は、図9に示す内容である。
操作結果返信フォームは、図30に示すHTMLコードで定められ、図9の902、903、904が示す手動操作の結果を送信するフォームである。
手動操作配信部(1018)は、生成した手動操作手順内容を手動操作説明表示部(1032)に伝達する。
The manual operation distribution unit (1018) of the controller (101) reads the operation procedure HTML file (1019) according to the requested manual operation content, and combines the operation result reply form to generate the manual operation content. The manual operation content is the content shown in FIG.
The operation result reply form is a form that is determined by the HTML code shown in FIG. 30 and transmits the result of manual operation indicated by 902, 903, and 904 in FIG.
The manual operation distribution unit (1018) transmits the generated manual operation procedure content to the manual operation explanation display unit (1032).

オペレータ(107)は、手動操作説明表示部(1032)に基づいて手動操作を行う。オペレータ(107)による手動操作が終了すると、操作結果を図9の902、903、904が示す手動操作の結果送信フォームから送信し、手動操作配信部(1018)が結果を受信する。結果は、実行結果データベース(1017)に記録され、遠隔命令送信部(1014)に伝達される。   The operator (107) performs a manual operation based on the manual operation explanation display unit (1032). When the manual operation by the operator (107) is completed, the operation result is transmitted from the manual operation result transmission form indicated by 902, 903, and 904 in FIG. 9, and the manual operation distribution unit (1018) receives the result. The result is recorded in the execution result database (1017) and transmitted to the remote command transmission unit (1014).

遠隔命令送信部(1014)は手動操作の結果から、操作が失敗したのであれば、テスト操作情報による以降の操作を配信するかどうかを判断し、操作が成功したのであれば、それ以降のテスト操作情報を配信する。
ホストエージェント(105)はホストマシン(102)ごとに1つ存在する。遠隔命令送信部(1014)の命令を元に、仮想マシン(103)の起動、シャットダウン、初期化処理を行う。
The remote command transmission unit (1014) determines from the result of manual operation whether the subsequent operation based on the test operation information is to be delivered if the operation is unsuccessful, and if the operation is successful, the subsequent test is performed. Deliver operation information.
One host agent (105) exists for each host machine (102). Based on the command of the remote command transmission unit (1014), the virtual machine (103) is started, shut down, and initialized.

図4はテスト管理者(108)がコントローラ(101)上で仮想マシン(103)を登録する画面である。テスト実行マシン一覧(401)に、登録された仮想マシンの一覧が表示され、テストが配信される。「追加」ボタン(402)で、仮想マシンを追加し、「登録」ボタン(403)で登録される。   FIG. 4 is a screen in which the test administrator (108) registers the virtual machine (103) on the controller (101). A list of registered virtual machines is displayed in the test execution machine list (401), and the test is distributed. A virtual machine is added with the “Add” button (402) and registered with the “Register” button (403).

図5は、テストケース管理画面である。
テストケースの追加は「テストケース追加」ボタン(502)を押す。テストを実行するときは、実行するテストを選択し、「テストケース実行」ボタン(501)を押す。テストの実行結果ログは、503でテストを選択すると左ペイン(504)に結果一覧が表示される。
FIG. 5 is a test case management screen.
To add a test case, press the “Add test case” button (502). When executing the test, the test to be executed is selected, and the “execute test case” button (501) is pressed. The test execution result log is displayed in the left pane (504) when a test is selected in 503.

図6は、テストケースへのテスト操作の追加を行う画面であり、図5の「テストケース追加」ボタン(502)を押したときに表示される。
テストケースは、テストツールを使用して自動的に実行できる自動操作と、テストツールによって操作できない手動操作の組み合わせで構成される。テストケースに含まれる操作の追加は、「操作追加」ボタン(603)で行う。追加されたテストケースは、操作一覧602に表示される。テストケースの操作の設定が完了すると、「登録」ボタン(604)で登録を行う。
FIG. 6 is a screen for adding a test operation to a test case, which is displayed when the “Add Test Case” button (502) in FIG. 5 is pressed.
The test case is composed of a combination of an automatic operation that can be automatically executed by using the test tool and a manual operation that cannot be operated by the test tool. The operation included in the test case is added by an “add operation” button (603). The added test case is displayed in the operation list 602. When the setting of the test case operation is completed, registration is performed with the “Register” button (604).

図7は、テストケースの自動操作または手動操作の追加画面であり、図6の「操作追加」ボタン(602)を押したときに表示される。
自動操作または手動操作を選択(701)する。自動操作を選択した場合、テストツールを実行するためにテストスクリプト(702)を指定する。テストツールによる操作結果の成否を判断するため、正常終了時のテストスクリプトの戻り値を「戻り値」(703)に指定する。実際の戻り値を703の値と比較することで自動操作が正常に終了したかどうかの判断を行う。自動操作が正常に終了しなかったとき、以降のテストケースの操作を取りやめるには、704にチェックを入れる。
テストケースに追加する操作が手動操作の場合は、手動操作の手順が記述されたHTMLファイルのURL(705)を指定する。手動操作が正常に行われなかったときに、以降のテストケースの操作を取りやめるには、706のチェックの情報を元に判断する。
FIG. 7 is a screen for adding a test case automatic operation or manual operation, which is displayed when the “add operation” button (602) in FIG. 6 is pressed.
Automatic operation or manual operation is selected (701). When automatic operation is selected, a test script (702) is designated to execute the test tool. In order to determine the success or failure of the operation result by the test tool, the return value of the test script at the normal end is designated as “return value” (703). By comparing the actual return value with the value of 703, it is determined whether or not the automatic operation has ended normally. To cancel the subsequent test case operation when the automatic operation is not completed normally, check 704.
When the operation added to the test case is a manual operation, the URL (705) of the HTML file in which the manual operation procedure is described is designated. In order to cancel the subsequent operation of the test case when the manual operation is not normally performed, a determination is made based on the check information in 706.

図8は、テストケースを実行するときの手動操作の手順および手動操作を行う仮想マシンの一覧を示す画面であり、図5の「テストケース実行」ボタン(501)を押すと表示される。
手動操作手順(801)は、手動操作の順序(804)と、手動操作を行う仮想マシンの一覧(805)を示す。テストを行う際、次に行う手動操作または現在行う手動操作は、矢印(802)で示され、手動操作とテストマシンの一覧は、枠(803)で囲まれ表示される。
テスト管理者(108)は手動操作手順(801)の情報を元にテストの進捗と、手動操作を行うテストマシンを確認できる。また、テストケース全体の進捗を示す棒グラフ(806)が表示され、テストの進捗を確認する。
FIG. 8 is a screen showing a manual operation procedure when executing a test case and a list of virtual machines performing the manual operation, and is displayed when the “execute test case” button (501) in FIG. 5 is pressed.
The manual operation procedure (801) shows the order of manual operations (804) and a list of virtual machines that perform manual operations (805). When a test is performed, a manual operation to be performed next or a manual operation to be currently performed is indicated by an arrow (802), and a list of manual operations and a test machine is surrounded and displayed by a frame (803).
The test manager (108) can confirm the progress of the test and the test machine performing the manual operation based on the information of the manual operation procedure (801). In addition, a bar graph (806) indicating the progress of the entire test case is displayed, and the progress of the test is confirmed.

図9は、仮想マシン(103)の表示部に表示される手動操作の手順内容および手動操作の操作結果を送信するフォームである。
手動操作手順(901)に手動操作の指示内容が表示されている。オペレータ(107)は901の内容に基づいて手動操作を行う。手動操作が完了すると、手動操作の結果をコントローラ(101)に返信するため、「問題なく完了」ボタン(903)または「問題が発生し終了」ボタン(902)を押す。補足事項があれば、「コメント記入欄」(904)に記入する。
FIG. 9 is a form for transmitting the manual operation procedure contents and the manual operation result displayed on the display unit of the virtual machine (103).
The manual operation instruction content is displayed in the manual operation procedure (901). The operator (107) performs a manual operation based on the contents of 901. When the manual operation is completed, in order to return the result of the manual operation to the controller (101), the “complete without problem” button (903) or the “end when problem occurs” button (902) is pressed. If there is any supplementary matter, enter it in the “Comment entry field” (904).

図10は、テストマシン(仮想マシン)の一覧を格納したデータ構造の一例であり、1001は一意な値であり、1002にテストマシン名が格納される。   FIG. 10 shows an example of a data structure storing a list of test machines (virtual machines), where 1001 is a unique value and the test machine name is stored in 1002.

図11は、テストケース名を格納するデータ構造の一例であり、テストID(1101)は一意な値である。1102にテストケース名が格納される。   FIG. 11 shows an example of a data structure for storing the test case name, and the test ID (1101) is a unique value. A test case name is stored in 1102.

図12は、テストケースに含まれる操作情報を格納したデータ構造の一例である。
操作ID(1201)は一意な値である。テストID(1202)は、1101と外部キーの関係にある。前操作ID(1203)は、以前の操作ID(1201)の値が外部参照し、以前の操作IDがないときは別の値(NULLや0など)が格納される。
操作名は1005に格納される。手動操作であり自動操作でないことを示すため、手動操作フラグ(1205)にTrue、Falseなどの値が格納される。手動操作フラグ(1205)には図7の701の設定情報が格納される。
内容ID(1206)は、手動操作フラグ(1205)の値が手動操作を示すのであれば図14の内容ID(1401)を外部参照する。1205の値が自動操作であれば、図13の内容ID(1301)を外部参照する。
戻り値(1207)は自動操作または手動操作が成功したときの戻り値を示し、操作実行後の戻り値と比較することで、操作の成功・失敗を判断する。自動操作の戻り値(1207)の場合、図7の703の値が格納される。
エラー時中断フラグ(1208)は、操作が失敗したときテストケースを中断するかどうかを示すフラグを指す。エラー時中断フラグ(1208)は、図7の704、706の設定が入力される。
FIG. 12 is an example of a data structure storing operation information included in a test case.
The operation ID (1201) is a unique value. The test ID (1202) has a relationship between 1101 and a foreign key. The previous operation ID (1203) is externally referred to by the value of the previous operation ID (1201), and when there is no previous operation ID, another value (such as NULL or 0) is stored.
The operation name is stored in 1005. In order to indicate that it is a manual operation and not an automatic operation, values such as True and False are stored in the manual operation flag (1205). The manual operation flag (1205) stores setting information 701 in FIG.
If the value of the manual operation flag (1205) indicates a manual operation, the content ID (1206) refers to the content ID (1401) of FIG. 14 externally. If the value 1205 is an automatic operation, the content ID (1301) in FIG. 13 is externally referenced.
A return value (1207) indicates a return value when the automatic operation or the manual operation is successful, and the success / failure of the operation is determined by comparing with a return value after the operation is executed. In the case of the return value (1207) of the automatic operation, the value 703 in FIG. 7 is stored.
The error interruption flag (1208) indicates a flag indicating whether or not to interrupt the test case when the operation fails. The error interruption flag (1208) is input with the settings of 704 and 706 in FIG.

図13は、自動操作で使用するテストスクリプト情報が格納されるデータ構造の一例である。内容ID(1301)は一意な値である。テストスクリプトのファイルパスは1302に格納される。1302には図7のスクリプトパス(702)が設定される。   FIG. 13 is an example of a data structure in which test script information used in automatic operation is stored. The content ID (1301) is a unique value. The file path of the test script is stored in 1302. The script path (702) of FIG.

図14は、手動操作のドキュメントファイル情報が格納されるデータ構造の一例である。
内容ID(1401)は一意な値である。1402はコントローラ(101)のローカルディスクに存在するHTMLファイルのパスが入力される。1401には、図7の705の情報が格納される。
FIG. 14 shows an example of a data structure in which manually operated document file information is stored.
The content ID (1401) is a unique value. Reference numeral 1402 denotes a path of an HTML file existing on the local disk of the controller (101). 1401 stores information 705 in FIG. 7.

図15は、テストケースの操作を実行した後の結果ログを格納するデータ構造の一例である。
記録ID(1351)は一意な値を示す。
操作ID(1502)は、図12の操作ID(1201)と外部キーの関係にある。前操作ID(1503)は以前の操作IDを示し、図12の操作ID(1201)と外部キーの関係にある。操作開始日時(1504)は操作を開始したときの日時を示し、操作終了日時(1505)は操作終了時の日時を示す。操作の戻り値は1506に格納される。操作が成功したときは、成功(1507)フラグにTrueまたはFalseが格納される。コメント(1508)は手動操作時のコメントが格納される。手動操作の場合、図9の「問題が発生し終了」(902)またはまたは「問題なく終了」(903)の情報が戻値(1506)に格納され、コメント情報(904)がコメント(1508)に格納される。
FIG. 15 shows an example of a data structure for storing a result log after the test case operation is executed.
The record ID (1351) indicates a unique value.
The operation ID (1502) has a relationship between the operation ID (1201) of FIG. The previous operation ID (1503) indicates the previous operation ID, and is in a relationship between the operation ID (1201) in FIG. 12 and the external key. The operation start date and time (1504) indicates the date and time when the operation is started, and the operation end date and time (1505) indicates the date and time when the operation ends. The return value of the operation is stored in 1506. When the operation is successful, True or False is stored in the success (1507) flag. A comment (1508) stores a comment at the time of manual operation. In the case of manual operation, the information of “End with problem” (902) or “End without problem” (903) in FIG. 9 is stored in the return value (1506), and the comment information (904) is the comment (1508). Stored in

図16は、テストマシンを追加する際の処理の流れを示すフローチャートである。
図4の画面からテストマシンが追加されると(ステップ1601)、コントローラ(101)はテスト実行マシンの一覧を図10の形式でデータベースに登録する(ステップ1602)。
FIG. 16 is a flowchart showing the flow of processing when adding a test machine.
When a test machine is added from the screen of FIG. 4 (step 1601), the controller (101) registers a list of test execution machines in the database in the format of FIG. 10 (step 1602).

図17は、テストケースの追加と、テストケースに含まれる自動操作または手動操作を追加する際の処理の流れを示すフローチャートである。
図6のテスト操作管理画面でテストケースを追加し、図7のテスト操作登録画面で自動操作または手動操作を追加するときの処理の流れである。
テストケース名は、図11のテスト名(1102)に登録され、自動操作と手動操作の内容は、図12、図13、図14に登録される。
コントローラ(101)は、テスト名が入力され(ステップ1701)、操作の追加を行うか否かに応じて自動操作または手動操作の内容が入力されると(ステップ1702,1703)、テスト名、自動操作・手動操作の一覧をデータベースに登録する(ステップ1704)。
FIG. 17 is a flowchart illustrating a process flow when adding a test case and adding an automatic operation or a manual operation included in the test case.
7 is a flow of processing when a test case is added on the test operation management screen of FIG. 6 and an automatic operation or a manual operation is added on the test operation registration screen of FIG.
The test case name is registered in the test name (1102) of FIG. 11, and the contents of the automatic operation and the manual operation are registered in FIG. 12, FIG. 13, and FIG.
When the test name is input to the controller (101) (step 1701) and the contents of the automatic operation or manual operation are input according to whether or not the operation is added (steps 1702 and 1703), the test name, automatic A list of operations / manual operations is registered in the database (step 1704).

図18は、手動操作をなるべく同時にテストマシンに配信できるようにテストケースを並べ替える処理の流れを示し、図14のテスト並べ替えロジック部(1012)の処理のフローチャートである。個々では、テストケースから手動操作を抽出(ステップ1801)し、テストを並べ替える処理を行う(ステップ1802)。   FIG. 18 is a flowchart of the process of the test rearrangement logic unit (1012) in FIG. 14, showing the flow of the process of rearranging the test cases so that manual operations can be distributed to the test machine as simultaneously as possible. Individually, a manual operation is extracted from the test case (step 1801), and the process of rearranging the tests is performed (step 1802).

図19は、図18の手動操作抽出処理(ステップ1801)の処理の流れを示すフローチャートである。手動操作抽出処理(ステップ1901)の処理を行うと、テストケースの手動操作が得られる。テストケースごとに操作を取得(ステップ1902)し、手動操作であれば(ステップ1903、1904)、その手動操作を格納(ステップ1905)する。この処理を最後のテストケースになるまで繰り返す(ステップ1906,1907,1908)。   FIG. 19 is a flowchart showing a process flow of the manual operation extraction process (step 1801) of FIG. When the manual operation extraction process (step 1901) is performed, a manual operation of the test case is obtained. An operation is acquired for each test case (step 1902), and if it is a manual operation (steps 1903 and 1904), the manual operation is stored (step 1905). This process is repeated until the last test case is reached (steps 1906, 1907, 1908).

図20は、図18のテスト並べ替え操作(ステップ1802)の処理を示すフローチャートである。
図18の処理により抽出された手動操作を元に、テストケースの並べ替えを行う。
「テストの並べ替え(K,テスト一覧)」のKは、K番目の操作で並べ替えを行うことを示す。「テストの並べ替え(K,テスト一覧)」は、再起的に処理(ステップ2007)を行う。全てのテストを最初の操作(K=1)から順に、テストの並べ替え(ステップ2003)を行う。K番目の操作が同じであるテストを、更に「テストの並べ替え(K+1,テスト一覧)」(ステップ2007)によって、K+1番目の操作でソートする。操作がなくなるまで繰り返すと、全てのテストケースの並べ替えが行われる。
まず、K番目の操作がある場合には(ステップ2002)、「テスト一覧」のテストの順番をK番目の操作でソートする(ステップ2003)。次に、K番目の操作の種類を抽出し(ステップ2004)、K番目の操作の種類を順に選択する(ステップ2005)。
FIG. 20 is a flowchart showing the process of the test rearrangement operation (step 1802) of FIG.
Based on the manual operation extracted by the process of FIG. 18, the test cases are rearranged.
“K of test rearrangement (K, test list)” indicates that rearrangement is performed in the Kth operation. “Test rearrangement (K, test list)” is performed recursively (step 2007). All tests are rearranged in order from the first operation (K = 1) (step 2003). Tests with the same K-th operation are further sorted by the (K + 1) -th operation by “test rearrangement (K + 1, test list)” (step 2007). If you repeat until there are no operations, all the test cases are sorted.
First, when there is a Kth operation (step 2002), the test order in the “test list” is sorted by the Kth operation (step 2003). Next, the type of the Kth operation is extracted (step 2004), and the type of the Kth operation is selected in order (step 2005).

次に、テスト一覧2に対し、K番目の操作が、選択した操作に一致するテストを抽出する(ステップ2006)。
次に、テスト一覧3に対し、テストの並べ替え(K+1, テスト一覧2)を行い(ステップ2007)、次に「テスト一覧3」で「テスト一覧」の「テスト一覧2」のテストを置換する(ステップ2008)。
次に、K番目の操作のうち選択していない操作がないかどうかを判定し(ステップ2009)、ない場合には「テスト一覧」を返し(ステップ2010)、ある場合にはステップ2005に戻り、処理を繰り返す。
Next, a test in which the Kth operation matches the selected operation is extracted from the test list 2 (step 2006).
Next, test rearrangement (K + 1, test list 2) is performed on the test list 3 (step 2007), and then the test of “test list 2” in “test list” is replaced with “test list 3”. (Step 2008).
Next, it is determined whether or not there is an unselected operation among the Kth operations (step 2009). If there is no operation, “test list” is returned (step 2010). If there is, the process returns to step 2005. Repeat the process.

図21は、並び替えられたテストケースから、自動操作または手動操作を順に配信処理を行うフローチャートである。
図12の操作配信ロジック部(1013)の処理を示す。
図8の手動操作一覧(801)は、図21〜図25の処理を行った後の操作配信キューの結果から得られる。
まず、並び替えられたテストケースの最初(ステップ2101)から、空いている操作配信キューに割り当てる(ステップ2106)。
1つ以上の操作配信キューのうち、1つをカレントキューに指定し(ステップ2105)、カレントキューの手動操作に合わせて他の操作配信キューの手動操作を配信する(ステップ2110)。ここで手動操作の前に自動操作が存在していたときは配信しておく(ステップ2109)。
FIG. 21 is a flowchart for performing distribution processing in order of automatic operation or manual operation from the rearranged test cases.
The process of the operation delivery logic part (1013) of FIG. 12 is shown.
The manual operation list (801) in FIG. 8 is obtained from the result of the operation distribution queue after the processing in FIGS.
First, from the beginning of the rearranged test cases (step 2101), it is assigned to an empty operation distribution queue (step 2106).
One of the one or more operation distribution queues is designated as the current queue (step 2105), and the manual operation of the other operation distribution queue is distributed in accordance with the manual operation of the current queue (step 2110). If there is an automatic operation before the manual operation, it is distributed (step 2109).

まず、テスト番号Tを“0”に初期化する(ステップ2101)。
次に、テスト番号Tは総テスト件数より小さいか否かを判定し(ステップ2102)、小さい場合はステップ2103に進み、大きい場合には終了する。
ステップ2103では、操作配信キューのキュー番号Qを初期化する。
次に、キューを順にループし、キュー番号Q≧0、かつキュー番号Q<テストマシン数かを判定し(ステップ2104)、そうであればカレントキューCQの処理を行い(ステップ2105)、そうでなければステップ2102に戻る。
ステップ2105の処理を行った後、キュー番号Qの操作配信キューにテスト番号Tのテストケースを割り当てる処理を行い(ステップ2106)、キュー番号Qに割り当てられているテスト番号TNを求める(ステップ2107)。
次に、キュー番号Qの操作配信キューにテストケースが割り当てられているかを判定し(ステップ2108)、割り当てられているならば、テスト番号TNのテストケースの自動操作を配信する処理を行う(ステップ2109)。割り当てられていない場合にはステップ2100に進む。
ステップ2109の後、テスト番号TNのテストケースの手動操作を配信する処理を行い(ステップ2110)、次の操作配信キューを選択し(ステップ2111)、ステップ2104に戻る。
First, the test number T is initialized to “0” (step 2101).
Next, it is determined whether or not the test number T is smaller than the total number of tests (step 2102). If smaller, the process proceeds to step 2103, and if larger, the process ends.
In step 2103, the queue number Q of the operation distribution queue is initialized.
Next, the queue is sequentially looped to determine whether the queue number Q ≧ 0 and the queue number Q <the number of test machines (step 2104). If so, the current queue CQ is processed (step 2105). If not, return to Step 2102.
After performing the process of step 2105, a process of assigning a test case of test number T to the operation delivery queue of queue number Q is performed (step 2106), and a test number TN assigned to queue number Q is obtained (step 2107). .
Next, it is determined whether or not a test case is assigned to the operation delivery queue with the queue number Q (step 2108). If assigned, a process for delivering the automatic operation of the test case with the test number TN is performed (step 2108). 2109). If not assigned, the process proceeds to step 2100.
After step 2109, processing for distributing the manual operation of the test case with test number TN is performed (step 2110), the next operation distribution queue is selected (step 2111), and the processing returns to step 2104.

図22は、図21の操作配信キューの中からカレントキューCQを選択する処理(ステップ2105)の流れを示すフローチャートである。
個々では、カレントキューCQの操作をすべて配信したかどうかを判定し(ステップ2201)、配信していたならばカレントキューCQ番号を次の操作配信キューに移し(ステップ2202)、カレントキューCQ番号が最後のキュー番号であるときは初期値に戻す処理(ステップ2203)を行って終了する。
FIG. 22 is a flowchart showing a flow of processing (step 2105) for selecting the current queue CQ from the operation delivery queue of FIG.
Individually, it is determined whether or not all operations of the current queue CQ have been distributed (step 2201), and if distributed, the current queue CQ number is moved to the next operation distribution queue (step 2202), and the current queue CQ number is determined. If it is the last queue number, the process returns to the initial value (step 2203) and the process ends.

図23は、図21のキュー番号Qの操作配信キューにテスト番号Tのテストを割り当てる処理(ステップ2106)の処理の流れを示すフローチャートである。
ここでは、操作配信キューの操作を全て配信したのであれば(ステップ2301)、配信されていないテストケースが存在することを確認し(ステップ2304)、その操作配信キューに次のテストケースを割り当てる(ステップ2305)。配信されていないテストケースがなければ、操作配信キューを空にする(ステップ2306)。
FIG. 23 is a flowchart showing the flow of processing (step 2106) for assigning a test with test number T to the operation delivery queue with queue number Q in FIG.
Here, if all operations in the operation distribution queue have been distributed (step 2301), it is confirmed that there is a test case that has not been distributed (step 2304), and the next test case is assigned to the operation distribution queue (step 2304). Step 2305). If there is no undelivered test case, the operation distribution queue is emptied (step 2306).

詳しくは、キュー番号Qの操作配信キューに割り当てられたテストケースが終了している、または割り当てられていないかを判定し(ステップ2301)、終了している、または割り当てられていないならば、操作番号OPNを“0”に初期化し(ステップ2302)、テスト番号TをT+1に繰り上げる(ステップ2303)。
次に、テスト番号Tのテストケースが存在し、かつテスト番号T≦総テスト件数であるかを判定し(ステップ2304)、そうであれば、キュー番号Qの操作配信キューに、テスト番号Tのテストケースを割り当てる(ステップ2305)。そうでなければ、キュー番号Qの操作配信キューを空にする(ステップ2306)。
Specifically, it is determined whether the test case assigned to the operation delivery queue of the queue number Q is finished or not assigned (step 2301). If the test case is finished or not assigned, the operation is performed. The number OPN is initialized to “0” (step 2302), and the test number T is incremented to T + 1 (step 2303).
Next, it is determined whether there is a test case with the test number T and the test number T ≦ the total number of tests (step 2304). If so, the operation distribution queue with the queue number Q has the test number T. A test case is assigned (step 2305). Otherwise, the operation distribution queue with the queue number Q is emptied (step 2306).

図24は、図21におけるテスト番号TNのテストケースの自動操作を配信する処理(2109)を示すフローチャートである。
ここでは、テストケースの操作の中で、次に配信する操作が自動操作であれば(ステップ2402)、次に配信する操作が手動操作になるまで操作配信キューに入れる(ステップ2403)。テストケースの残りの操作がなくなった時は終了する(ステップ2405)。
FIG. 24 is a flowchart showing a process (2109) for distributing the automatic operation of the test case with the test number TN in FIG.
Here, in the test case operation, if the operation to be distributed next is an automatic operation (step 2402), the operation is queued until the operation to be distributed next is a manual operation (step 2403). When there are no more test case operations, the process ends (step 2405).

詳しくは、テスト番号TNの操作番号OPNで示される操作内容OPを取得し(ステップ2401)、操作内容OPは自動操作であるかを判定し(ステップ2402)、自動操作であれば操作内容OPをキュー番号Qの操作配信キューに入れる(ステップ2403)。
次に、テスト番号TNの次の操作番号OPNで示される操作内容OPを取得し(ステップ2404)、テスト番号TNの操作がなく、かつテストケースが終了したかを判定し(ステップ2405)、そうであれば処理を終了する。
ステップ2402において、操作内容OPが自動操作でなければ処理を終了する。
Specifically, the operation content OP indicated by the operation number OPN of the test number TN is acquired (step 2401), and it is determined whether the operation content OP is an automatic operation (step 2402). It puts in the operation delivery queue of queue number Q (step 2403).
Next, the operation content OP indicated by the operation number OPN next to the test number TN is acquired (step 2404), and it is determined whether there is no operation of the test number TN and the test case has ended (step 2405). If so, the process ends.
In step 2402, if the operation content OP is not an automatic operation, the process is terminated.

図25は、図21におけるテスト番号TNのテストケースの手動操作を配信する処理(2110)を示すフローチャートである。
ここでは、操作配信キューがカレントキューであれば(ステップ2502)、手動操作を操作配信キューに入れる(ステップ2506)。操作配信キューがカレントキューでなければ(ステップ2502)、カレントキューである操作配信キューの手動操作と比較し(ステップ2505)、同じであれば手動操作を操作配信キューに入れる(ステップ2506)。
FIG. 25 is a flowchart showing a process (2110) for distributing the manual operation of the test case with the test number TN in FIG.
Here, if the operation distribution queue is the current queue (step 2502), the manual operation is put into the operation distribution queue (step 2506). If the operation distribution queue is not the current queue (step 2502), it is compared with the manual operation of the operation distribution queue which is the current queue (step 2505). If the operation distribution queue is the same, the manual operation is put into the operation distribution queue (step 2506).

詳しくは、テスト番号TNのテストケースが終了していないかを判定し(ステップ2501)、終了していないときはキュー番号Qとカレントキュー番号CQは一致していないかを判定し(ステップ2502)、一致しているならばステップ2506に進む。
しかし、一致しているならば、次にカレントキューCQにテストケースが割り当てられ、かつテストケースは終了していないかを判定し(ステップ2503)、そうであれば、カレントキューCQに割り当てられたテストケースの手動操作COPを取得する(ステップ2504)。そして、キュー番号Qの操作内容OPと手動操作COPが同じであるかを判定し(ステップ2505)、そうであれば、操作内容OPをキュー番号Qの操作配信キューに入れる(ステップ2506)。次に、操作番号OPNを「操作番号OPN+1」としてテストケースの操作を進める(ステップ2507)。
ステップ250において、テストケースが終了していた場合は処理を終了する。また、ステップ2505において、キュー番号Qの操作内容OPと手動操作COPが同じでない場合には処理を終了する。
Specifically, it is determined whether the test case of test number TN has not ended (step 2501), and if it has not ended, it is determined whether queue number Q and current queue number CQ do not match (step 2502). If they match, the process proceeds to step 2506.
However, if they match, it is next determined whether a test case is assigned to the current queue CQ and the test case has not ended (step 2503). If so, the test case is assigned to the current queue CQ. A manual operation COP of the test case is acquired (step 2504). Then, it is determined whether the operation content OP of the queue number Q and the manual operation COP are the same (step 2505). If so, the operation content OP is placed in the operation distribution queue of the queue number Q (step 2506). Next, the operation of the test case is advanced with the operation number OPN as “operation number OPN + 1” (step 2507).
In step 250, if the test case has ended, the process ends. In step 2505, if the operation content OP of the queue number Q and the manual operation COP are not the same, the process ends.

図26は、図2の遠隔命令送信部(1014)での処理の流れを示すフローチャートである。
ここでは図21から図25までの処理により得られた操作配信キューからテスト操作情報を配信し(ステップ2605)、操作の実行結果を得て、以降の操作を中断するかどうかを判断する(ステップ2603、ステップ2607)。
FIG. 26 is a flowchart showing the flow of processing in the remote command transmission unit (1014) of FIG.
Here, the test operation information is distributed from the operation distribution queue obtained by the processing from FIG. 21 to FIG. 25 (step 2605), the execution result of the operation is obtained, and it is determined whether or not the subsequent operation is interrupted (step). 2603, step 2607).

詳しくは、SkipTestをNULLに初期化した後(ステップ2601)、操作配信キューの操作OPと操作OPに対応するテスト番号Tを得る(ステップ2602)。
次に、テスト番号Tはスキップ対象のテストではないか(テスト番号T≠SkipTest)を判定し(ステップ2603)、スキップ対象のテストではない場合には、SkipTestをNULLに初期化し(ステップ2604)、次に、操作OPを操作配信キューに対応したエージェント104に配信する(ステップ2605)。
次に、操作OPの実行結果を得(ステップ2606)、操作OPの実行結果が失敗、かつ操作失敗時にテストを中断する設定があるかを判定し(ステップ2607)、そうでなければステップ2609に進む。
しかし、操作OPの実行結果が失敗、かつ操作失敗時にテストを中断する設定がある場合には、SkipTestにテスト番号Tを設定し、スキップ対象のテストに指定する(ステップ2608)。
次に、操作配信キューの操作OPと操作OPに対応するテスト番号Tを得る(ステップ2609)。
Specifically, after SkipTest is initialized to NULL (step 2601), an operation OP in the operation distribution queue and a test number T corresponding to the operation OP are obtained (step 2602).
Next, it is determined whether the test number T is not a skip target test (test number T ≠ SkipTest) (step 2603). If the test number T is not a skip target test, the SkipTest is initialized to NULL (step 2604). Next, the operation OP is distributed to the agent 104 corresponding to the operation distribution queue (step 2605).
Next, the execution result of the operation OP is obtained (step 2606), and it is determined whether the execution result of the operation OP has failed and there is a setting for interrupting the test when the operation fails (step 2607). move on.
However, if the execution result of the operation OP fails and there is a setting for interrupting the test when the operation fails, the test number T is set in SkipTest and designated as the skip target test (step 2608).
Next, an operation OP in the operation distribution queue and a test number T corresponding to the operation OP are obtained (step 2609).

図27は、図21から図25までの処理により得られた操作配信キューから、図8の手動操作手順一覧801を生成するフローチャートである。
ここでは、全ての操作配信キューから操作内容を取得し(ステップ2701)、手動操作であれば(ステップ2703)、手動操作を配信するテストマシンと対応付けて、操作手順一覧に追加する(ステップ7605)。
FIG. 27 is a flowchart for generating the manual operation procedure list 801 of FIG. 8 from the operation distribution queue obtained by the processes of FIGS.
Here, the operation content is acquired from all operation distribution queues (step 2701), and if it is a manual operation (step 2703), it is added to the operation procedure list in association with the test machine that distributes the manual operation (step 7605). ).

詳しくは、全ての操作配信キューから操作を得る(ステップ2701)。次に、操作配信キューに操作が残っているかを判定し(ステップ2702)、残っていなければ処理を終了する。
しかし、残っているならば、次に手動操作であるかを判定し(ステップ2703)、そうであれば手動操作を行う操作配信キューから操作を行うテストマシンを求める(ステップ2704)。
次に、手動操作と操作を行うテストマシンを対応付け、一覧に追加する(ステップ2705)。
Specifically, operations are obtained from all operation distribution queues (step 2701). Next, it is determined whether or not there is an operation remaining in the operation distribution queue (step 2702).
However, if it remains, it is determined whether it is a manual operation next (step 2703), and if so, a test machine that performs the operation is obtained from the operation distribution queue that performs the manual operation (step 2704).
Next, the manual operation and the test machine that performs the operation are associated and added to the list (step 2705).

図28は、テストマシンエージェント(104)に手動操作の命令が届いたときの、テストマシンエージェント(104)と手動操作説明表示部(1032)の処理の流れを示すフローチャートである。
ここでは、手動操作説明表示部(1032)は、手動操作配信部(1018)へ手動操作手順を要求し(ステップ2802)、得られた手動操作の内容を順にテストマシンのデスクトップ上に表示する(ステップ2803)。オペレータ(107)は表示された手動操作内容に基づき手動操作を行う(ステップ2804)。手動操作が完了すると、オペレータは結果をフォームから返信する(ステップ2806)。手動操作配信部(1018)は、手動操作結果を受信し(ステップ2807)、その結果を元に遠隔命令送信部(1014)は以降のテストケースの操作を続行するか判断する(ステップ2807)。
FIG. 28 is a flowchart showing a processing flow of the test machine agent (104) and the manual operation explanation display unit (1032) when a manual operation instruction arrives at the test machine agent (104).
Here, the manual operation explanation display unit (1032) requests a manual operation procedure from the manual operation distribution unit (1018) (step 2802), and sequentially displays the contents of the obtained manual operation on the desktop of the test machine ( Step 2803). The operator (107) performs a manual operation based on the displayed manual operation content (step 2804). When the manual operation is completed, the operator returns the result from the form (step 2806). The manual operation distribution unit (1018) receives the manual operation result (step 2807), and based on the result, the remote command transmission unit (1014) determines whether or not to continue the subsequent test case operation (step 2807).

詳しくは、テストマシンエージェント(104)は手動操作手順を表示する命令を受信する(ステップ2801)。そして、手動操作説明表示部(1032)は手動操作配信部(118)へ手動手順の要求を出す(ステップ2802)。
次に、手動操作内容が届き、その内容を手動操作説明表示部(1032)に表示する(ステップ2803)。
オペレータは表示された手動操作内容のうち現在の時点で操作すべき指示マークがある手動操作内容の手動操作を行う(ステップ2804)。
次に、手動操作が完了したかを判定し(ステップ2805)、終了しているならば、オペレータは手動操作結果をフォームから返信する(ステップ2806)。次に、手動操作配信部(1018)は、手動操作の結果を受信する(ステップ2808)。
ステップ2805において、手動操作が完了していない場合には、完了するまで待機する(ステップ2808)。
Specifically, the test machine agent (104) receives a command for displaying a manual operation procedure (step 2801). Then, the manual operation explanation display unit (1032) issues a manual procedure request to the manual operation distribution unit (118) (step 2802).
Next, the manual operation content arrives, and the content is displayed on the manual operation explanation display unit (1032) (step 2803).
The operator manually operates the manual operation content having the instruction mark to be operated at the current time among the displayed manual operation content (step 2804).
Next, it is determined whether the manual operation has been completed (step 2805). If the operation has been completed, the operator returns a manual operation result from the form (step 2806). Next, the manual operation distribution unit (1018) receives the result of the manual operation (step 2808).
If the manual operation is not completed in step 2805, the process waits until it is completed (step 2808).

図29は、図2の手動操作配信部(1018)に手動操作説明表示部(1032)から手動操作手順の要求があったときに、手動操作配信部(1018)が行う処理の流れを示すフローチャートである。
手動操作配信部(1018)は、手動操作説明表示部(1032)から手動操作手順の要求があったとき、操作手順HTMLファイル(1019)を読み出し(ステップ2902)、手動操作結果を返信するためのフォームを挿入(ステップ2904)する。生成された手動操作手順は、手動操作説明表示部(1032)に伝達され(ステップ2905)、仮想マシン(テストマシン)(103)のデスクトップ上に、図9のような形式で表示される。
FIG. 29 is a flowchart showing a flow of processing performed by the manual operation distribution unit (1018) when the manual operation distribution unit (1018) in FIG. 2 receives a manual operation procedure request from the manual operation explanation display unit (1032). It is.
When a manual operation procedure is requested from the manual operation explanation display unit (1032), the manual operation distribution unit (1018) reads out the operation procedure HTML file (1019) (step 2902) and returns a manual operation result. A form is inserted (step 2904). The generated manual operation procedure is transmitted to the manual operation explanation display unit (1032) (step 2905), and is displayed on the desktop of the virtual machine (test machine) (103) in the format shown in FIG.

詳しくは、仮想マシン(103)から特定のWebページを開き(ステップ2901)、該当する操作手順HTMLファイルを読み出す(ステップ2902)。
次に、手動操作結果をコントローラ(101)に送信するためのHTMLコードを生成し(ステップ2803)、</BODY>タグの直前に挿入する(ステップ2904)。そして、HTMLコードをテストマシンエージェント(104)に送信する(ステップ2905)。
図9の手順本文(901)は、操作手順HTMLファイル(1019)の内容であり、結果送信のためのフォーム(902、903、904)は、挿入された図30のHTMLコードである。
Specifically, a specific web page is opened from the virtual machine (103) (step 2901), and the corresponding operation procedure HTML file is read (step 2902).
Next, an HTML code for transmitting the manual operation result to the controller (101) is generated (step 2803) and inserted immediately before the </ BODY> tag (step 2904). Then, the HTML code is transmitted to the test machine agent (104) (step 2905).
The procedure text (901) of FIG. 9 is the contents of the operation procedure HTML file (1019), and the forms (902, 903, 904) for transmitting the results are the inserted HTML codes of FIG.

図30は、図29のHTMLコード挿入処理(ステップ2904)により挿入されるHTMLコードの例ある。仮想マシン(103)のデスクトップ上では、図9の操作結果送信のためのフォーム(902、903、904)として表示される。   FIG. 30 shows an example of an HTML code inserted by the HTML code insertion process (step 2904) of FIG. On the desktop of the virtual machine (103), it is displayed as a form (902, 903, 904) for transmitting the operation result in FIG.

以降、自動操作と手動操作で組み合わされたテストケースの例を説明する。
図31は、自動操作と手動操作で組み合わされたテストケースの例を示す図である。
左列がテストケース名を示す。横軸が、テストに必要な操作の順番を示し、操作名が「自動」で始まる場合は自動操作を示し、操作名が「手動」で始まる場合は手動操作であることを示す。
例えばテストケース名=テスト1の操作順序については、「自動2」、「自動3」、「手動1」、「手動1」の順で操作が行われることを示している。
Hereinafter, an example of a test case combined with automatic operation and manual operation will be described.
FIG. 31 is a diagram illustrating an example of a test case combined with an automatic operation and a manual operation.
The left column shows the test case name. The horizontal axis indicates the order of operations required for the test. When the operation name starts with “automatic”, it indicates an automatic operation, and when the operation name starts with “manual”, it indicates a manual operation.
For example, the operation order of test case name = test 1 indicates that operations are performed in the order of “auto 2”, “auto 3”, “manual 1”, and “manual 1”.

図32は、図31のテストケースから手動操作のみを抽出した操作一覧であり、図19に示すフローチャートの処理を行った結果であり、テストケースは並び替えられていない。   FIG. 32 is an operation list in which only manual operations are extracted from the test case of FIG. 31, and is a result of performing the processing of the flowchart shown in FIG. 19, and the test cases are not rearranged.

図33は、図32の手動操作の抽出結果を元に、テストケースの並び替えを行った図である。図20に示すフローチャートの処理を行った結果である。   FIG. 33 is a diagram in which the test cases are rearranged based on the extraction result of the manual operation of FIG. It is the result of having performed the process of the flowchart shown in FIG.

図34は、図33のテストケースの並べ替え順序を元に、図31のテストケースを並べ替えた図である。   FIG. 34 is a diagram in which the test cases of FIG. 31 are rearranged based on the rearrangement order of the test cases of FIG.

図35は、図34の並べ替えられたテストケースを元に、図21から図25までのフローチャートの処理を行ったときの、操作配信キューを示す図である。
図35では操作配信キューが3つ存在することを想定している。テストケース名の下線は、カレントキューであることを示し、操作配信キューのテストケースが終了するとカレントキューが移り変わる様子を示している。カレントキューの手動操作に合わせて他の操作配信キューの手動操作の配信のタイミングがずらされている状況を示している。
FIG. 35 is a diagram showing an operation distribution queue when the processes of the flowcharts of FIGS. 21 to 25 are performed based on the rearranged test cases of FIG.
In FIG. 35, it is assumed that there are three operation distribution queues. The underline of the test case name indicates that it is the current queue, and shows that the current queue changes when the test case of the operation distribution queue is completed. This shows a situation in which the timing of distribution of manual operations of other operation distribution queues is shifted in accordance with the manual operation of the current queue.

図36は、図35の操作配信キューの情報を元に、手動操作の順序と手動操作を行うテストマシンの一覧を示す図である。図36の手動操作の情報を元に、図8の手動操作手順一覧801が表示される。   FIG. 36 is a diagram showing the order of manual operations and a list of test machines that perform manual operations based on the information in the operation distribution queue of FIG. Based on the manual operation information in FIG. 36, the manual operation procedure list 801 in FIG. 8 is displayed.

以上説明した実施形態によれば、
(1)テスト操作情報を構成する手動操作指示情報を並べ替えることにより、1台以上のテストマシンで同じ手動操作を行う発生頻度が高くなる。
(2)1台以上のテストマシンで同じ手動操作を行う頻度が高くなるため、オペレータによる誤操作が減少し、テストを効率良く実施することができる。
(3)手動操作の手順と、操作が必要なテストマシンの一覧を表示することにより、テストに必要な手動操作の進捗が分かるという効果がある。
According to the embodiment described above,
(1) By rearranging the manual operation instruction information constituting the test operation information, the occurrence frequency of performing the same manual operation on one or more test machines is increased.
(2) Since the frequency of performing the same manual operation on one or more test machines increases, erroneous operations by the operator are reduced, and the test can be performed efficiently.
(3) By displaying a manual operation procedure and a list of test machines that need to be operated, there is an effect that the progress of the manual operation necessary for the test can be known.

なお、上記実施形態においては、複数のテスト対象プログラムを複数の仮想マシンに実装してテストを実施しているが、仮想マシンでなく、独立したマシンで実施する場合であっても同様に適用できることは言うまでもない。   In the above-described embodiment, a plurality of test target programs are mounted on a plurality of virtual machines and the test is performed. However, the present invention can be applied to a case where the test is performed not on a virtual machine but on an independent machine. Needless to say.

本発明の一実施の形態を示すシステム構成図である。1 is a system configuration diagram showing an embodiment of the present invention. 図1のコントローラ、テストマシンエージェントの詳細構成を示す機能ブロック図である。It is a functional block diagram which shows the detailed structure of the controller of FIG. 1, and a test machine agent. 同一の手動操作内容の手動操作が同じタイミングで実行されるように手動操作指示情報を並べ替えた例を示す説明図である。It is explanatory drawing which shows the example which rearranged manual operation instruction information so that manual operation of the same manual operation content may be performed at the same timing. テストマシンを登録する際の画面例を示す図である。It is a figure which shows the example of a screen at the time of registering a test machine. テストケースを追加し、テストケースの実行結果を参照するためのテスト管理画面の例を示す図である。It is a figure which shows the example of the test management screen for adding a test case and referring the execution result of a test case. テストケースに含まれる操作を追加するための画面例を示す図である。It is a figure which shows the example of a screen for adding operation contained in a test case. 自動操作、手動操作を設定するための画面例を示す図である。It is a figure which shows the example of a screen for setting automatic operation and manual operation. テストケースの手動操作およびテストマシンの一覧と、テストの進捗を示す画面例を示す図である。It is a figure which shows the manual operation of a test case, the list of test machines, and the example of a screen which shows the progress of a test. テストマシン上に表示される手動操作手順と結果返信フォームの表示例を示す図である。It is a figure which shows the example of a manual operation procedure displayed on a test machine, and the example of a display of a result reply form. テストマシン情報のデータ構成図である。It is a data block diagram of test machine information. テストケース名のデータ構成図である。It is a data block diagram of a test case name. テストの操作情報を格納するデータ構成図である。It is a data block diagram which stores the operation information of a test. テストスクリプトファイルのパスを格納するデータ構成図である。It is a data block diagram which stores the path | pass of a test script file. 手動操作手順ファイルのパスを格納するデータ構成図である。It is a data block diagram which stores the path | route of a manual operation procedure file. テスト操作の結果を記録するデータ構成図である。It is a data block diagram which records the result of test operation. テストマシンの登録処理を行うフローチャートである。It is a flowchart which performs the registration process of a test machine. テストケース及びテスト操作を登録するフローチャートである。It is a flowchart which registers a test case and test operation. テスト操作並べ替えを行うフローチャートである。It is a flowchart which performs test operation rearrangement. 手動操作情報の抽出を行うフローチャートである。It is a flowchart which extracts manual operation information. 手動操作情報に基づきテストケースを並べ替えるフローチャートである。It is a flowchart which rearranges a test case based on manual operation information. テストケースの操作情報を配信する際の操作配信キューへの操作の割り当てを示すフローチャートである。It is a flowchart which shows assignment of the operation to the operation delivery queue at the time of delivering the operation information of the test case. カレントキューの割り当て処理を示すフローチャートである。It is a flowchart which shows the allocation process of a current queue. 操作配信キューにテストケースを割り当てるための処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process for assigning a test case to an operation delivery queue. テストケースの自動操作情報を配信するための処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process for delivering the automatic operation information of a test case. テストケースの手動操作指示情報を配信するための処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process for delivering the manual operation instruction information of a test case. 操作配信キューの処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of an operation delivery queue. 操作配信キューから手動操作と配信するテストマシン一覧を求める処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process which calculates | requires manual operation and the test machine list to deliver from the operation delivery queue. テストマシン上での手動操作手順の表示と、操作結果の返信処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the display of the manual operation procedure on a test machine, and the return process of an operation result. 手動操作手順のHTMLコードを生成する際の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process at the time of producing | generating the HTML code of a manual operation procedure. 手動操作結果の返信フォームのHTMLコードの例を示す図である。It is a figure which shows the example of the HTML code of the reply form of a manual operation result. 操作配信キューの処理の流れを示すためのテストの例を示す図である。It is a figure which shows the example of the test for showing the flow of a process of an operation delivery queue. テストから手動操作のみが抽出されたテストの例を示す図である。It is a figure which shows the example of the test from which only manual operation was extracted from the test. 手動操作によってソートされたテストの例を示す図である。It is a figure which shows the example of the test sorted by manual operation. ソートされたテストの自動操作と手動操作の例を示す図である。It is a figure which shows the example of the automatic operation and manual operation of the sorted test. 操作配信キューにテスト操作を配信したときの例を示す図である。It is a figure which shows an example when test operation is delivered to the operation delivery queue. 操作配信キューから手動操作が必要な仮想マシンを示す例を示す図である。It is a figure which shows the example which shows the virtual machine which needs manual operation from the operation delivery queue.

符号の説明Explanation of symbols

101 コントローラ
102 ホストマシン
103 仮想マシン(テストマシン)
104 テストマシンエージェント
105 ホストエージェント
107 オペレータ
108 テスト管理者
1011 テスト情報データベース
1012 テスト並べ替えロジック部
1013 操作配信ロジック部
1014 遠隔命令送信部
1015 テストスクリプト
1016 エージェントスクリプト
1017 実行結果データベース
1018 手動操作配信部
1019 操作手順HTMLファイル
1032 手動操作説明表示部
101 Controller 102 Host machine 103 Virtual machine (test machine)
104 Test Machine Agent 105 Host Agent 107 Operator 108 Test Manager 1011 Test Information Database 1012 Test Rearrangement Logic Unit 1013 Operation Distribution Logic Unit 1014 Remote Command Transmission Unit 1015 Test Script 1016 Agent Script 1017 Execution Result Database 1018 Manual Operation Distribution Unit 1019 Operation Procedure HTML file 1032 Manual operation explanation display section

Claims (3)

テスト対象のプログラムを実装した複数のテストマシンのそれぞれに対しテスト操作情報を配信するコンピュータと、配信されたテスト操作情報に従いテスト対象プログラムのテストを実行する複数のテストマシンから構成されたプログラムの遠隔テスト実行システムにおいて、
前記テスト操作情報を配信するコンピュータが、複数のテストマシンのそれぞれに配信するテスト操作情報から自動操作情報と手動操作指示情報とを抽出し、同一内容の手動操作が複数のテストマシンの全てまたは一部で同じタイミングで実行されるように各テストマシンに対する手動操作指示情報を並べ替える手段と、並べ替えた手動操作指示情報と自動操作情報とからなるテスト操作情報を複数のテストマシンのそれぞれに配信する手段とを備え、
前記複数のテストマシンが、
前記コンピュータから配信されたテスト操作情報に従い各テストマシンに実装されたテスト対象プログラムのテストを実行する手段とを備える
ことを特徴とするプログラムの遠隔テスト実行システム。
A remote of a program composed of a computer that distributes test operation information to each of a plurality of test machines that implement the program to be tested, and a plurality of test machines that execute tests of the test target program according to the distributed test operation information In the test execution system,
The computer that distributes the test operation information extracts the automatic operation information and the manual operation instruction information from the test operation information distributed to each of the plurality of test machines, and the manual operation with the same content is performed on all or one of the plurality of test machines. A means for rearranging manual operation instruction information for each test machine so that the test operation information is executed at the same timing, and distributing test operation information including the rearranged manual operation instruction information and automatic operation information to each of a plurality of test machines And means for
The plurality of test machines are
A program remote test execution system comprising: means for executing a test of a test target program installed in each test machine in accordance with test operation information distributed from the computer.
前記コンピュータが、
同一の手動操作指示情報による手動操作の内容とその内容のテストを実行するテストマシンの一覧を表示する手段をさらに備えることを特徴とする請求項1に記載のプログラムの遠隔テスト実行システム。
The computer is
The remote test execution system for a program according to claim 1, further comprising means for displaying a manual operation content by the same manual operation instruction information and a list of test machines for executing the test of the content.
前記テストマシンのそれぞれが、手動操作指示情報で示される手動操作内容を操作順に表示する手段をさらに備えることを特徴とする請求項1または2に記載のプログラムの遠隔テスト実行システム。   3. The program remote test execution system according to claim 1, wherein each of the test machines further includes means for displaying manual operation contents indicated by manual operation instruction information in an operation order.
JP2008186165A 2008-07-17 2008-07-17 Remote test execution system for programs Expired - Fee Related JP4906805B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008186165A JP4906805B2 (en) 2008-07-17 2008-07-17 Remote test execution system for programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008186165A JP4906805B2 (en) 2008-07-17 2008-07-17 Remote test execution system for programs

Publications (2)

Publication Number Publication Date
JP2010026706A JP2010026706A (en) 2010-02-04
JP4906805B2 true JP4906805B2 (en) 2012-03-28

Family

ID=41732498

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008186165A Expired - Fee Related JP4906805B2 (en) 2008-07-17 2008-07-17 Remote test execution system for programs

Country Status (1)

Country Link
JP (1) JP4906805B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9135150B2 (en) 2013-02-27 2015-09-15 International Business Machines Corporation Automated execution of functional test scripts on a remote system within a unit testing framework
US9582298B2 (en) 2015-03-20 2017-02-28 Amazon Technologies, Inc. Executing commands within virtual machine instances

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0452932A (en) * 1990-06-20 1992-02-20 Nec Corp Program evaluating system
JPH04195436A (en) * 1990-11-28 1992-07-15 Hitachi Ltd Automatic test system for computer system

Also Published As

Publication number Publication date
JP2010026706A (en) 2010-02-04

Similar Documents

Publication Publication Date Title
US8219548B2 (en) Data processing method and data analysis apparatus
US9473558B2 (en) Utilization of target browsers
EP1906305B1 (en) Method and system for data preparation and communication between software applications
WO2019169757A1 (en) Test control and test execution device and method, and computer storage medium
JP5104958B2 (en) Virtual computer system test method, test program, recording medium thereof, and virtual computer system
US6047389A (en) Testing of a software application residing on a hardware component
US20080163003A1 (en) Method and System for Autonomic Target Testing
CN101135989A (en) Automatization test method and device for Web applied system
US20120254662A1 (en) Automated test system and automated test method
US9183038B2 (en) Job management system that determines if master data has been updated, then re-executes a sub-job based on available executing computers and data sharing status
US20170161181A1 (en) Testing support system, and testing support method
JP4906805B2 (en) Remote test execution system for programs
JP2010250583A (en) Program and method for generating application test, and application test device
JP6436705B2 (en) Test execution device, test execution method, and computer program
CN112882957A (en) Test task validity checking method and device
US20090113390A1 (en) Module-code verification layer to automatically validate user input
JP6436704B2 (en) Test execution device, test execution method, and computer program
CN112181485A (en) Script execution method and device, electronic equipment and storage medium
JP6353759B2 (en) Test execution device, test execution method, and computer program
US20130268947A1 (en) Automatically Deriving a Command for Starting a Program in an Operating System of a Computer
JP2009077194A (en) Gateway device, and gateway method of gateway device
TW589525B (en) Checkpointing for recovery of channels in a data processing system
JP7331507B2 (en) Controller, control system and control method
JP2009181240A (en) Workflow processing unit
CN116107897A (en) Code coverage rate statistics method and device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111018

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: 20120105

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120110

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150120

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees