JP5101447B2 - テスト支援システム - Google Patents
テスト支援システム Download PDFInfo
- Publication number
- JP5101447B2 JP5101447B2 JP2008252053A JP2008252053A JP5101447B2 JP 5101447 B2 JP5101447 B2 JP 5101447B2 JP 2008252053 A JP2008252053 A JP 2008252053A JP 2008252053 A JP2008252053 A JP 2008252053A JP 5101447 B2 JP5101447 B2 JP 5101447B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- server
- transaction
- test
- end server
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
図17は、このようなオンラインシステムの一例を示すシステム構成図であり、オンラインシステム80は、Webブラウザプログラムを搭載したクライアント12と、PL(Presentation Logic)サーバ14と、複数のBL(Business Logic)サーバ16(第1のBLサーバ16a〜第3のBLサーバ16c)を備えている。クライアント12−PLサーバ14間、及びPLサーバ14−BLサーバ16間は、通信ネットワークを介して接続されている。
このためPLサーバ14は、画面制御部20と、ディスパッチエンジン21と、コネクタ22を備えている。
またディスパッチエンジン21は、ディスパッチ定義DB24を参照し、リクエストデータ30に対応したトランザクション及び担当BLサーバを特定する機能を果たす。
またコネクタ22は、各BLサーバ16が要求する固有の形式に入力データを変換すると共に、BLサーバ16から送信された処理結果データをPLサーバ14の標準形式に変換する機能を発揮する。このため、BLサーバ16毎に対応のデータ変換部(第1のBLサーバ用データ変換部22a〜第3のBLサーバ用データ変換部22c)が設けられている。
また、既存のオンラインシステムに新たな機能を追加したり、バグの修正を行った場合には、他の既存機能に悪影響(デグレード)が生じていないか等を確認する必要性が生じる。
このため、非特許文献1及び2に示すように、オペレータによる入力作業を軽減するためのツールが幾つか提案されている。
QuickTest ProfessionalインターネットURL:http://www.ashisuto.co.jp/prod/qtp/sum/index.html検索日:平成20年6月4日 SeleniumとはインターネットURL:http://www.thinkit.co.jp/free/article/0705/2/1/検索日:平成20年6月4日
また、各BLサーバ16が管理するデータベース28のバックアップを最初に1回だけとっておけば、これをベースにして任意の地点までの入力を再現することにより、当該地点におけるデータベース28の状態を復元することが可能となる。
このため、BLサーバ16の種類に応じて複数の専用テスタを準備し、それぞれの操作法をオペレータが習得しなければならないという問題があった。
上記の「初回ラン」とは、クライアントから入力されたリクエストデータに基づいて実施される第1回目のオンラインテストを意味している。これに対し「再ラン」とは、データベースに蓄積された初回ラン時のデータに基づいて再演される2回目以降のオンラインテストを意味している。
このためPLサーバ14は、画面制御部20と、ディスパッチエンジン21と、コネクタ22を備えている。
また、ディスパッチエンジン21内には、テスト支援部25が生成されており、PLサーバ14のディスク内に設けられたテスト用DB26を管理している。このテスト支援部25の機能、及びその生成方法については後述する。
例えば、第1のBLサーバ16aがC言語に対応したTPモニタを搭載している場合、第1のBLサーバ用データ変換部22aは、TPモニタ向けのデータ変換機能を備える。また、第2のBLサーバがEJB(Enterprise Java Beans)コンテナを搭載している場合、第2のBLサーバ用データ変換部22bは、EJBコンテナ向けのデータ変換機能を備える。また、第3のBLサーバ16cがCOBOL言語に対応したDB/BCシステムを搭載している場合、第3のBLサーバ用データ変換部22cは、ホストOS向けのデータ変換機能を備える。
初回ラン時には、まずクライアント12からリクエストデータ30が送信される。例えば、オペレータがテストシナリオに従い、検索画面の入力欄に入力装置31を介して検索文字列を入力すると、クライアント12からPLサーバ14に対して、検索のリクエストID及び検索文字列を含んだリクエストデータ30が送信される。
この場合、BEトランザクションID「111」が、検索トランザクション及び第1のBLサーバ16aを特定する情報に該当する。
図示の通り、このテスト用DB26には、各トランザクション単位でリクエストID、PLトランザクションID、BEトランザクションIDからなる制御情報が格納されている。
この場合、BEトランザクションID「222」が、検索トランザクション及び第2のBLサーバ16bを特定する情報に該当する。
この場合、BEトランザクションID「333」が、検索トランザクション及び第3のBLサーバ16cを特定する情報に該当する。
この結果、クライアント12の表示装置33上に処理結果データ32が表示される。
図4は、再ラン時におけるオンラインシステム10のシステム構成図であり、クライアント12や画面制御部20の関与なしに再ランが実行されることを表現している。
まず、テスト端末18からPLトランザクションID「1111」を特定した再ランの指示データが送信されると、これを受けたテスト支援部25は(S40)、再ランの実行範囲を特定する(S41)。ここで、PLトランザクションID「1111」はBEトランザクションID「111」〜「333」を包含する上位概念であるため、テスト支援部25は初回ランと同じ範囲で再ランを行うべきものと判断する。
例えば、テスト端末18からBEトランザクションID「222」を指定した再ランの指示データが送信された場合、図7に示すように、テスト支援部25はテスト用DB26から「222」の入力データであるデータ(2)を取り出し、ディスパッチエンジン21に渡す。
このデータ(3)'は、テスト支援部25によって捕捉され、テスト用DB26におけるBEトランザクションID「222」の再ラン結果データの項目に登録される。
すなわち、各BLサーバ16が管理するデータベース28については、初回ランの直前にバックアップが取られているため、このバックアップされたデータに基づいて必要なトランザクションを順次実行することにより、各データベース28の更新具合をその都度確認することが可能となる。
ここで、図9(a)に示すように、クライアント12から「社員ID=001」を指定した検索リクエストデータ30が送信されると、PLサーバ14経由でこれを受け取ったBLサーバ16は、データベース28から検索条件にマッチしたレコードを抽出し、PLサーバ14経由でクライアント12に検索処理結果データ32を送信することとなるが、この検索処理結果データ32には「更新日時」のデータ項目43が設けられており、データベース28の「最終更新日時」の値である「05/24/10:00」がタイムスタンプとして充填されている。
例えば、図9(b)に示すように、5月24日の14:00にクライアント12から同社員の所属を「営業部」から「総務部」に変更する内容の更新リクエストデータ30が送信される場合、「05/24/10:00」のデータが付加されている。
しかしながら、この楽観的排他ロック機構を備えたオンラインシステムにこのテスト支援システムをそのまま適用すると再ラン時に問題が生じるため、これを回避するための仕組みを講じておく必要がある。以下において、この問題とその回避方法について説明する。
この間、テスト用DB26には、テスト支援部25(図示省略)によって更新リクエストデータ(A)及び更新処理結果データ(B)が格納される。
この間、テスト用DB26には、テスト支援部25によって更新リクエストデータ(C)及び更新結果データ(D)が格納される。
この間、テスト用DB26には、テスト支援部25によって更新結果データ(B)'が格納される。
この間、テスト用DB26には、テスト支援部25によってエラーメッセージ(D)'が再ラン結果データとして記録される。
(1)初回ラン時にテスト用DB26格納された入力データの更新日時と、再ラン時にBLサーバ16によって更新されたデータベースの最終更新日時とが不一致となるため、楽観的排他ロックが発動され、再ラン結果データがエラーとなる。
(2)再ラン結果データの更新日時には再ラン時の現在日時が付与されるため、各トランザクションの処理結果データと再ラン結果データを比較する際に、更新日時の不一致を理由に「比較結果=不一致」と判定されてしまう。
そこで、このテスト支援システムは、更新日時に関して「引継ぎ」及び「マスキング」という手法を適用することにより、上記の問題を解消している。
また、BLサーバ16からPLサーバ14に対しては、更新結果データ(D)'が送信される。この更新結果データ(D)'の更新日時には、最終更新日時である「05/24/23:00」が記録されている。この更新結果データ(D)'は、テスト支援部25によってテスト用DB26の再ラン結果データ項目に登録される。
このマスク処理も、テスト支援部25によって実行される。
図示は省略したが、処理結果データ(D)と再ラン結果データ(D)'との比較時にも、それぞれの更新日時にはマスク処理が施される。
このため、ディスパッチエンジン21用のアプリケーション内にテスト支援部25用のコードを予め組み込んでおくのは好ましくない。
また、本番時とテスト時とではマシン構成や回線容量等の環境が異なる場合が多いため、通常はテスト終了後にアプリケーションの設定を本番用に書き換えることが行われているが、この際にバグが混入する危険性があった。
この上位クラスローダ57は、Java(登録商標)の動作環境であるJ2EE(Java 2 Enterprise Edition)の仕様に基づいて実現されるものであり、この上位クラスローダ57内に配置されたモジュールは、メモリ空間56に展開された全てのアプリケーションから参照できるという特徴を備えている。
このスイッチモジュール58は、スイッチモジュール用のライブラリを予めPLサーバ14の所定のディレクトリに格納しておくことで、JVM(Java Virtual Machine)の起動時に上位クラスローダ57内に自動的に配置される。
まず、ディスパッチエンジン用実行ファイル51を起動させ、メモリ空間56のWARクラスローダ59内にフレームワーク60、固有機能部61、本番設定情報62を配置させる(S51)。J2EEの環境下においては、各WebアプリケーションはWARクラスローダ単位で管理される。
ここで、スイッチモジュール58が存在している場合(S53/YES)、フレームワーク60はテストモードであると認識し、テスト支援部用ライブラリ52を自己のWARクラスローダ59内にロードし(S54)、テスト支援部25を生成する。
この結果、ディスパッチエンジン用実行ファイル51に手を加えることなく、ディスパッチエンジン21を本番仕様に切り替えることが可能となる。
12 クライアント
14 PLサーバ
16 BLサーバ
16a 第1のBLサーバ
16b 第2のBLサーバ
16c 第3のBLサーバ
18 テスト端末
20 画面制御部
21 ディスパッチエンジン
22 コネクタ
22a 第1のBLサーバ用データ変換部
22b 第2のBLサーバ用データ変換部
22c 第3のBLサーバ用データ変換部
25 テスト支援部
26 テスト用データベース
28 データベース
30 リクエストデータ
31 入力装置
32 処理結果データ
33 表示装置
42 「最終更新日時」のデータ項目
43 「更新日時」データ項目
50 PLサーバのディスク領域
51 ディスパッチエンジン用実行ファイル
52 テスト支援部用ライブラリ
53 テスト設定ファイル
54 本番設定ファイル
56 PLサーバのメモリ空間
57 上位クラスローダ
58 スイッチモジュール
59 WARクラスローダ
60 フレームワーク
61 固有機能部
62 本番設定情報
63 テスト用設定情報
Claims (2)
- クライアントと、業務処理を実行する複数のバックエンドサーバと、上記クライアントからのリクエストデータを受け取り、担当のバックエンドサーバに必要な入力データを送信して処理を依頼し、その処理結果データをクライアントに送信するフロントエンドサーバとを備えたオンラインシステムにおいて、
上記フロントエンドサーバが、オンラインテストの初回ラン時に、
(a)クライアントからのリクエストデータを受け付ける処理と、
(b)このリクエストデータに含まれるリクエストIDに対応した複数のトランザクション、各トランザクションを担当するバックエンドサーバ及び各トランザクションの順番を特定する処理と、
(c)上記リクエストデータに含まれた入力データを、最初のトランザクションを担当するバックエンドサーバが要求するデータ形式に変換した後、当該バックエンドサーバに送信する処理と、
(d)データ変換前の入力データを、当該トランザクション及び担当のバックエンドサーバを特定するBEトランザクションIDと関連付けて、テスト用データベースに格納する処理と、
(e)上記バックエンドサーバからトランザクションの処理結果データが送信された場合に、これを標準のデータ形式に変換した上で、上記(d)のBEトランザクションIDと関連付けて上記テスト用データベースに格納する処理と、
(f)上記(e)の標準のデータ形式に変換された処理結果データを、次のトランザクションを担当するバックエンドサーバが要求するデータ形式に変換した後、当該バックエンドサーバに入力データとして送信する処理と、
(g)上記(e)の標準のデータ形式に変換された処理結果データを、当該トランザクション及び担当のバックエンドサーバを特定するBEトランザクションIDと関連付けて、入力データとして上記テスト用データベースに格納する処理と、
(h)上記バックエンドサーバからトランザクションの処理結果データが送信された場合に、これを標準のデータ形式に変換した上で、上記(g)のBEトランザクションIDと関連付けて上記テスト用データベースに格納する処理と、
(i)上記(f)〜(h)の処理を必要回数繰り返し、最終的な処理結果データが得られた時点で、これをリクエストの処理結果データとして上記クライアントに送信する処理を実行し、
同フロントエンドサーバが、オンラインテストの再ラン時には、
(j)特定のBEトランザクションIDを指定した再ラン指示データを受け付ける処理と、
(k)当該BEトランザクションIDに関連付けられた入力データを上記テスト用データベースから取り出し、当該BEトランザクションIDに基づいて特定されるバックエンドサーバが要求するデータ形式に変換した後、当該バックエンドサーバに送信する処理と、
(l)当該バックエンドサーバからトランザクションの処理結果データが送信された場合に、この再ラン結果データを標準のデータ形式に変換した上で、上記(k)のBEトランザクションIDに関連付けて上記テスト用データベースに格納する処理を実行することを特徴とするテスト支援システム。 - 上記フロントエンドサーバが、上記テスト用データベースに格納された初回ラン時の処理結果データと再ラン結果データをトランザクション単位で比較し、その結果を出力する機能を備えたことを特徴とする請求項1に記載のテスト支援システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008252053A JP5101447B2 (ja) | 2008-09-30 | 2008-09-30 | テスト支援システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008252053A JP5101447B2 (ja) | 2008-09-30 | 2008-09-30 | テスト支援システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010086108A JP2010086108A (ja) | 2010-04-15 |
JP5101447B2 true JP5101447B2 (ja) | 2012-12-19 |
Family
ID=42250041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008252053A Expired - Fee Related JP5101447B2 (ja) | 2008-09-30 | 2008-09-30 | テスト支援システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5101447B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5768722B2 (ja) * | 2012-01-06 | 2015-08-26 | 富士通株式会社 | 検証試験のためのプログラム、情報処理方法及び情報処理装置 |
JP5807594B2 (ja) * | 2012-03-19 | 2015-11-10 | 富士通株式会社 | 検証支援プログラム、検証支援方法および検証支援装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04172538A (ja) * | 1990-11-06 | 1992-06-19 | Nec Corp | 検証装置 |
JPH05173968A (ja) * | 1991-12-19 | 1993-07-13 | Nec Corp | オンラインアプリケーションプログラムテスト方法および装置 |
JPH05216706A (ja) * | 1992-01-31 | 1993-08-27 | Nippon Denki Computer Syst Kk | オンライン・シミュレーション・システム |
JP2765549B2 (ja) * | 1995-12-29 | 1998-06-18 | 日本電気株式会社 | コンピュータシステムにおける動作評価システム |
JP2006195709A (ja) * | 2005-01-13 | 2006-07-27 | Hitachi Ltd | Webサービスシステム |
JP4575811B2 (ja) * | 2005-03-10 | 2010-11-04 | 株式会社野村総合研究所 | 電文処理システムのテストデータの生成装置、方法、及びプログラム |
JP4866633B2 (ja) * | 2006-03-10 | 2012-02-01 | 株式会社野村総合研究所 | 画面情報生成方法、画面情報生成システムおよび画面情報生成プログラム |
-
2008
- 2008-09-30 JP JP2008252053A patent/JP5101447B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010086108A (ja) | 2010-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3769223B1 (en) | Unified test automation system | |
US10055339B2 (en) | Methods and systems for testing mobile applications | |
US7895470B2 (en) | Collecting and representing knowledge | |
US7594219B2 (en) | Method and apparatus for monitoring compatibility of software combinations | |
US8997088B2 (en) | Methods and systems for automated deployment of software applications on heterogeneous cloud environments | |
US9471474B2 (en) | Cloud deployment infrastructure validation engine | |
US8312322B2 (en) | System for automated generation of computer test procedures | |
CN109144789B (zh) | 一种重启osd的方法、装置及*** | |
US9892019B2 (en) | Use case driven stepping component automation framework | |
JP2015011372A (ja) | デバッグ支援システム、方法、プログラム及び記録媒体 | |
CN112463421A (zh) | 信息处理*** | |
JP5052472B2 (ja) | プログラムの設定情報切替システム及び切替方法 | |
JP5101447B2 (ja) | テスト支援システム | |
JP5101448B2 (ja) | テスト支援システム | |
US20090158266A1 (en) | Deployment tool for increasing efficiency in a production computer system | |
CN111694724B (zh) | 分布式表格***的测试方法、装置、电子设备及存储介质 | |
JP5039683B2 (ja) | テスト支援システム | |
JP2008269527A (ja) | ファイル構成管理支援システム、装置、プログラム、及びファイル構成管理方法 | |
US20040064784A1 (en) | Document management system, method and computer program | |
JP2009087136A (ja) | 障害修復システムおよび障害修復方法 | |
JP6353759B2 (ja) | テスト実行装置、テスト実行方法およびコンピュータプログラム | |
US11907102B2 (en) | Dynamic debug log enabler for any protection failure jobs | |
CN116361369A (zh) | 数据抽取加载方法及*** | |
CN117289958A (zh) | 更新测试程序所需依赖库以进行装置测试的装置及方法 | |
CN115543381A (zh) | 基于国产cpu环境的信息***版本更新方法、***及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110309 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120626 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120827 |
|
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: 20120925 |
|
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: 20120926 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151005 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
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 |
|
LAPS | Cancellation because of no payment of annual fees |