[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP6006577B2 - Degradation test support system, degradation test support method, and degradation test support program - Google Patents

Degradation test support system, degradation test support method, and degradation test support program Download PDF

Info

Publication number
JP6006577B2
JP6006577B2 JP2012171058A JP2012171058A JP6006577B2 JP 6006577 B2 JP6006577 B2 JP 6006577B2 JP 2012171058 A JP2012171058 A JP 2012171058A JP 2012171058 A JP2012171058 A JP 2012171058A JP 6006577 B2 JP6006577 B2 JP 6006577B2
Authority
JP
Japan
Prior art keywords
name
module
source
modification
database
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
JP2012171058A
Other languages
Japanese (ja)
Other versions
JP2014032447A (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 Systems Ltd
Original Assignee
Hitachi Systems 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 Systems Ltd filed Critical Hitachi Systems Ltd
Priority to JP2012171058A priority Critical patent/JP6006577B2/en
Publication of JP2014032447A publication Critical patent/JP2014032447A/en
Application granted granted Critical
Publication of JP6006577B2 publication Critical patent/JP6006577B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

本発明は、コンピュータのソフトウェアをバージョンアップした際に品質がバージョンアップ前より悪くなることや修正した不具合やバグが再発・復活するデグレードを試験することができるデグレードテスト支援システム、デグレードテスト支援方法及びデグレードテスト支援プログラムに係り、特にデグレードテスト作業工数削減及びデグレード発生時の調査作業工数を削減することができるデグレードテスト支援システム、デグレードテスト支援方法及びデグレードテスト支援プログラムに関する。   The present invention relates to a degradation test support system, a degradation test support method, and a degradation test support system capable of testing a degradation in which the quality of the computer software is worse than that before the upgrade, or a defect or bug that has been corrected and revived. The present invention relates to a degradation test support program, and more particularly, to a degradation test support system, a degradation test support method, and a degradation test support program that can reduce the degradation test work man-hours and the investigation labor when a degradation occurs.

一般にデグレードとは、ソフトウェアをバージョンアップした際に品質がバージョンアップ前より悪くなることや修正した不具合やバグが再発・復活することを意味し、ソフトウェア開発企業等においては、このデグレードが発生したか否かを試験するためのデグレードテストが行われている。   In general, degrading means that when software is upgraded, the quality will be worse than before the upgrade, or defects and bugs that have been corrected will be recurred or revived. A degradation test is conducted to test whether or not.

このデグレードテストに関する技術が記載された文献としては、下記の特許文献1及び2が挙げられ、該特許文献1には、改善前後のプログラムを実行するステップと、改善前プログラムによる実行結果とそのジャーナルを改善前DB(データベース)及び改善前ジャーナルに格納するステップと、改善後プログラムによる実行結果及びそのジャーナルを改善後DB(データベース)並びに改善後ジャーナルとに格納するステップと、改善前後のDB及びジャーナルを比較するステップと、比較の結果、不一致データ項目名が作成済みの改善項目内容DBにあるか否かを判定するステップと、不一致データ項目名があると判定したときに警告を発するステップと、不一致データ項目名が改善対象データ項目にないと判定したときにエラー表示してDBのキーとプログラム改善前後のデータ項目名とプログラム改善前後の内容をデグレード判別結果ファイルに出力するステップとを実行することによって、改修前後プログラムにおける当該プログラムのデグレード有無を効率よく検証及び確認する技術が記載され、特許文献2には、バージョンアップ前の当初ソフトウェアを第1コンピュータシステムに搭載し、検査員がキーボード及びマウスを使ってテストを行い、このテスト結果をコンバートして表示部に表示し、こうして得たテスト手順及びテスト結果をコンバートして第1コンピュータシステム内に電子ファイル化して格納し、バグ検出があれば第3コンピュータシステムに収集したバグ関連情報を第2コンピュータシステム内に格納することによって、当初のソフトウェアのテスト内容を学習すると共に、バージョンアップソフトウェアを第1コンピュータシステムに搭載して同一テストを行う場合は、上記学習結果であるテスト手順を読出して自動的なテストを行い、このテスト結果も、上記ファイル化したテスト結果と比較することでチェックし、バグ関連情報もバグ検出時には利用して点検に供する技術が記載されている。   Documents describing the technology relating to the degradation test include the following Patent Documents 1 and 2, which include a step of executing a program before and after improvement, an execution result of the program before improvement, and its journal. Are stored in the pre-improvement DB (database) and the pre-improvement journal, the execution results of the post-improvement program and the journal are stored in the post-improvement DB (database) and the post-improvement journal, and the DB and journal before and after the improvement. A step of determining whether there is a mismatched data item name in the created improved item content DB as a result of the comparison, a step of issuing a warning when it is determined that there is a mismatched data item name, An error is displayed when it is determined that the mismatched data item name is not in the data item to be improved By executing the DB key, the data item names before and after the program improvement, and the step of outputting the contents before and after the program improvement to the degradation determination result file, the presence or absence of degradation of the program in the program before and after the improvement is efficiently verified and confirmed. The technology is described, and in Patent Document 2, the original software before the upgrade is installed in the first computer system, the inspector performs a test using the keyboard and the mouse, and the test result is converted and displayed on the display unit. Then, the test procedure and test results obtained in this way are converted and stored as an electronic file in the first computer system. If a bug is detected, the bug related information collected in the third computer system is stored in the second computer system. The original software by When learning the test contents and performing the same test by installing the upgrade software in the first computer system, the test procedure as the learning result is read and an automatic test is performed. It describes the technology to check by comparing with the test results, and to use the bug related information when detecting bugs.

特開2005−276040号公報JP 2005-276040 A 特開平8−212108号公報JP-A-8-212108

前述の特許文献1に記載の技術は、改修前後プログラムにおける当該プログラムのデグレード有無を効率よく検証、確認することができ、特許文献2に記載の技術は、改修前後プログラムのテスト内容を電子ファイル化し、デグレード検出を効率的に確認することができるものの、デグレード発生タイミングやデグレード発生箇所を確認することが考慮されておらず、プログラム設計書の見直し及びソースの解析が必要となるという課題と、デグレードが発生したメソッドを参照しているモジュールを確認することが考慮されておらず、影響範囲の特定に漏れが発生する可能性があるという課題があった。   The technique described in Patent Document 1 can efficiently verify and confirm whether the program is degraded in the program before and after the modification. The technique described in Patent Document 2 converts the test contents of the program before and after the modification into an electronic file. Although it is possible to efficiently check for degradation detection, it is not considered to confirm the timing of occurrence of degradation or the location where degradation occurs, and there is a problem that it is necessary to review the program design document and analyze the source. It is not considered to check the module that refers to the method in which the error occurred, and there is a problem that there is a possibility that a leak may occur in specifying the affected range.

特に近年においては、システム開発案件において短納期や高品質化の要求が高まっており、その中で大規模システムの改修作業ではデグレードテストにおける工数が大きなウェイトを占め、デグレードが発生した場合の発生箇所の特定や影響範囲の特定にも膨大な工数が費やされ、工程の圧迫が課題となっている。   In particular, in recent years, there has been an increasing demand for quick delivery and high quality in system development projects. Among them, renovation work for large-scale systems occupies a large weight in the degradation test, and the location where degradation occurs Enormous man-hours are also spent on identifying the impact and the scope of influence, and pressing the process has become an issue.

本発明の目的は、デグレード発生タイミングやデグレード発生箇所を判定すると共にデグレードが発生したメソッドを参照しているモジュールを判定して表示することができるデグレードテスト支援システム、デグレードテスト支援方法及びデグレードテスト支援プログラムを提供することである。 An object of the present invention, degraded test support system capable of displaying to determine the module that refers to methods degraded occurs with determining de grade generation timing or degrade occurrence point, degraded test support method and degraded test To provide a support program.

本発明の他の目的は、デグレードテストの作業工数削減およびデグレードチェックの漏れを防止すること、また、デグレード発生時の調査作業の軽減や手戻り作業の軽減を可能とするデグレードテスト支援システム、デグレードテスト支援方法及びデグレードテスト支援プログラムを提供することである。   Another object of the present invention is to provide a degrading test support system and a degrading system that can reduce the man-hours of the degrading test and prevent omission of the degrading check, and reduce the investigation work and the reworking work when the degrading occurs. To provide a test support method and a degradation test support program.

本発明によるデグレードテスト支援システムは、改修前後のテスト用ソースと改修前後のテスト用オブジェクトコードを生成して改修前後のテスト用オブジェクトコードを実行し、実行結果の変数の値に差異がある前記改修前後のテスト用オブジェクトコードのレコードを抽出し、該抽出したレコードのモジュール名及びメソッド名並びに該抽出したレコードの上位レコードの上位モジュール名及び上位メソッド名を処理フロー情報の階層及び処理順を参照して抽出し、該抽出した複数のモジュール名及びメソッド名並びに上位モジュール名及び上位メソッド名を担当用コンピュータに表示させ、改修後のソースにデグレードが発生したか否かを試験することができる。  The degradation test support system according to the present invention generates the test source code before and after the modification and the test object code before and after the modification, executes the test object code before and after the modification, and has the difference in the value of the execution result variable. Extract the previous and next test object code records, refer to the module name and method name of the extracted record, the upper module name and upper method name of the upper record of the extracted record, and refer to the hierarchy and processing order of the processing flow information The extracted module names and method names and the upper module names and upper method names are displayed on the computer in charge, and it is possible to test whether or not degradation has occurred in the modified source.

また、本発明は、前記第1の特徴のデグレードテスト支援システムにおいて、前記実行結果データベースが、改修前テスト用オブジェクトコードの実行により出力された変数を格納する改修前実行結果データベースと、改修後テスト用オブジェクトコードの実行により出力された変数を格納する改修後実行結果データベースとを含み、
前記実行結果比較部が、改修前実行結果データベース及び改修後実行結果データベース個々のモジュール名とメソッド名と行数と変数名と値のフィールドを等結合し、前記値のフィールドが異なるレコードを実行結果の変数の値に差異があるレコードとして抽出することを第2の特徴とする。
According to the present invention, in the degradation test support system according to the first feature, the execution result database stores a variable output by executing the pre-repair test object code, a post-repair execution result database, and a post-repair test. Including a post-repair execution result database that stores variables output by the execution of object code
The execution result comparison unit equally combines the module name, method name, number of lines, variable name, and value fields of the execution result database before the modification and the execution result database after the modification, and executes the records having different values fields. The second feature is that the records are extracted as records having different values.

また、本発明は、前記何れかの特徴のデグレードテスト支援システムにおいて、前記処理フローデータベースが、改修前ソースのモジュール又はメソッドの階層と処理順とを含む改修前処理フロー情報を格納する改修前処理フローデータベースと、改修後ソースのモジュール又はメソッドの階層と処理順とを含む改修後処理フロー情報を格納する改修後処理フローデータベースとを含み、
前記改修前処理フローデータベースに格納した改修前ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修前シーケンス図を生成し、前記改修後処理フローデータベースに格納した改修後ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修後シーケンス図を生成し、前記実行結果比較部により抽出した実行結果の変数の値に差異があるレコードのモジュール又はメソッドの色を変化させて担当用コンピュータに表示させるシーケンス図生成部を備えることを第3の特徴とする。
Further, the present invention provides the pre-repair process in which the process flow database stores pre-reform process flow information including a hierarchy of modules or methods of a pre-reform source and a process order in the degradation test support system of any of the above features Including a flow database and a post-repair process flow database for storing post-repair process flow information including the hierarchy and processing order of the module or method of the source after refurbishment;
Generate a sequence diagram before modification that expresses the exchange between the module and the method along the time axis based on the hierarchy and processing order of the module or method of the source before modification stored in the processing flow database before modification, and after the modification Based on the hierarchy of the module or method of the modified source stored in the process flow database and the processing order, a sequence diagram after modification is generated that expresses the exchange between the module and the method along the time axis, and the execution result comparison unit A third feature is that it includes a sequence diagram generation unit that changes the color of a module or method of a record having a difference in the value of a variable of the extracted execution result and displays it on a responsible computer.

また、本発明は、前記何れかの特徴のデグレードテスト支援システムにおいて、階層データベースからデグレード発生箇所の対象モジュール名及び対象メソッド名を上位対象モジュール名及び上位対象メソッド名として抽出する上位抽出工程と、前記階層データベースから前記上位対象モジュール名及び上位対象メソッド名を階層構造の親とする下位対象モジュール名及び下位対象メソッド名とを抽出する下位抽出工程と、該下位抽出工程を前記下位対象モジュール名及び下位対象メソッド名がソースの最終行でないと判定するまで繰り返す繰り返し工程とを実行し、前記上位抽出工程及び下位抽出工程によって抽出した対象モジュール名及び対象メソッド名とに基づいてデグレード発生箇所の対象モジュール名及び対象メソッド名が影響を及ぼす呼び出し先一覧情報を作成して表示する呼び出し先一覧抽出部を設けたことを第4の特徴とする。   Further, the present invention, in the degradation test support system of any of the above features, an upper extraction step of extracting the target module name and the target method name of the degradation occurrence location as a higher target module name and a higher target method name from the hierarchical database; A lower extraction step of extracting a lower target module name and a lower target method name having the upper target module name and upper target method name as a parent of the hierarchical structure from the hierarchical database, and the lower extraction step as the lower target module name and A repetition process that repeats until it is determined that the lower target method name is not the last line of the source, and the target module of the degradation occurrence location based on the target module name and the target method name extracted by the upper extraction process and the lower extraction process Name and target method name A fourth characteristic in that a callee list extractor to create and display a boss callee list information.

更に、本発明は、階層構造のモジュール及びメソッドを含む改修後のソースをテストするための担当用コンピュータと接続され、改修前後のソースを格納するソースデータベースと、前記改修前後のソースのモジュール又はメソッドの階層と処理順とを含む処理フロー情報を格納する処理フローデータベースと、前記改修前後のソースの各ステップが参照する変数を格納する実行結果データベースとを備え、前記改修前後のソースを参照して改修後のソースにデグレードが発生したか否かを試験するコンピュータシステムのデグレードテスト支援方法であって、
該コンピュータシステムが、
前記改修前後のソースのステップ毎に処理実行順を出力させる処理順出力機能及び前記ステップで参照可能な変数を出力させる変数値出力機能を埋め込んだ改修前後のテスト用ソースを生成するテスト用ソース生成工程と、
前記改修前後のテスト用ソースから改修前後のテスト用オブジェクトコードを生成するコンパイル工程と、
前記改修前後のテスト用オブジェクトコードを実行し、前記処理順出力機能によって出力された処理フロー情報を前記処理フローデータベースに格納すると共に前記変数値出力機能によって出力された変数を前記実行結果データベースに格納するテスト実行工程と、
前記実行結果データベースから実行結果の変数の値に差異がある前記改修前後のテスト用オブジェクトコードのレコードを抽出し、該抽出したレコードのモジュール名及びメソッド名と、該抽出したレコードの上位レコードの上位モジュール名及び上位メソッド名を前記処理フローデータベースに格納した処理フロー情報の階層及び処理順を参照して抽出し、該抽出した複数のモジュール名及びメソッド名並びに上位モジュール名及び上位メソッド名を担当用コンピュータに表示させる実行結果比較工程とを実行することを第5の特徴とする。
The present invention further includes a source database that is connected to a computer in charge for testing a modified source including hierarchical modules and methods, stores the source before and after the modification, and the module or method of the source before and after the modification. A processing flow database for storing processing flow information including a hierarchy and a processing order, and an execution result database for storing variables referred to by each step of the source before and after the modification, and referring to the source before and after the modification A computer system degradation test support method for testing whether degradation has occurred in a source after refurbishment,
The computer system is
Test source generation for generating a test source before and after renovation in which a processing order output function for outputting a processing execution order for each step of the source before and after the renovation and a variable value output function for outputting a variable that can be referred to in the step are embedded Process,
A compiling step for generating test object code before and after the modification from the test source before and after the modification;
The test object code before and after the modification is executed, the processing flow information output by the processing order output function is stored in the processing flow database, and the variable output by the variable value output function is stored in the execution result database A test execution process,
Extract the test object code records before and after the modification that have a difference in the value of the execution result variable from the execution result database, and extract the module name and method name of the extracted record, and the upper record of the upper record of the extracted record The module name and the upper method name are extracted by referring to the hierarchy and processing order of the processing flow information stored in the processing flow database, and the plurality of extracted module names and method names, the upper module name and the upper method name are for charge. The fifth feature is that the execution result comparison step displayed on the computer is executed.

また、本発明は、前記第5の特徴のデグレードテスト支援方法において、前記実行結果データベースが、改修前テスト用オブジェクトコードの実行により出力された変数を格納する改修前実行結果データベースと、改修後テスト用オブジェクトコードの実行により出力された変数を格納する改修後実行結果データベースとを含み、
前記コンピュータシステムが、前記実行結果比較工程において、改修前実行結果データベース及び改修後実行結果データベース個々のモジュール名とメソッド名と行数と変数名と値のフィールドを等結合し、前記値のフィールドが異なるレコードを実行結果の変数の値に差異があるレコードとして抽出することを第6の特徴とする。
Further, the present invention provides the degradation test support method according to the fifth feature, wherein the execution result database stores a variable output by executing the pre-repair test object code, and a post-repair test. Including a post-repair execution result database that stores variables output by the execution of object code
In the execution result comparison step, the computer system equally combines the module name, method name, number of lines, variable name, and value fields of the execution result database before the modification and the execution result database after the modification. A sixth feature is that different records are extracted as records having different values of execution result variables.

また、本発明は、前記何れかの特徴のデグレードテスト支援方法において、前記処理フローデータベースが、改修前ソースのモジュール又はメソッドの階層と処理順とを含む改修前処理フロー情報を格納する改修前処理フローデータベースと、改修後ソースのモジュール又はメソッドの階層と処理順とを含む改修後処理フロー情報を格納する改修後処理フローデータベースとを含み、
前記コンピュータシステムが、改修前処理フローデータベースに格納した改修前ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修前シーケンス図を生成し、前記改修後処理フローデータベースに格納した改修後ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修後シーケンス図を生成し、前記実行結果比較工程により抽出した実行結果の変数の値に差異があるレコードのモジュール又はメソッドの色を変化させて担当用コンピュータに表示させるシーケンス図生成工程を実行することを第7の特徴とする。
Further, the present invention provides the pre-repair process in which the process flow database stores pre-reform process flow information including a hierarchy of modules or methods of a source or a process before refurbishment in the degradation test support method of any of the above features Including a flow database and a post-repair process flow database for storing post-repair process flow information including the hierarchy and processing order of the module or method of the source after refurbishment;
The computer system generates a pre-repair sequence diagram that expresses the exchange between the module and the method along the time axis based on the hierarchy and processing order of the module or method of the pre-repair source stored in the pre-repair process flow database. , Generating a modified sequence diagram that expresses the exchange between the module and the method along the time axis based on the hierarchy and processing order of the module or method of the modified source stored in the modified processing flow database, and executes the execution A seventh feature is to execute a sequence diagram generation step of changing the color of a module or method of a record having a difference in the value of a variable of an execution result extracted in the result comparison step and causing the computer in charge to display it.

また、本発明は、前記何れかの特徴のデグレードテスト支援方法において、前記コンピュータシステムが、階層データベースからデグレード発生箇所の対象モジュール名及び対象メソッド名を上位対象モジュール名及び上位対象メソッド名として抽出する上位抽出工程と、前記階層データベースから前記上位対象モジュール名及び上位対象メソッド名を階層構造の親とする下位対象モジュール名及び下位対象メソッド名とを抽出する下位抽出工程と、該下位抽出工程を前記下位対象モジュール名及び下位対象メソッド名がソースの最終行でないと判定するまで繰り返す繰り返し工程とを実行し、前記上位抽出工程及び下位抽出工程によって抽出した対象モジュール名及び対象メソッド名とに基づいてデグレード発生箇所の対象モジュール名及び対象メソッド名が影響を及ぼす呼び出し先一覧情報を作成して表示する工程とを実行する呼び出し先一覧抽出を行うことを第8の特徴とする。   According to the present invention, in the degradation test support method according to any one of the above features, the computer system extracts the target module name and the target method name of the degradation occurrence location from the hierarchical database as the upper target module name and the upper target method name. An upper extraction step, a lower extraction step for extracting a lower target module name and a lower target method name having the upper target module name and the upper target method name as a parent of the hierarchical structure from the hierarchical database, and the lower extraction step Iterative process is repeated until it is determined that the lower target module name and the lower target method name are not the last line of the source, and the degradation is performed based on the target module name and the target method name extracted by the upper extraction process and the lower extraction process. Target module name and location To make a call destination list extraction to perform the steps of the target method name to display to create the affect call destination list information is a feature of the eighth.

更に、本発明は、階層構造のモジュール及びメソッドを含む改修後のソースをテストするための担当用コンピュータと接続され、改修前後のソースを格納するソースデータベースと、前記改修前後のソースのモジュール又はメソッドの階層と処理順とを含む処理フロー情報を格納する処理フローデータベースと、前記改修前後のソースの各ステップが参照する変数を格納する実行結果データベースとを備え、前記改修前後のソースを参照して改修後のソースにデグレードが発生したか否かを試験するコンピュータシステムのデグレードテスト支援プログラムであって、
該コンピュータシステムに、
前記改修前後のソースのステップ毎に処理実行順を出力させる処理順出力機能及び前記ステップで参照可能な変数を出力させる変数値出力機能を埋め込んだ改修前後のテスト用ソースを生成するテスト用ソース生成機能と、
前記改修前後のテスト用ソースから改修前後のテスト用オブジェクトコードを生成するコンパイル機能と、
前記改修前後のテスト用オブジェクトコードを実行し、前記処理順出力機能によって出力された処理フロー情報を前記処理フローデータベースに格納すると共に前記変数値出力機能によって出力された変数を前記実行結果データベースに格納するテスト実行機能と、
前記実行結果データベースから実行結果の変数の値に差異がある前記改修前後のテスト用オブジェクトコードのレコードを抽出し、該抽出したレコードのモジュール名及びメソッド名と、該抽出したレコードの上位レコードの上位モジュール名及び上位メソッド名を前記処理フローデータベースに格納した処理フロー情報の階層及び処理順を参照して抽出し、該抽出した複数のモジュール名及びメソッド名並びに上位モジュール名及び上位メソッド名を担当用コンピュータに表示させる実行結果比較機能とを実現させることを第9の特徴とする。
The present invention further includes a source database that is connected to a computer in charge for testing a modified source including hierarchical modules and methods, stores the source before and after the modification, and the module or method of the source before and after the modification. A processing flow database for storing processing flow information including a hierarchy and a processing order, and an execution result database for storing variables referred to by each step of the source before and after the modification, and referring to the source before and after the modification A computer system degradation test support program that tests whether degradation has occurred in the source after refurbishment,
In the computer system,
Test source generation for generating a test source before and after renovation in which a processing order output function for outputting a processing execution order for each step of the source before and after the renovation and a variable value output function for outputting a variable that can be referred to in the step are embedded Function and
A compile function for generating test object code before and after the modification from the test source before and after the modification;
The test object code before and after the modification is executed, the processing flow information output by the processing order output function is stored in the processing flow database, and the variable output by the variable value output function is stored in the execution result database A test execution function to
Extract the test object code records before and after the modification that have a difference in the value of the execution result variable from the execution result database, and extract the module name and method name of the extracted record, and the upper record of the upper record of the extracted record The module name and the upper method name are extracted by referring to the hierarchy and processing order of the processing flow information stored in the processing flow database, and the plurality of extracted module names and method names, the upper module name and the upper method name are for charge. A ninth feature is that an execution result comparison function displayed on a computer is realized.

また、本発明は、前記第9の特徴のデグレードテスト支援プログラムにおいて、前記実行結果データベースが、改修前テスト用オブジェクトコードの実行により出力された変数を格納する改修前実行結果データベースと、改修後テスト用オブジェクトコードの実行により出力された変数を格納する改修後実行結果データベースとを含み、
前記実行結果比較機能において、前記コンピュータシステムに、改修前実行結果データベース及び改修後実行結果データベース個々のモジュール名とメソッド名と行数と変数名と値のフィールドを等結合する機能と、前記値のフィールドが異なるレコードを実行結果の変数の値に差異があるレコードとして抽出させる機能とを実現させることを第10の特徴とする。
According to the present invention, in the degradation test support program according to the ninth feature, the execution result database stores a variable output by executing the object code for the test before modification, a test result after modification, and a test after modification. Including a post-repair execution result database that stores variables output by the execution of object code
In the execution result comparison function, the computer system includes a function for combining the module name, method name, number of lines, variable name, and value fields of the execution result database before the modification and the execution result database after the modification, A tenth feature is to realize a function of extracting records having different fields as records having variable values of execution results.

また、本発明は、前記何れかの特徴のデグレードテスト支援プログラムにおいて、前記処理フローデータベースが、改修前ソースのモジュール又はメソッドの階層と処理順とを含む改修前処理フロー情報を格納する改修前処理フローデータベースと、改修後ソースのモジュール又はメソッドの階層と処理順とを含む改修後処理フロー情報を格納する改修後処理フローデータベースとを含み、
前記コンピュータシステムに、改修前処理フローデータベースに格納した改修前ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修前シーケンス図を生成する機能と、前記改修後処理フローデータベースに格納した改修後ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修後シーケンス図を生成する機能と、前記実行結果比較機能により抽出した実行結果の変数の値に差異があるレコードのモジュール又はメソッドの色を変化させたシーケンス図を担当用コンピュータに表示させる機能を実現させることを第11の特徴とする。
Further, the present invention provides the pre-repair process in which the process flow database stores pre-repair process flow information including a hierarchy of modules or methods of the source or the process and the process order in the degradation test support program of any of the above features Including a flow database and a post-repair process flow database for storing post-repair process flow information including the hierarchy and processing order of the module or method of the source after refurbishment;
The computer system generates a pre-repair sequence diagram that expresses the exchange between the module and the method along the time axis based on the hierarchy of the pre-reform source module or method stored in the pre-reform process flow database and the processing order. Function to generate a sequence diagram after modification that represents the exchange between modules and methods along the time axis based on the function and the hierarchy and processing order of the module or method of the modified source stored in the post-repair processing flow database And a function for displaying on the computer in charge a sequence diagram in which the color of the module or method of the record having a difference in the value of the variable of the execution result extracted by the execution result comparison function is realized. And

また、本発明は、前記何れかの特徴のデグレードテスト支援プログラムにおいて、前記コンピュータシステムに、階層データベースからデグレード発生箇所の対象モジュール名及び対象メソッド名を上位対象モジュール名及び上位対象メソッド名として抽出する上位抽出機能と、前記階層データベースから前記上位対象モジュール名及び上位対象メソッド名を階層構造の親とする下位対象モジュール名及び下位対象メソッド名とを抽出する下位抽出機能と、該下位抽出機能を前記下位対象モジュール名及び下位対象メソッド名がソースの最終行でないと判定するまで繰り返す繰り返し機能とを実行させ、前記上位抽出機能及び下位抽出機能によって抽出した対象モジュール名及び対象メソッド名とに基づいてデグレード発生箇所の対象モジュール名及び対象メソッド名が影響を及ぼす呼び出し先一覧情報を作成して表示機能による呼び出し先一覧抽出機能を実現させることを第12の特徴とする。   Further, according to the present invention, in the degradation test support program having any one of the above characteristics, the target system name and the target method name of the degradation occurrence location are extracted from the hierarchical database as the upper target module name and the upper target method name in the computer system. An upper extraction function, a lower extraction function for extracting a lower target module name and a lower target method name having the upper target module name and the upper target method name as a parent in a hierarchical structure from the hierarchical database, and the lower extraction function The lower function module name and the lower target method name are repeatedly executed until it is determined that the name is not the last line of the source, and the degradation is performed based on the target module name and the target method name extracted by the upper extraction function and the lower extraction function. Target module of occurrence location And twelfth feature of that filename and target method name to realize callee list extraction function according to the display function by creating influence callee list information.

本発明によるデグレードテスト支援システム、デグレードテスト支援方法及びデグレードテスト支援プログラムは、デグレード発生タイミングやデグレード発生箇所を判定することができる。 Degraded test support system according to the present invention, degraded test support method and the degraded test support program can determine the de-grade generation timing or degrade occurrence location.

更に、本発明は、抽出したモジュール名及び対象メソッド名に基づいてデグレード発生箇所の対象モジュール名及び対象メソッド名が影響を及ぼす呼び出し先一覧情報を作成することができる。 Furthermore, the present invention can target module name and the subject method name of degraded occurrence point creates affect callee list information based on the module name and the subject method name that issued extracted.

本発明の実施形態によるデグレードテスト支援システムの構成を示す図である It is a figure which shows the structure of the degradation test support system by embodiment of this invention. 本実施形態によるデグレードテスト支援システムの概略動作を説明するための図である It is a figure for demonstrating schematic operation | movement of the degradation test assistance system by this embodiment. 本実施形態によるソース解析部の処理フローを示す図である It is a figure which shows the processing flow of the source analysis part by this embodiment. 本実施形態によるモジュール関連分析部の処理フローを示す図である It is a figure which shows the processing flow of the module related analysis part by this embodiment. 本実施形態によるモジュール階層分析部の処理フローを示す図である It is a figure which shows the processing flow of the module hierarchy analysis part by this embodiment. 本実施形態によるテスト用ソース生成部の処理フローを示す図である It is a figure which shows the processing flow of the test source production | generation part by this embodiment. 本実施形態による実行結果比較部の処理フローを示す図である It is a figure which shows the processing flow of the execution result comparison part by this embodiment. 本実施形態によるシーケンス図生成部の処理フローを示す図である It is a figure which shows the processing flow of the sequence diagram production | generation part by this embodiment. 本実施形態による呼び出し先の一覧抽出機能部の処理フローを示す図である It is a figure which shows the processing flow of the list extraction function part of the call destination by this embodiment. 本実施形態によるソースデータベースを説明するための図である It is a figure for demonstrating the source database by this embodiment. 本実施形態による変数データベースを説明するための図である It is a figure for demonstrating the variable database by this embodiment. 本実施形態による関連データベースを説明するための図である It is a figure for demonstrating the related database by this embodiment. 本実施形態による階層データベースを説明するための図である It is a figure for demonstrating the hierarchy database by this embodiment. 本実施形態による処理フローデータベースを説明するための図である It is a figure for demonstrating the processing flow database by this embodiment. 本実施形態による実行結果データベースを説明するための図である It is a figure for demonstrating the execution result database by this embodiment. 本実施形態による出力結果が異なる情報を一覧表示する画面イメージ図である It is a screen image figure which displays as a list the information from which the output result by this embodiment differs. 本実施形態によるシーケンス図の表示画面イメージ図である It is a display screen image figure of the sequence diagram by this embodiment. 本実施形態によるソース内容表示画面イメージ図である A source content display screen image diagram of this embodiment. 本実施形態による呼び出し先の抽出一覧画面イメージ図である It is an extraction list screen image figure of the call destination by this embodiment. 本実施形態による画面遷移図である It is a screen transition diagram by this embodiment.

以下、本発明によるデグレードテスト支援方法及びデグレードテスト支援プログラムを実現するデグレードテスト支援システムの一実施形態を図面を参照して詳細に説明する。   Hereinafter, an embodiment of a degradation test support method and a degradation test support system according to the present invention will be described in detail with reference to the drawings.

[構成]
本実施形態によるデグレードテスト支援システムは、図1に示す如く、デグレードテスト担当用のコンピュータ(PC)021とネットワーク90を介して接続されるサーバ001内に構築され、改修前後のプログラムのソースの内容を格納するソースデータベース(DB)015と、該ソースのモジュール又はメソッドが参照する変数の内容を格納する変数データベース(DB)016と、前記モジュール又はメソッドからの呼び出し元及び呼び出し先の情報を格納する関連データベース(DB)017と、プログラムを構成するモジュールの最上位モジュールから最下位モジュールまでの階層情報を格納する階層データベース(DB)018と、改修前後のモジュール又はメソッドの階層と処理順とを含む処理フロー情報を格納する処理フローデータベース(DB)019と、各ステップで参照可能な変数の値を格納する実行結果データベース(DB)020と、改修前後のソースからソース内容及び変数の内容を登録するソース解析部002と、改修前後のソースからメソッド呼び出し箇所を抽出したモジュール関連情報を登録するモジュール関連分析部003と、前記関連DB017から各モジュールの階層情報を登録するモジュール階層分析部004と、改修前後のソースからテスト用ソースを生成するテスト用ソース生成部005と、テスト用ソースから既存の技術を利用してテスト用のオブジェクトコードを生成するコンパイル部006と、実行結果を比較し実行結果の差異が発生した箇所を抽出する実行結果比較部007と、改修前後のシーケンス図を生成するシーケンス図生成部008と、該当モジュールの呼び出し先を抽出する呼び出し先一覧抽出部009とを備える。なお、本実施形態で述べるプログラムとは、階層構造のモジュール及びメソッドを含み、これらモジュール及びメソッドの纏まりをソース(コード)と呼び、階層構造のモジュール及びメソッド間のやりとりを時間軸に沿って表現する図をシーケンス図と呼ぶ。
[Constitution]
The degradation test support system according to the present embodiment is constructed in a server 001 connected to a computer (PC) 021 for degradation testing via a network 90 as shown in FIG. , A source database (DB) 015 that stores information, a variable database (DB) 016 that stores the contents of variables referred to by the source module or method, and information on the caller and callee from the module or method. It includes a related database (DB) 017, a hierarchical database (DB) 018 for storing hierarchical information from the highest module to the lowest module of the modules constituting the program, and the hierarchy and processing order of modules or methods before and after the modification. Process for storing process flow information A raw database (DB) 019, an execution result database (DB) 020 for storing variable values that can be referred to in each step, a source analysis unit 002 for registering source contents and variable contents from sources before and after the modification, and a modification A module relation analysis unit 003 for registering module relation information obtained by extracting method call locations from the previous and subsequent sources, a module hierarchy analysis part 004 for registering hierarchical information of each module from the relation DB 017, and a test source from the sources before and after the refurbishment The test source generation unit 005 for generating the test, the compile unit 006 for generating the test object code from the test source using the existing technology, and comparing the execution results to extract the portion where the difference in the execution results has occurred Execution result comparison unit 007, and a sequence diagram for generating sequence diagrams before and after the modification. Comprising the cans view generation unit 008, and a call destination list extraction unit 009 that extracts the call destination of the corresponding module. The program described in this embodiment includes hierarchical modules and methods, and a group of these modules and methods is called a source (code), and exchanges between hierarchical modules and methods are expressed along a time axis. This figure is called a sequence diagram.

前記ソースDB015は、デグレードテストの対象となるプログラムのソース(コード)を格納するものであって、図10(a)に示す如く、ユニークに採番された識別子であるIDと、バージョンアップ等による改修前(フラグ「0」)と改修後(フラグ「1」)を区別するための区分と、ソースのモジュール名と、ソースの「振る舞い」を表すメソッドのメソッド名と、ソースの行数と、該当行のソースを格納するコードとの各項目情報とから成り、具体的には、図10(b)に示す如く、ID「1」のソースが、区分が「0」、モジュール名が「XXX」、メソッド名が「XXX01」、行数が「1」、コードが「XXX01_step01」であり、ID「2」のソースが、区分が「0」、モジュール名が「XXX」、メソッド名が「XXX01」、行数が「2」、コードが「XXX01_step02」の如く格納されている。   The source DB 015 stores a source (code) of a program to be subjected to a degradation test. As shown in FIG. 10A, an ID that is a uniquely assigned identifier, an upgrade, etc. A classification for distinguishing between before modification (flag “0”) and after modification (flag “1”), a source module name, a method name of a method representing “behavior” of the source, the number of source lines, Each item information including the code for storing the source of the corresponding line, specifically, as shown in FIG. 10B, the source of ID “1” has the classification “0”, and the module name “XXX” ”, The method name is“ XXX01 ”, the number of lines is“ 1 ”, the code is“ XXX01_step01 ”, the source of the ID“ 2 ”is the classification“ 0 ”, the module name is“ XXX ”, and the method name is XXX01 ", the number of rows is" 2 ", the code is stored as" XXX01_step02 ".

前記変数DB016は、前記ソースが実行中に参照する変数名及び変数値を格納するものであって、図11(a)に示す如く、ユニークに採番された識別子であるIDと、バージョンアップ等による改修前(フラグ「0」)と改修後(フラグ「1」)を区別するための区分と、ソースのモジュール名と、ソースの「振る舞い」を表すメソッドのメソッド名と、ソースの行数と、該当行のソースが参照する変数名と、ソースにより宣言されているデータ型と、参照される範囲を表すレベル(他モジュールからの参照可が「1」、同一モジュール内のみで参照可が「2」、当該メソッド内のみで参照可が「3」)との各項目情報とから成り、具体的には、図11(b)に示す如く、ID「3」のソースが、区分が「0」、モジュール名が「YYY」、メソッド名が「yyy01」、行数が「4」、変数名が「v_yyy_02」、データ型が「String」、レベルが「3」であり、ID「4」のソースが、区分が「0」、モジュール名が「YYY」、メソッド名が「yyy02」、行数が「9」、変数名が「v_yyy_03」、データ型が「String」、レベルが「3」の如く格納されている。   The variable DB 016 stores variable names and variable values referred to by the source during execution. As shown in FIG. 11A, an ID that is a uniquely assigned identifier, version upgrade, and the like. Class to distinguish between before (flag “0”) and after modification (flag “1”), the module name of the source, the method name of the method representing the “behavior” of the source, and the number of source lines , The variable name referenced by the source of the corresponding line, the data type declared by the source, and the level indicating the range to be referenced (“1” can be referenced from other modules, “can be referenced only within the same module” 2 ”, which can be referred to only within the method is“ 3 ”). Specifically, as shown in FIG. 11B, the source of ID“ 3 ”has a classification of“ 0 ”. ”And the module name is“ YYY The method name is “yyyy01”, the number of rows is “4”, the variable name is “v_yyy — 02”, the data type is “String”, the level is “3”, the source of the ID “4” is the classification is “0” The module name is “YYY”, the method name is “yyy02”, the number of rows is “9”, the variable name is “v_yyy — 03”, the data type is “String”, and the level is “3”.

前記関連DB017は、呼びだし元の親モジュール又は親メソッドと呼び出し先の子モジュール又は子メソッドとの関連を格納するものであって、図12(a)に示す如く、ユニークに採番された識別子であるIDと、バージョンアップ等による改修前(フラグ「0」)と改修後(フラグ「1」)を区別するための区分と、呼びだし元の親モジュール名と、呼びだし元の親メソッド名と、前記親モジュールの行数を表す親_行数と、呼び出し先のモジュール名である子_モジュール名と、呼び出し先のメソッド名である子_メソッド名との各項目情報とから成り、具体的には、図12(b)に示す如く、ID「1」且つ区分「0」の親モジュール名「XXX」のモジュールの親メソッド名が「xxx01」、親_行数が「4」、子_モジュール名が「YYY」、子_メソッド名が「yyy01」であり、ID「5」且つ区分「0」の親モジュール名「WWW」のモジュールの親メソッド名が「www01」、親_行数が「10」、子_モジュール名が「ZZZ」、子_メソッド名が「zzz01」の如く格納されている。   The relation DB 017 stores the relation between the call-source parent module or parent method and the call-destination child module or child method. As shown in FIG. 12A, the relation DB 017 is a uniquely assigned identifier. A certain ID, a classification for distinguishing before modification (flag “0”) and after modification (flag “1”) by version upgrade, the parent module name of the caller, the parent method name of the caller, It consists of the number of parent_lines that represents the number of rows of the parent module, the child_module name that is the module name of the callee, and each item information of the child_method name that is the method name of the callee. 12B, the parent method name of the module of the parent module name “XXX” with ID “1” and category “0” is “xxx01”, the parent_row number is “4”, and the child_module. The name is “YYY”, the child_method name is “yyyy01”, the parent method name of the module with ID “5” and the parent module name “WWW” of category “0” is “www01”, and the parent_row count is “ 10 ”, the child_module name is“ ZZZ ”, and the child_method name is“ zzzz01 ”.

前記階層DB018は、ソースを構成するモジュール及びメソッド中の最上位モジュール・最上位メソッドから最下位モジュール・最下位メソッドまでの階層構造を格納するものであって、図13(a)に示す如く、ユニークに採番された識別子であるIDと、バージョンアップ等による改修前(フラグ「0」)と改修後(フラグ「1」)を区別するための区分と、プログラム階層構造の最上位のモジュール名を表す基準_モジュール名と、プログラム階層構造の最上位のメソッド名である基準_メソッド名と、プログラムの階層位置を表す階層(最上位モジュールの場合「1」)と、呼び出し元のモジュール名を表す親_モジュール名と、呼び出し元のメソッド名を表す親_メソッド名と、呼び出し元の行数を表す親_行数と、呼び出し先のモジュール名を表す子_モジュール名と、呼び出し先のメソッド名を表す子_メソッド名の各項目情報とから成り、具体的には、図13(b)に示す如く、ID「1」且つ区分「0」のモジュールの基準_モジュール名が「XXX」、基準_メソッド名が「xxx01」、階層が「1」、親_モジュール名が「XXX」、親_メソッド名が「xx01」、親_行数が「4」、子_モジュール名が「YYY」、子_メソッド名が「yyy01」の如く格納されている。   The hierarchical DB 018 stores modules constituting the source and a hierarchical structure from the highest module in the method, the highest method to the lowest module, and the lowest method. As shown in FIG. Uniquely assigned identifier ID, classification for distinguishing before modification (flag “0”) and after modification (flag “1”) due to version upgrade, etc., and the highest module name in the program hierarchy The reference_module name indicating the reference, the reference_method name that is the highest method name of the program hierarchy, the hierarchy indicating the hierarchy position of the program (“1” for the highest module), and the module name of the caller Parent_module name that represents, parent_method name that represents the method name of the caller, parent_row number that represents the number of caller rows, and call destination Each item information includes a child_module name representing a module name and a child_method name representing a callee method name. Specifically, as shown in FIG. 13B, an ID “1” and a classification “ The standard_module name of the module “0” is “XXX”, the standard_method name is “xxx01”, the hierarchy is “1”, the parent_module name is “XXX”, the parent_method name is “xxx01”, and the parent_row The number is stored as “4”, the child_module name is “YYY”, and the child_method name is “yy01”.

前記処理フローDB019は、改修前後のモジュール又はメソッドの階層とステップの処理順とを含む処理フロー情報を格納するものであって、図14(a)に示す如く、ユニークに採番された識別子であるIDと、バージョンアップ等による改修前(フラグ「0」)と改修後(フラグ「1」)を区別するための区分と、プログラムの階層位置を表す階層(最上位モジュールが「1」、次階層が「2」・・・)と、処理が実行される順に割り当てられる連番を表す処理No(処理番号)と、呼び出し元の処理Noを表す上位処理No(上位処理番号)と、実行されたメソッドのモジュール名と、実行されたステップのメソッド名と、実行されたステップの行数と、ステップが実行される前に登録されたレコードを示すフラグである処理前Fと、ステップが実行された後に登録されたレコードを示すフラグである処理後Fと、各ステップの処理時間をms単位で表す時間との各項目情報とから成り、具体的には、図14(b)に示す如く、最初にID「1」・区分「0」・階層「1」・処理No「1」のモジュール名「XXX」の行数「2」のメソッド「xxx01」が実行された後に、ID「2」〜「5」・区分「0」・階層「2」・処理No「2」及び「3」のモジュール名「YYY」のメソッド「yyy01」が実行される等の改修前後の処理フロー情報を格納している。   The processing flow DB 019 stores processing flow information including the hierarchy of modules or methods before and after the modification and the processing order of steps. As shown in FIG. 14 (a), the processing flow DB 019 is a unique numbered identifier. A certain ID, a classification for distinguishing before modification (flag “0”) and after modification (flag “1”) due to version upgrade, etc., and a hierarchy indicating the hierarchical position of the program (the highest module is “1”, the next The hierarchy is “2”..., The process number (process number) indicating the serial number assigned in the order in which the processes are executed, and the upper process number (upper process number) indicating the process number of the caller are executed. The module name of the method, the method name of the executed step, the number of lines of the executed step, and the pre-processing F which is a flag indicating a record registered before the step is executed; It consists of post-processing F, which is a flag indicating a record registered after the step is executed, and item information of time indicating the processing time of each step in ms units. Specifically, FIG. As shown in FIG. 4, after the method “xxx01” having the number of rows “2” of the module name “XXX” of the ID “1”, the category “0”, the hierarchy “1”, and the process number “1” is first executed, Process flow information before and after the modification such as the method “yyy01” of the module name “YYY” of “2” to “5”, the category “0”, the hierarchy “2”, the process numbers “2” and “3” is executed. Is stored.

前記実行結果DB020は、各ステップで参照可能な変数の値を格納するものであって、図15に示す如く、ユニークに採番された識別子であるIDと、バージョンアップ等による改修前(フラグ「0」)と改修後(フラグ「1」)を区別するための区分と、処理が実行された順に割れ当てられる連番と、実行されたメソッドのモジュール名と、実行されたステップのメソッド名と、実行されたステップの行数と、ステップ実行による出力対象の変数名と、ステップ実行による出力対象の変数が要素数の場合に各要素の値を識別するための要素数と、変数の値の各項目情報とから成り、具体的には、図15(a)及び(b)に示す如く格納される。   The execution result DB 020 stores variable values that can be referred to in each step. As shown in FIG. 15, the ID, which is a uniquely assigned identifier, and before refurbishment by version upgrade or the like (flag “ 0 ”) and after modification (flag“ 1 ”), a serial number assigned in the order in which the processes were executed, the module name of the executed method, and the method name of the executed step , The number of executed steps, the name of the variable to be output by step execution, the number of elements for identifying the value of each element when the variable to be output by step execution is the number of elements, and the value of the variable It consists of each item information, and is specifically stored as shown in FIGS. 15 (a) and 15 (b).

[動作]
[全体動作]
次に、前述のように構成されたデグレードテスト支援システムの全体動作を説明するが、このデグレードテスト支援処理は、改修後のソースに大きなエラーが含まれる場合は、後述するコンパイル時又はテスト実行時に検出され、これらコンパイル時又はテスト実行時には発見されないデグレードのテストを対象とするものであって、改修前後の処理フローDB019と実行結果DB020からデグレード発生箇所をリストアップし、改修前後のシーケンス図030及び031を生成し、差異が発生した箇所の色を変えて表示することにより利用者が発生箇所を容易に特定できるようにすると共に、デグレード発生箇所となるモジュールの呼び出し先のリストを表示して影響範囲を明確にするものである。
[Operation]
[Overall operation]
Next, the overall operation of the degradation test support system configured as described above will be described. This degradation test support processing is performed at the time of compilation or test execution described later when a large error is included in the modified source. These are targets for degradation tests that are detected and not discovered at the time of compilation or test execution. The degradation flow is listed from the processing flow DB 019 before and after the modification and the execution result DB 020, and the sequence diagram 030 before and after the modification. 031 is generated, the user can easily identify the location of occurrence by changing the color of the location where the difference has occurred, and the list of module callees that will cause degradation is displayed and affected. It is intended to clarify the scope.

さて、本実施形態によるデグレードテスト支援システムは、まず、図2に示す如く、コンピュータ(PC)021を用いてデグレードテスト担当がネットワーク022を介して改修前ソース028及び改修後ソース029を入力091する工程と、該入力した改修前ソース028及び改修後ソース029並びに変数宣言部により判定した変数をソース解析部002により解析してソースDB015並びに変数DB016に登録する工程と、モジュール関連分析部003が前記改修前ソース028及び改修後ソース029のモジュールの関連(呼びだし元の親モジュール又は親メソッドと呼び出し先の子モジュール又は子メソッドとの関連)を分析して前記関連DB017に格納する工程と、モジュール階層分析部004がモジュールの階層構造(プログラムを構成する最上位モジュールから最下位モジュールまでの階層構造)を階層DB018に格納する工程と、テスト用ソース生成部005が、改修前後のソースのステップ毎に処理実行順を追跡する為の情報を出力させる処理順出力機能(サブプログラム)及び前記ステップで参照可能な変数の値を出力させる変数値出力機能(サブプログラム)を埋め込んだ改修前ソース(テスト用)010及び改修後ソース(テスト用)011を生成する工程と、前記コンパイル部006が該生成した改修前ソース(テスト用)010及び改修後ソース(テスト用)011をコンパイルした改修前オブジェクトコード(テスト用)012及び改修後オブジェクトコード(テスト用)013を生成する工程とを実行することによって、改修前後のソースに処理順出力機能及び変数値出力機能を埋め込んだテスト用のオブジェクトコードを生成するように動作する。   In the degradation test support system according to the present embodiment, first, as shown in FIG. 2, the degradation test staff inputs a pre-repair source 028 and a post-repair source 029 via a network 022 using a computer (PC) 021. A process, a step of analyzing the input source 028 and post-reform source 029 and the variable determined by the variable declaration unit by the source analysis unit 002 and registering them in the source DB 015 and the variable DB 016, and the module relation analysis unit 003 A module hierarchy of analyzing and storing the relationship (the relationship between the call-source parent module or parent method and the call-destination child module or child method) of the pre-repair source 028 and the post-repair source 029, and the module hierarchy The analysis unit 004 creates a module hierarchy (The hierarchical structure from the highest module to the lowest module constituting the program) is stored in the hierarchical DB 018, and the test source generation unit 005 tracks the processing execution order for each source step before and after the modification. Pre-repair source (for testing) 010 and post-repair source (test) embedded with a processing order output function (subprogram) for outputting information and a variable value output function (subprogram) for outputting variable values that can be referenced in the above steps For generating) 011, the pre-repair source code (for test) 011 and the pre-repair object code (for test) 012 generated by the compiling unit 006 and the post-repair object Before and after refurbishment by executing the process of generating code (for testing) 013 Operative to generate object code for testing embedded processing order output function and variable values output function to the source.

次いで、本実施形態によるデグレードテスト支援システムは、前記改修前後のプログラム(オブジェクトコード012及び013)に対してテスト実行部022及び023が予め定めたテストケースを実行する工程と、このテストケースを実行した際に前記処理順出力機能及び変数値出力機能を埋め込んだテスト用のオブジェクトコードから出力されるステップ毎の処理実行順及び該当ステップで参照可能な変数の値を処理フローDB019並びに実行結果DB020に格納する工程と、実行結果比較部007が前記処理フローDB019並びに実行結果DB020に格納したステップ毎の処理実行順及び該当ステップで参照可能な変数の値に基づいてデグレード発生有無を後述の処理により判定して改修前後の出力結果が異なる情報を一覧表示024する工程と、デグレードが発生していると判定したときにシーケンス図生成部008が改修前後のプログラムのシーケンス図を後述の処理により生成してデグレード発生箇所が一目で判るように実行結果が異なる箇所の色を変えて表示025する工程と、呼び出し先の一覧抽出部009がデバッグ発生箇所となるモジュールの呼び出し先のリストを後述の処理により表示する工程とを実行する。   Next, the degradation test support system according to the present embodiment executes a test case in which the test execution units 022 and 023 execute predetermined test cases on the programs (object codes 012 and 013) before and after the modification, and executes the test cases. The processing order output function and the variable value output function, the processing execution order for each step output from the test object code and the variable values that can be referenced in the corresponding step are stored in the processing flow DB 019 and the execution result DB 020. Based on the storing process and the execution order of each step stored in the processing flow DB 019 and the execution result DB 020 by the execution result comparison unit 007 and the value of the variable that can be referred to in the corresponding step, the presence or absence of degradation is determined by the process described later. List of different output results before and after renovation 024 and the sequence diagram generation unit 008 generates a sequence diagram of the program before and after the refurbishment by the processing described later when it is determined that the degradation has occurred, and the execution result is obtained so that the location where the degradation has occurred can be seen at a glance. The process of displaying 025 by changing the color of the different part and the process of displaying the list of call destinations of the module that becomes the debug occurrence part by the call destination list extracting unit 009 by the process described later.

前記改修前後の出力結果が異なる情報を一覧表示024する工程による表示画面は、例えば図16に示す如く、「呼び出し先一覧」としてモジュール及びメソッド「XXX.xxx01()」がモジュール及びメソッド「YYY.yyy02()」を呼び出し、該モジュール及びメソッド「YYY.yyy02()」が破線で示すモジュール及びメソッド「ZZZ.zzz01()」を呼び出し、このモジュール及びメソッド「ZZZ.zzz01()」が改修前後で異なることを色分け等によって表示される。   For example, as shown in FIG. 16, the display screen by the process of displaying a list of information with different output results before and after the refurbishment has a module and method “XXX.xxx01 ()” as the module and method “YYY. yyy02 () "is called, and the module and method" YYY.yyy02 () "call the module and method" ZZZ.zzzz01 () "indicated by a broken line, and this module and method" ZZZ.zzzz01 () "are Different things are displayed by color coding or the like.

前記改修前後のプログラムのシーケンス図をデグレード発生箇所が一目で判るように実行結果が異なる箇所の色を変えて表示025する工程は、図17に示す如く、左側の改修前のソースが、モジュール「XXX」「YYY」「ZZZ」を備え、前記モジュール「XXX」及びモジュール「YYY」との間でメソッド「yyy01」〜メソッド「yyy03」の処理結果としてモジュール「ZZZ」にメソッド「zzz01」の変数値を出力するシーケンスのとき、改修後のシーケンスに示す如く破線で示すメソッド「zzz01」の変数値が改修前と異なることを色分け等によって表示する。   As shown in FIG. 17, the process before and after the refurbishment is performed by changing the color of the part where the execution result is different so that the degradation occurrence part can be seen at a glance. XXX ”,“ YYY ”,“ ZZZ ”, and the variable value of the method“ zzz01 ”in the module“ ZZZ ”as a processing result of the method“ yyy01 ”to the method“ yyy03 ”between the module“ XXX ”and the module“ YYY ” When the sequence is to output, the fact that the variable value of the method “zzzz01” indicated by the broken line is different from that before the modification is displayed by color coding or the like as shown in the sequence after the modification.

これら画面表示は、図20に示す如く、最初に「出力結果が異なる情報一覧画面を表示」024に続いて、「シーケンス図表示画面を表示」025及び「呼び出し先一覧画面を表示」026が行われ、最後に図18に示した「ソース内容表示画面を表示」027に遷移するように表示させる。前記「ソース内容表示画面を表示」027による表示画面は、図18に示す如く、画面右側に改修前のメソッド「zzz01」の各レコードと改修前のメソッド「zzz01」の各レコードとが表示され、本例の場合は、改修後のメソッド「zzz01」が実行するstep02の結果が異なることを色分け表示(図面では太字)される。   As shown in FIG. 20, these screen displays are performed by “display sequence diagram display screen” 025 and “display call destination list screen” 026 first after “display information list screen with different output results” 024. Finally, it is displayed so as to transit to “display source content display screen” 027 shown in FIG. As shown in FIG. 18, the display screen by the “display source content display screen” 027 displays each record of the method “zzzz01” before the modification and each record of the method “zzz01” before the modification on the right side of the screen. In the case of this example, the result of step 02 executed by the modified method “zzzz01” is displayed in different colors (bold in the drawing).

このように本実施形態によるデグレードテスト支援システム、デグレードテスト支援方法及びデグレードテスト支援プログラムは、改修前後のソースに処理順出力機能及び変数値出力機能を埋め込んだテスト用のオブジェクトコード012及び013を生成し、この生成したテスト用のオブジェクトコード012及び013の実行し、このテストケースを実行した際に前記処理順出力機能及び変数値出力機能を埋め込んだテスト用のオブジェクトコードから出力されるステップ毎の処理実行順及び該当ステップで参照可能な変数の値を処理フローDB019並びに実行結果DB020に格納し、これら改修前後のオブジェクトコードから出力されるステップ毎の処理実行順及び該当ステップで参照可能な変数の値を比較することによってデグレード発生有無を判定し、図16〜図19に示したシーケンス図や呼び出し先を表示することによって、デグレード発生タイミングとデグレード発生箇所とデグレードが発生したメソッドを参照しているモジュールとを判定して表示することができる。   As described above, the degradation test support system, the degradation test support method, and the degradation test support program according to the present embodiment generate test object codes 012 and 013 in which the processing order output function and the variable value output function are embedded in the source before and after the modification. Then, the generated test object code 012 and 013 are executed, and when the test case is executed, the test order code output from the test object code in which the processing order output function and the variable value output function are embedded. The process execution order and the value of the variable that can be referred to in the corresponding step are stored in the process flow DB 019 and the execution result DB 020. The process execution order for each step output from the object code before and after the modification and the variable that can be referred to in the corresponding step Deg by comparing values Determining whether or not a failure has occurred, and displaying the sequence diagrams and call destinations shown in FIGS. 16 to 19, it is possible to determine the degradation occurrence timing, the location where the degradation occurred, and the module that refers to the method where the degradation occurred. Can be displayed.

[詳細動作]
次に前述した各処理部の詳細動作について説明する。
[Detailed operation]
Next, the detailed operation of each processing unit described above will be described.

[ソース解析部002動作]
前記ソース解析部002により解析した改修前ソース028及び改修後ソース029をソースDB015に格納すると共に変数宣言部を解析した変数を変数DB016に登録する工程は、図3に示す如く、ソースファイルを読み込むステップS301と、該ステップS301により読み込んだソースのレコードが最終行か否かを判定し、最終行と判定したときに処理を終了するステップS302と、該ステップS302により最終行でないと判定したとき、カレント(現在の)行を読み込むステップS303と、該ステップS303により読み込んだカレント行の内容をソースDB015へ格納するステップS304と、前記カレント行が変数宣言部か判定し、変数宣言部でないと判定したときに前記ステップS302に戻るステップS306と、該ステップS306において変数宣言部であると判定したとき、該変数宣言部により宣言された変数の内容を変数DB016へ格納して前記ステップS307とを実行することによって、改修前後のソース及び変数を抽出して図10及び図11の如くソースDB015及び変数DB016に登録することができる。
[Operation of source analysis unit 002]
The steps of storing the pre-repair source 028 and the post-repair source 029 analyzed by the source analysis unit 002 in the source DB 015 and registering the variable analyzed by the variable declaration unit in the variable DB 016 reads the source file as shown in FIG. It is determined whether or not the source record read in step S301 is the last line, step S302 that terminates the processing when it is determined to be the last line, and if it is determined that the record is not the last line in step S302, the current Step S303 for reading a (current) line, Step S304 for storing the contents of the current line read in Step S303 in the source DB 015, and determining whether the current line is a variable declaration part and not a variable declaration part Step S30 is returned to Step S302. When it is determined in step S306 that it is a variable declaration part, the contents of the variable declared by the variable declaration part are stored in the variable DB 016 and executed in step S307, so that the source and variable before and after the modification are Can be extracted and registered in the source DB 015 and the variable DB 016 as shown in FIGS.

[モジュール関連分析部003動作]
前記モジュール関連分析部003による改修前ソース028及び改修後ソース029のモジュールの関連(呼びだし元の親モジュール又は親メソッドと呼び出し先の子モジュール又は子メソッドとの関連)を分析して関連DB017に格納する工程は、図4に示す如く、ソースファイルを読み込むステップS401と、該ステップS401により読み込んだソースのレコードが最終行か否かを判定し、最終行と判定したときに処理を終了するステップS402と、該ステップS402において最終行でないと判定したときにカレント行を読み込むステップS403と、該ステップS403により読み込んだカレント行が下位モール呼び出しのためのメソッド呼び出し箇所か否かを判定し、下位モール呼び出しでないと判定したときに前記ステップS402に戻るステップS404と、該ステップS404において下位モール呼び出しであると判定したときに当該カレント行に含まれる呼び出し元のモジュール名とメソッド名と呼び出し先のモジュール名とメソッド名とを関連DB017へ格納し、前記ステップS402に戻るステップS405とを実行することによって、親子モジュール及びモジュールの関連を図12に示した如く関連DB017に格納することができる。
[Module-related analysis unit 003 operation]
The module relation analysis unit 003 analyzes the relation of the modules of the source 028 before modification and the module 029 after modification (relation between the parent module or parent method of the call source and the child module or child method of the call destination), and stores it in the relation DB 017 As shown in FIG. 4, the process includes step S401 for reading a source file, step S402 for determining whether or not the source record read in step S401 is the last line, and ending the process when the last line is determined. In step S402, when it is determined that the current line is not the last line, step S403 reads the current line, and determines whether or not the current line read in step S403 is a method call location for calling a lower mall, and is not a lower mall call. When it is determined that Returning to step S402, and when it is determined in step S404 that the call is a lower mall call, the module name and method name of the call source, the module name and method name of the call destination included in the current line are transferred to the related DB 017. By storing and executing step S405 that returns to step S402, the parent-child module and the module relation can be stored in the relation DB 017 as shown in FIG.

[モジュール階層分析部004動作]
前記モジュール階層分析部004によるモジュールの階層構造(プログラムを構成する最上位モジュールから最下位モジュールまでの階層構造)の経路を階層DB018に格納する工程は、図5に示す如く、モジュール階層分析部004が、変数[v_Kaisou]を宣言するステップS501と、変数の初期化のために変数[v_Kaisou]に値「1」を代入するステップS502と、関連DB107から最上位モジュールを抽出し、関連DBを別名「関連DB1」と「関連DB2」に設定し、該「関連DB1」の「親_モジュール名」「親_メソッド名」と「関連DB2」の「子_モジュール名」「子_メソッド名」の間で外部結合を行い、「関連DB1」のレコードに対して「関連DB2」のレコードが結合されないレコードを抽出するステップS504とを実行する。このステップS504による関連DB107から最上位モジュールを抽出する処理は、例えば、「関連DB1」の「親_モジュール」と「関連DB2」の「子_モジュール」とが親子関係で結合されている場合、前記「関連DB1」の「親_モジュール」が更に上位のモジュールに結合されていないことの判定によって行われる。
[Operation of module hierarchy analysis unit 004]
As shown in FIG. 5, the module hierarchy analyzing unit 004 stores the path of the module hierarchical structure (hierarchical structure from the highest module to the lowest module constituting the program) in the hierarchical DB 018. Step S501 for declaring a variable [v_Kaisou], Step S502 for substituting the value “1” for the variable [v_Kaisou] for initialization of the variable, and extracting the top module from the related DB 107 and aliasing the related DB “Related DB1” and “Related DB2” are set, and “Parent_Module Name”, “Parent_Method Name” of “Related DB1” and “Child_Module Name” and “Child_Method Name” of “Related DB2” are set. Records that are not related to the record of "Related DB2" to the record of "Related DB1" To run and step S504 to be out. The process of extracting the top module from the related DB 107 in step S504 is, for example, when “parent_module” of “related DB1” and “child_module” of “related DB2” are combined in a parent-child relationship. This is performed by determining that the “parent_module” of the “related DB 1” is not coupled to a higher-order module.

次いで、本実施形態による階層構造の経路の抽出処理は、モジュール階層分析部004が、前記ステップS504により抽出した最上位モジュールが最終レコードか否かを判定するステップS505と、該ステップS505において最終レコードでないと判定したとき、階層DB018の「階層」フィールドに変数[v_Kaisou]の値を格納して前記ステップS505に戻るステップS506と、前記ステップS505において最終レコードと判定したとき、変数[v_Kaisou]の値にプラス「1」して変数値をカウントアップするステップS508と、階層DB018からカレント階層モジュールを抽出(初回実行時は1階層目のデータを抽出し、2回目以降に実行する場合は、順次階層をカウントアップし、これをカレント階層に設定)するステップS510と、該ステップS510において階層DB018からレコードが抽出できたか判定し、レコードが抽出できないと判定したときに処理を終了するステップS511と、該ステップS511においてレコードが抽出できたと判定したときに最終レコードか否かを判定し、最終レコードと判定したときに前記ステップS508に戻るステップS512と、該ステップS512において最終レコードでないと判定したときに関連DB017から前記上位モジュールに対する次の下位モジュールを抽出するステップS514とを実行する。   Next, in the hierarchical path extraction processing according to the present embodiment, the module hierarchy analysis unit 004 determines whether or not the highest-order module extracted in step S504 is the last record, and the last record in step S505. When it is determined that it is not, the value of the variable [v_Kaisou] is stored in the “hierarchy” field of the hierarchy DB 018, and the process returns to the step S505 to return to the step S505. Step S508 for incrementing the variable value by adding “1” to the current value, and extracting the current hierarchy module from the hierarchy DB 018 (if the first execution, the first hierarchy data is extracted and the second and subsequent executions are performed sequentially Count up and make this current Step S510 for setting a layer), Step S511 for determining whether or not a record can be extracted from the hierarchical DB 018 in Step S510, and ending the process when it is determined that a record cannot be extracted, and that a record can be extracted for Step S511. When it is determined, it is determined whether or not it is the last record. When it is determined that the record is the last record, step S512 returns to step S508. Step S514 for extracting lower modules is executed.

このステップS514による下位モジュールの抽出は、前記ステップS510により抽出したカレントモジュール(「子_モジュール名」「子_メソッド名」)から関連DBの「親_モジュール名」「親_メソッド名」を絞り込むことによって、本例ではステップS504内に図示した関連DB2の「子_モジュール名」及び「子_メソッド名」を判定することによって行われる。   In the extraction of the lower modules in step S514, the “parent_module name” and “parent_method name” of the related DB are narrowed down from the current modules (“child_module name” and “child_method name”) extracted in step S510. Thus, in this example, the determination is made by determining “child_module name” and “child_method name” of the related DB 2 illustrated in step S504.

次いで本実施形態による階層構造の経路の抽出処理は、前記ステップS514により抽出した下位モジュールが最終レコードか否かを判定し、最終レコードと判定したときに前記ステップS512に戻るステップS515と、該ステップS515において最終レコードでないと判定したとき、階層DB018の「階層」フィールドに変数[v_Kaisou]の値を格納して前記ステップS515に戻るステップS516とを実行する。   Next, in the hierarchical path extraction process according to the present embodiment, it is determined whether or not the lower module extracted in step S514 is the last record, and when it is determined to be the last record, the process returns to step S512. If it is determined in S515 that the record is not the last record, the value of the variable [v_Kaisou] is stored in the “hierarchy” field of the hierarchy DB 018, and step S516 is returned to step S515.

これら一連の処理によって本実施形態によるモジュール階層分析部004が関連DB107に格納した改修前後のソースプログラムに含まれるプログラムを構成する最上位モジュールから最下位モジュールまでの階層構造の経路をモジュール及びメソッドの親子関係に基づいて階層DB018に格納することができる。   Through this series of processing, the module hierarchy analysis unit 004 according to the present embodiment passes the hierarchical structure path from the highest module to the lowest module constituting the program included in the source program before and after modification stored in the related DB 107 by the module and method. Based on the parent-child relationship, it can be stored in the hierarchical DB 018.

前記テスト用ソース生成部005によるテスト用ソースの生成処理は、ソースファイルの各ステップの前後に処理フローDB019へデータ登録する処理順出力機能と各ステップ処理後に参照可能な変数の内容を実行結果DBへ登録する変数値出力機能を追加したテスト用ソースを生成するものであって、図6に示す如く、ソースファイルを読み込むステップS601と、該読み込んだソースファイルが最終行か否かを判定するステップS602と、該ステップS602において最終行でないと判定したときにカレント行を読み込むステップS603と、該ステップS603により読み込んだカレント行が処理ステップか否かを判定するステップS604と、該ステップS604においてカレント行が処理ステップであると判定したときに処理フロー(処理順出力機能)用の開始ステップをテストソース600の一時記憶領域へ格納するステップS605と、該ステップS605又は前記ステップS604において処理ステップでないと判定したとき、当該カレント行のソース(ステップ)をテストソース600の一時記憶領域へ格納するステップS607と、カレント行が処理ステップか判定し、処理ステップでないと判定したときに前ステップS602に戻るステップS609と、該ステップS609においてカレント行が処理ステップであると判定したとき、処理フロー(処理順出力機能)終了ステップをテストソース600一時記憶領域へ格納するステップS610と、変数DB016からカレント行において参照可能な変数を抽出するステップS613と、該ステップS613により抽出したカレント行が最終レコードか否かを判定し、最終レコードと判定したときに前記ステップS602に戻るステップS614と、該ステップS614において最終レコードでないと判定したとき、変数の値を出力する変数値出力機能をテストソース600の一時記憶領域へ格納するステップS615と、前記ステップS602において読み込んだソースファイルが最終行であると判定したとき、前記テストソース600から処理順出力機能及び変数値出力機能を埋め込んだテスト用ソース010及び011を出力するステップS618とを実行することによって、ソース実行に伴う処理フロー及び変数を出力するためのテスト用ソースを生成することができる。   The test source generation process by the test source generation unit 005 includes a processing order output function for registering data in the processing flow DB 019 before and after each step of the source file, and the contents of variables that can be referenced after each step process. A test source to which a variable value output function to be registered is added is generated. As shown in FIG. 6, step S601 for reading a source file and step S602 for determining whether or not the read source file is the last line. Step S603 for reading the current line when it is determined in step S602 that it is not the last line, step S604 for determining whether or not the current line read in step S603 is a processing step, and the current line in step S604 When it is determined that it is a processing step, Step S605 for storing the start step for the flow (processing order output function) in the temporary storage area of the test source 600, and when it is determined in step S605 or step S604 that it is not a processing step, the source (step) of the current row Is stored in the temporary storage area of the test source 600, and it is determined whether the current line is a processing step. If it is determined that the current line is not a processing step, the process returns to the previous step S602, and the current line is processed in step S609. Step S610 for storing the processing flow (processing order output function) end step in the test source 600 temporary storage area, step S613 for extracting a variable that can be referred to in the current row from the variable DB 016, and the step S It is determined whether or not the current line extracted in step 13 is the last record. When it is determined that the current record is the last record, step S614 returns to step S602, and when it is determined that the current record is not the last record in step S614, the value of the variable is output. When the variable value output function is stored in the temporary storage area of the test source 600 and when it is determined that the source file read in the step S602 is the last line, the processing order output function and the variable value output from the test source 600 By executing step S618 for outputting the test sources 010 and 011 in which the functions are embedded, it is possible to generate a test source for outputting a processing flow and variables associated with the source execution.

[実行結果比較部007動作]
前記実行結果比較部007による処理フローDB019並びに実行結果DB020に格納したステップ毎の処理実行順(処理フロー情報)及び該当ステップで参照可能な変数の値に基づいてデグレード発生有無を後述の処理により判定して改修前後の出力結果が異なる情報を一覧表示024する工程は、図7に示す如く、まず、変数[v_WorkNo](変数の変数名)を宣言するステップS701と、改修前後の実行結果DB020A及び020Bを比較し、処理結果の変数の値に差異があるレコードを抽出するステップS704を実行する。
[Execution result comparison unit 007 operation]
The execution result comparison unit 007 determines whether or not degradation has occurred based on the processing execution order (processing flow information) for each step stored in the execution result DB 020 and the value of a variable that can be referred to in the corresponding step, by the processing described later. As shown in FIG. 7, the process of displaying a list of information with different output results before and after the modification, first, declares a variable [v_WorkNo] (variable name of the variable), an execution result DB 020A before and after the modification, and 020B is compared, and step S704 for extracting a record having a difference in the value of the variable of the processing result is executed.

このステップS704は、実行結果DBを別名の「実行結果(改修前)」及び「実行結果(改修後)」に設定し、「実行結果(改修前)」では、「区分」フィールドが「0:改修前」のデータを対象とし、「実行結果(改修後)」では、「区分」フィールドが「1:改修後」のデータを対象とし、それぞれのテーブルの「モジュール名」「メソッド名」「行数」「変数名」「要素数」フィールドで等結合を行い、「実行結果(改修前)」と「実行結果(改修後)」の「値」フィールドが異なるレコードを判定することによって抽出する。   In this step S704, the execution result DB is set to the alias “execution result (before modification)” and “execution result (after modification)”. In “execution result (before modification)”, the “classification” field is “0: The data of “before renovation” is the target, and in the “execution result (after renovation)”, the “classification” field is the data of “1: after renovation”, and the “module name”, “method name”, “row” of each table Equal coupling is performed in the “number”, “variable name”, and “number of elements” fields, and the “execution result (before modification)” and “execution result (after modification)” fields are identified by different records and extracted.

これを図15の実行結果DBの改修前後を参照して具体的に説明すると、このステップS704は、図15(b)に示した改修前の実行結果DB020AのID「16」〜「18」のモジュール「ZZZ」のメソッド「v_xxx_01」とメソッド「v_zzz_01」とメソッド「v_zzz_02」が実行され、該メソッド「v_zzz_02」の変数の値が「z_value_02」が出力されたのに対し、図15(c)に示した改修後の実行結果DB020BのID「16」〜「18」のモジュール「ZZZ」のメソッド「v_xxx_01」とメソッド「v_zzz_01」とメソッド「v_zzz_02」が実行され、該メソッド「v_zzz_02」の変数の値が「z_value_03」が出力された場合、このメソッド「v_zzz_02」の変数の値が異なるため、当該メソッド「v_zzz_02」のレコードを「値」フィールドが異なるレコードとして判定する。   This will be specifically described with reference to before and after the modification of the execution result DB in FIG. 15. In step S704, IDs “16” to “18” of the execution result DB 020A before the modification shown in FIG. The method “v_xxxx — 01”, the method “v_zzzz — 01”, and the method “v_zzzz — 02” of the module “ZZZ” are executed, and the value of the variable of the method “v_zzzz — 02” is “z_value — 02”, whereas FIG. The method “v_xxxx_01”, the method “v_zzzz_01”, and the method “v_zzzz_02” of the module “ZZZ” with the IDs “16” to “18” in the execution result DB 020B shown in FIG. If "z_value_03" is output, this method Since the value of the variable v_zzz_02 "are different, determines a record of the method" v_zzz_02 "is the" value "field as different records.

次いで、本実施形態による改修前後の出力結果が異なる情報を一覧表示024する工程は、前記ステップS704により抽出した「値」フィールドが異なるレコードが最終レコードか否かを判定するステップS705と、該ステップS705において最終レコードでないと判定したとき、変数[v_WorkNo]に前記ステップS704で取得した処理NOを格納(代入)するステップS706と、該ステップS706により格納した変数[v_WorkNo]の値が空か否かを判定し、空であると判定したときに前記ステップS705に戻るステップS707と、該ステップS707において変数[v_WorkNo]の値が空でないと判定したとき、処理フローDB019から、処理フローDB019の処理NOが変数[v_Work_No]の値と等しいレコードの上位処理NOを取得するステップS709と、該ステップS709により取得した変数[v_WorkNo]に前記ステップS709で取得した処理NOを格納(代入)するステップS710と、該ステップS710で格納した上位モジュールのモジュール名及びメソッド名を画面表示用の一時記憶領域に格納して前記ステップS707に戻るステップS711と、前記ステップS705において最終レコードであると判定したとき、前記画面表示用の一時記憶領域の内容を元に出力結果が異なる情報一覧表示画面を表示するステップS713とを実行することによって、実行結果が異なるデータに基づいて該実行結果が異なるモジュールの上位モジュールを抽出し図16に示した如き画面を表示することができる。   Next, in the step of displaying a list 024 of information with different output results before and after the renovation according to the present embodiment, step S705 for determining whether or not the record having a different “value” field extracted in step S704 is the last record, and the step When it is determined in S705 that the record is not the last record, step S706 for storing (substituting) the process NO acquired in step S704 for variable [v_WorkNo], and whether or not the value of variable [v_WorkNo] stored in step S706 is empty. When it is determined that the value of the variable [v_WorkNo] is not empty in step S707, the process flow DB019 changes to the process NO of the process flow DB019. Is a variable [v_Work Step S709 for obtaining the upper process NO of the record equal to the value of “No”, Step S710 for storing (substituting) the process NO obtained in Step S709 for the variable [v_WorkNo] obtained in Step S709, and Step S710 In step S711, the module name and method name of the higher-level module stored in step S711 are stored in a temporary storage area for screen display and the process returns to step S707. When it is determined in step S705 that the record is the last record, By executing step S713 for displaying an information list display screen with different output results based on the contents of the temporary storage area, the upper modules of the modules with different execution results are extracted based on the data with different execution results. To display the screen as shown in Kill.

[シーケンス図生成部008動作]
前記シーケンス図生成部008による改修前後のプログラムのシーケンス図を生成してデグレード発生箇所が一目で判るように実行結果が異なる箇所の色を変えて表示025する工程は、図8に示すように、改修前処理フローDB019Aから処理フロー情報(図14)を抽出するステップS802と、該抽出した処理フロー情報のレコードが最終行か否かを判定するステップS803と、該ステップS803において最終行でないと判定したとき、カレントレコードの情報を元に改修前シーケンス図811(図17左側図)を生成するステップS804と、前記した改修前後の実行結果DB020A及び020Bからカレントレコードにおける改修前後の実行結果を抽出して比較するステップS808と、該比較の結果、改修前後の実行結果に差異があるか否かを判定し、差異がないと判定したときに前記ステップS803に戻るステップS809と、該ステップS809において差異があると判定したとき、差異があったカレント(現在)ステップの色を変更した改修前シーケンス図811を生成して前記ステップS803に戻るステップS810とを実行することによって、改修前処理フローの全行に対する実行結果値に変化が有ったか否かステップ毎に判定し、変化があったステップの色を変更することができる。
[Operation of Sequence Diagram Generation Unit 008]
As shown in FIG. 8, the sequence diagram generation unit 008 generates a sequence diagram of the program before and after the refurbishment and displays 025 by changing the color of the location where the execution result is different so that the degradation occurrence location can be seen at a glance. Step S802 for extracting processing flow information (FIG. 14) from the pre-repair processing flow DB 019A, step S803 for determining whether or not the record of the extracted processing flow information is the last row, and determining that the record is not the last row in step S803 Step S804 for generating the sequence diagram 811 before modification based on the information of the current record (left side diagram of FIG. 17), and the execution result before and after the modification in the current record are extracted from the execution result DBs 020A and 020B before and after the modification. Step S808 to compare, and the result of the comparison, execution results before and after the renovation When there is no difference, step S809 returns to step S803 when it is determined that there is no difference, and when it is determined that there is a difference in step S809, the current (current) step in which there is a difference is determined. It is determined for each step whether or not there has been a change in the execution result values for all the lines of the pre-repair process flow by generating the sequence diagram 811 before modification with the color changed and executing step S810 that returns to step S803. Then, the color of the step where the change has occurred can be changed.

次いで、本実施形態によるシーケンス図生成部008による実行結果が異なる箇所の色を変えて表示025する工程は、前記ステップS803において最終行であると判定したとき、改修後処理フローDB019Bから処理フロー情報を抽出するステップS813と、該抽出した処理フロー情報のレコードが最終行か否かを判定するステップS814と、該ステップS814において最終行でないと判定したとき、カレントレコードの情報を元に改修後シーケンス図816(図17右側図)を生成するステップS815と、前記した改修前後の実行結果DB020A及び020Bからカレントレコードにおける改修前後の実行結果を抽出して比較するステップS819と、該比較の結果、改修前後の実行結果に差異があるか否かを判定し、差異がないと判定したときに前記ステップS814に戻るステップS820と、該ステップS820において差異があると判定したとき、差異があったカレント(現在)ステップの色を変更した改修後シーケンス図822を生成して前記ステップS814に戻るステップS821とを実行することによって、改修後処理フローの全行に対する実行結果値に変化が有ったか否かステップ毎に判定し、変化があったステップの色を変更することができる。   Next, the process of changing the display color of the part where the execution result is different by the sequence diagram generation unit 008 according to the present embodiment and displaying 025 is determined to be the last line in the step S803, the process flow information from the post-repair process flow DB 019B , Step S814 for determining whether or not the record of the extracted processing flow information is the last line, and when it is determined in step S814 that the record is not the last line, a sequence diagram after modification based on the information of the current record Step S815 for generating 816 (right side of FIG. 17), Step S819 for extracting and comparing the execution results before and after the modification in the current record from the execution result DBs 020A and 020B before and after the modification, and the result of the comparison, before and after the modification Judge whether there is a difference in the execution results of When it is determined that there is no difference, Step S820 returns to Step S814, and when it is determined that there is a difference in Step S820, a modified sequence diagram 822 in which the color of the current (current) step where there is a difference is generated is generated. By executing step S821 which returns to step S814, it is determined for each step whether or not there has been a change in the execution result value for all the lines in the post-repair processing flow, and the color of the step having the change is changed. be able to.

即ち、本実施形態によるシーケンス図生成部008は、図14に例示した改修前後の処理フロー情報に基づいて改修前後の処理フロー図を生成し、この生成した改修前後の処理フロー図に対してソースの実行結果の差異(変数内)を実行結果DB020A及び020Bに基づいて判定し、差異があった変数値を出力したステップの該当箇所(例えば、図17右側の破線部分)を色分け表示することによって、デグレード発生タイミングやデグレード発生箇所を管理者に目視可能に表示することができる。   That is, the sequence diagram generation unit 008 according to the present embodiment generates a process flow diagram before and after the modification based on the process flow information before and after the modification illustrated in FIG. The execution result difference (within the variable) is determined based on the execution result DBs 020A and 020B, and the corresponding part of the step that outputs the variable value having the difference (for example, the broken line portion on the right side of FIG. 17) is displayed in different colors. The degradation occurrence timing and the degradation occurrence location can be displayed visually to the administrator.

[呼び出し先の一覧抽出部009動作]
前記呼び出し先の一覧抽出部009によるデバッグ発生箇所となるモジュールの呼び出し先のリストを後述の処理により表示する工程は、図9に示すように、変数[v_Module]及び変数[v_Method]を宣言するステップS901と、本処理の引数にデグレード発生箇所の対象モジュール名及び対象メソッド名を引き渡すために階層DB018から、階層DB.子_モジュール名=[対象モジュール名(デグレードが発生した対象モジュール名)]及び階層DB.子_メソッド名=[対象メソッド名(デグレードが発生した対象メソッド名)]の条件を満たすレコードを上位モジュールをとして抽出するステップS903と、該抽出したレコードが最終行か否かを判定するステップS904と、該ステップS904において最終行でないと判定したとき、呼び出し先のモジュール名及びメソッド名を画面表示用の一時記憶領域である呼び出し先モジュール一覧906に格納するステップS905と、前記上位モジュール抽出のステップS903で取得した親_モジュール名、親_メソッド名をそれぞれ変数[v_Module]、[v_Method]に格納(代入)するステップS907と、該ステップS907により格納した変数[v_Module]又は変数[v_Method]の何れか一方の値が空か否かを判定し、空白であると判定したときに前記ステップS904に戻るステップS908と、該ステップS908において空白でないと判定したとき、階層DB018から、階層DB.子_モジュール名=変数[v_Module]及び階層DB.子_メソッド名=変数[v_Method]の条件が一致する上位モジュールを抽出するステップS910と、該ステップS910により抽出した呼び出し先のモジュール名及びメソッド名を画面表示用の一時記憶領域である呼び出し先モジュール一覧912に格納するステップS911と、前記ステップS907で抽出した上位モジュール抽出処理で取得した親_モジュール名、親_メソッド名をそれぞれ変数[v_Module]、[v_Method]に格納し、前記ステップS908に戻るステップS913と、前記ステップS904において階層DB018から抽出したレコードが最終行と判定したとき、画面表示用の前記一時記憶領域の内容に基づいて呼び出し先の一覧表示画面915を生成するステップS914とを実行することによって、図19に示した如き、デバッグ発生箇所となる破線で示すモジュール及びメソッド「ZZZ.zzz01()」を参照して影響を及ぼすモジュール及びメソッド「WWW.www01()」を表示することができる。即ち、デクレード発生箇所を起点として階層関係あるモジュール名及びメソッド名を抽出することによって、デグレードが影響を及ぼす他のモジュール名及びメソッド名を容易に表示することができる。
[Operation of Called Party List Extraction Unit 009]
The step of displaying a list of call destinations of modules that are debug occurrence locations by the call destination list extracting unit 009 by a process described later is a step of declaring a variable [v_Module] and a variable [v_Method] as shown in FIG. S901, and from the hierarchy DB 018 to deliver the target module name and target method name of the degradation occurrence location to the argument of this process, the hierarchy DB. Child_module name = [target module name (target module name where degradation occurred)] and hierarchical DB. Step S903 for extracting a record satisfying the condition child_method name = [target method name (target method name where degradation has occurred)] as an upper module, and step S904 for determining whether or not the extracted record is the last row. When it is determined in step S904 that it is not the last line, step S905 for storing the callee module name and method name in the callee module list 906, which is a temporary storage area for screen display, and step S903 for extracting the upper module. Step S907 for storing (substituting) the parent_module name and the parent_method name acquired in step 4 into the variables [v_Module] and [v_Method], respectively, and either the variable [v_Module] or the variable [v_Method] stored in the step S907. One Determines whether is empty, the step S908 back to step S904 when it is determined that the blank, when it is determined that not blank in the step S908, the hierarchy DB018, hierarchical DB. Child_module name = variable [v_Module] and hierarchical DB. Step S910 for extracting a higher-level module that matches the condition of child_method name = variable [v_Method], and the module name and method name of the call destination extracted in step S910 are call destination modules that are temporary storage areas for screen display In step S911 stored in the list 912, the parent_module name and the parent_method name acquired in the upper module extraction process extracted in step S907 are stored in variables [v_Module] and [v_Method], respectively, and the process returns to step S908. Step S913 and Step S914 for generating a list display screen 915 for the call destination based on the contents of the temporary storage area for screen display are executed when the record extracted from the hierarchical DB 018 in Step S904 is determined to be the last line. Do As shown in FIG. 19, the module and the method “WWW.www01 ()” which are affected by referring to the module and method “ZZZ.zzz01 ()” indicated by the broken line as the debug occurrence location are displayed. it can. In other words, by extracting the hierarchically related module names and method names starting from the location where the declade is generated, it is possible to easily display other module names and method names affected by the degradation.

このように本実施形態によるデグレードテスト支援方法及びデグレードテスト支援プログラムを実現するデグレードテスト支援システムは、改修前後のソースのステップ毎に処理実行順を出力させる処理順出力機能及び前記ステップで参照可能な変数を出力させる変数値出力機能を埋め込んだ改修前後のテスト用ソースを生成するテスト用ソース生成部005と、改修前後のテスト用オブジェクトコードを実行した際に出力された処理フロー情報を処理DB019に格納すると共に出力された変数を実行結果DB020に格納するテスト実行部022及び023と、実行結果DB020から実行結果の変数の値に差異がある改修前後のテスト用オブジェクトコードのレコードを抽出し、該抽出したレコードのモジュール名及びメソッド名と、該抽出したレコードの上位レコードの上位モジュール名及び上位メソッド名を処理フローデータベースに格納した処理フロー情報の階層及び処理順を参照して抽出し、該抽出した複数のモジュール名及びメソッド名並びに上位モジュール名及び上位メソッド名を担当用コンピュータ021の表示部に表示させる実行結果比較部007とを備えたことによって、デグレード発生タイミングやデグレード発生箇所を判定することができ、階層DB018からデグレード発生箇所の対象モジュール名及び対象メソッド名を上位対象モジュール名及び上位対象メソッド名として抽出し、該抽出した上位対象モジュール名及び上位対象メソッド名に対して下層の下位対象モジュール名及び下位対象メソッド名を抽出し、これら抽出したモジュール名及び対象メソッド名に基づいてデグレード発生箇所の対象モジュール名及び対象メソッド名が影響を及ぼす範囲を表示する呼び出し先の一覧抽出部009を設けたことによりデグレード影響範囲を容易に表示することができる。従って、本発明によれば、デグレードテストの作業工数削減およびデグレードチェックの漏れを防止し、デグレード発生時の調査作業の軽減や手戻り作業を軽減することができる。   As described above, the degradation test support system and the degradation test support system that realizes the degradation test support method according to the present embodiment can be referred to in the processing order output function for outputting the processing execution order for each source step before and after the renovation and the above steps. A test source generation unit 005 for generating a test source before and after the modification in which a variable value output function for outputting a variable is embedded, and processing flow information output when the test object code before and after the modification is executed are stored in the process DB 019. Test execution units 022 and 023 that store and output variables stored in the execution result DB 020, and records of test object codes before and after the repair that have a difference in values of execution result variables from the execution result DB 020, Module name and method name of the extracted record, The upper module name and upper method name of the upper record of the extracted record are extracted by referring to the hierarchy and processing order of the processing flow information stored in the processing flow database, and the extracted module names, method names, and upper module names are extracted. And the execution result comparison unit 007 for displaying the upper method name on the display unit of the responsible computer 021, it is possible to determine the degradation occurrence timing and the degradation occurrence location, and the target module of the degradation occurrence location from the hierarchical DB 018. Name and target method name are extracted as upper target module name and upper target method name, lower target module name and lower target method name are extracted from the extracted upper target module name and upper target method name, and these Extracted module name and It can easily display the degrade influence range by degrading target module name occurrence location and target method name provided callee list extraction unit 009 to display a range affects based on elephants method name. Therefore, according to the present invention, it is possible to reduce the man-hours for the degradation test and to prevent the degradation check from being omitted, and to reduce the investigation work and the rework work when the degradation occurs.

000 デグレード支援システム、001 サーバ、002 ソース解析部、
003 モジュール関連分析部、004 モジュール階層分析部、
005 ソース生成機能部、006 コンパイル部、007 実行結果比較部、
008 シーケンス図生成部、009 呼び出し先の一覧抽出部、
010 改修前ソース(テスト用)、011 改修後ソース(テスト用)、
012 オブジェクトコード、021 デグレードテスト担当用のコンピュータ、
022 テスト実行部、90 ネットワーク、028 改修前ソース、
029 改修後ソース
000 Degradation support system, 001 server, 002 source analysis unit,
003 module-related analysis unit, 004 module hierarchy analysis unit,
005 source generation function unit, 006 compilation unit, 007 execution result comparison unit,
008 sequence diagram generator, 009 callee list extractor,
010 Source before renovation (for testing), 011 Source after renovation (for testing),
012 Object code, 021 Computer for degradation test,
022 Test execution part, 90 network, 028 source before renovation,
029 Refurbished source

Claims (12)

階層構造のモジュール及びメソッドを含む改修後のソースをテストするための担当用コンピュータと接続され、改修前後のソースを参照して改修後のソースにデグレードが発生したか否かを試験するデグレードテスト支援システムであって、
前記改修前後のソースを格納するソースデータベースと、
前記改修前後のソースのモジュール又はメソッドの階層と処理順とを含む処理フロー情報を格納する処理フローデータベースと、
前記改修前後のソースの各ステップが参照する変数を格納する実行結果データベースと、
前記改修前後のソースのステップ毎に処理実行順を出力させる処理順出力機能及び前記ステップで参照可能な変数を出力させる変数値出力機能を埋め込んだ改修前後のテスト用ソースを生成するテスト用ソース生成部と、
前記改修前後のテスト用ソースから改修前後のテスト用オブジェクトコードを生成するコンパイル部と、
前記改修前後のテスト用オブジェクトコードを実行し、前記処理順出力機能によって出力された処理フロー情報を前記処理フローデータベースに格納すると共に前記変数値出力機能によって出力された変数を前記実行結果データベースに格納するテスト実行部と、
前記実行結果データベースから実行結果の変数の値に差異がある前記改修前後のテスト用オブジェクトコードのレコードを抽出し、該抽出したレコードのモジュール名及びメソッド名と、該抽出したレコードの上位レコードの上位モジュール名及び上位メソッド名を前記処理フローデータベースに格納した処理フロー情報の階層及び処理順を参照して抽出し、該抽出した複数のモジュール名及びメソッド名並びに上位モジュール名及び上位メソッド名を担当用コンピュータに表示させる実行結果比較部とを備えるデグレードテスト支援システム。
Degradation test support that is connected to the computer in charge for testing the modified source including hierarchical modules and methods, and tests whether degradation has occurred in the modified source by referring to the source before and after the modification A system,
A source database for storing the source before and after the renovation;
A processing flow database for storing processing flow information including the hierarchy and processing order of the source module or method before and after the modification;
An execution result database for storing variables referred to by each step of the source before and after the renovation;
Test source generation for generating a test source before and after renovation in which a processing order output function for outputting a processing execution order for each step of the source before and after the renovation and a variable value output function for outputting a variable that can be referred to in the step are embedded And
A compiling unit that generates test object code before and after the modification from the test source before and after the modification;
The test object code before and after the modification is executed, the processing flow information output by the processing order output function is stored in the processing flow database, and the variable output by the variable value output function is stored in the execution result database A test execution unit to perform,
Extract the test object code records before and after the modification that have a difference in the value of the execution result variable from the execution result database, and extract the module name and method name of the extracted record, and the upper record of the upper record of the extracted record The module name and the upper method name are extracted by referring to the hierarchy and processing order of the processing flow information stored in the processing flow database, and the plurality of extracted module names and method names, the upper module name and the upper method name are for charge. Lud grade test support system comprising an execution result comparison unit to be displayed on the computer.
前記実行結果データベースが、改修前テスト用オブジェクトコードの実行により出力された変数を格納する改修前実行結果データベースと、改修後テスト用オブジェクトコードの実行により出力された変数を格納する改修後実行結果データベースとを含み、
前記実行結果比較部が、改修前実行結果データベース及び改修後実行結果データベース個々のモジュール名とメソッド名と行数と変数名と値のフィールドを等結合し、前記値のフィールドが異なるレコードを実行結果の変数の値に差異があるレコードとして抽出する請求項1記載のデグレードテスト支援システム。
The execution result database stores the variables output by executing the pre-repair test object code and the post-reformation execution result database storing the variables output by the execution of the post-repair test object code. Including
The execution result comparison unit equally combines the module name, method name, number of lines, variable name, and value fields of the execution result database before the modification and the execution result database after the modification, and executes the records having different values fields. degraded test support system of Motomeko 1, wherein you extracted as record values there is a difference in the variable.
前記処理フローデータベースが、改修前ソースのモジュール又はメソッドの階層と処理順とを含む改修前処理フロー情報を格納する改修前処理フローデータベースと、改修後ソースのモジュール又はメソッドの階層と処理順とを含む改修後処理フロー情報を格納する改修後処理フローデータベースとを含み、
前記改修前処理フローデータベースに格納した改修前ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修前シーケンス図を生成し、前記改修後処理フローデータベースに格納した改修後ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修後シーケンス図を生成し、前記実行結果比較部により抽出した実行結果の変数の値に差異があるレコードのモジュール又はメソッドの色を変化させて担当用コンピュータに表示させるシーケンス図生成部を備える請求項1及び請求項2記載のいずれか1項に記載のデグレードテスト支援システム。
The processing flow database stores a pre-repair processing flow database that stores pre-repair processing flow information including the hierarchy and processing order of the module or method of the pre-repair source, and a hierarchy and processing order of the module or method of the renovated source Including a post-repair process flow database that stores post-repair process flow information,
Generate a sequence diagram before modification that expresses the exchange between the module and the method along the time axis based on the hierarchy and processing order of the module or method of the source before modification stored in the processing flow database before modification, and after the modification Based on the hierarchy of the module or method of the modified source stored in the process flow database and the processing order, a sequence diagram after modification is generated that expresses the exchange between the module and the method along the time axis, and the execution result comparison unit any one of the extracted execution result of values there is a difference in the record of variable modules or methods Motomeko 1 and claim 2, wherein Ru with a diagram generation unit to be displayed on representative computer by changing the color Degradation test support system described in
階層データベースからデグレード発生箇所の対象モジュール名及び対象メソッド名を上位対象モジュール名及び上位対象メソッド名として抽出する上位抽出工程と、前記階層データベースから前記上位対象モジュール名及び上位対象メソッド名を階層構造の親とする下位対象モジュール名及び下位対象メソッド名とを抽出する下位抽出工程と、該下位抽出工程を前記下位対象モジュール名及び下位対象メソッド名がソースの最終行でないと判定するまで繰り返す繰り返し工程とを実行し、前記上位抽出工程及び下位抽出工程によって抽出した対象モジュール名及び対象メソッド名とに基づいてデグレード発生箇所の対象モジュール名及び対象メソッド名が影響を及ぼす呼び出し先一覧情報を作成して表示する呼び出し先一覧抽出部を備える請求項1から3何れか1項に記載のデグレードテスト支援システム。 An upper extraction step of extracting the target module name and target method name of the degradation occurrence location from the hierarchical database as the upper target module name and upper target method name, and the upper target module name and upper target method name from the hierarchical database in a hierarchical structure A sub-extraction step for extracting a subordinate target module name and a subordinate target method name as a parent, and a repetition step of repeating the subextraction step until it is determined that the subordinate target module name and the subordinate target method name are not the last line of the source, To create and display call destination list information that is affected by the target module name and target method name at the occurrence of degradation based on the target module name and target method name extracted by the upper extraction step and the lower extraction step. Ru with a call destination list extraction unit for Degraded test support system according to 3 any one of claim 1. 階層構造のモジュール及びメソッドを含む改修後のソースをテストするための担当用コンピュータと接続され、改修前後のソースを格納するソースデータベースと、前記改修前後のソースのモジュール又はメソッドの階層と処理順とを含む処理フロー情報を格納する処理フローデータベースと、前記改修前後のソースの各ステップが参照する変数を格納する実行結果データベースとを備え、前記改修前後のソースを参照して改修後のソースにデグレードが発生したか否かを試験するコンピュータシステムのデグレードテスト支援方法であって、
該コンピュータシステムが、
前記改修前後のソースのステップ毎に処理実行順を出力させる処理順出力機能及び前記ステップで参照可能な変数を出力させる変数値出力機能を埋め込んだ改修前後のテスト用ソースを生成するテスト用ソース生成工程と、
前記改修前後のテスト用ソースから改修前後のテスト用オブジェクトコードを生成するコンパイル工程と、
前記改修前後のテスト用オブジェクトコードを実行し、前記処理順出力機能によって出力された処理フロー情報を前記処理フローデータベースに格納すると共に前記変数値出力機能によって出力された変数を前記実行結果データベースに格納するテスト実行工程と、
前記実行結果データベースから実行結果の変数の値に差異がある前記改修前後のテスト用オブジェクトコードのレコードを抽出し、該抽出したレコードのモジュール名及びメソッド名と、該抽出したレコードの上位レコードの上位モジュール名及び上位メソッド名を前記処理フローデータベースに格納した処理フロー情報の階層及び処理順を参照して抽出し、該抽出した複数のモジュール名及びメソッド名並びに上位モジュール名及び上位メソッド名を担当用コンピュータに表示させる実行結果比較工程とを実行するデグレードテスト支援方法。
A source database connected to a computer in charge for testing a modified source including a module and a method having a hierarchical structure, storing a source before and after the modification, and a hierarchy and processing order of the module or method of the source before and after the modification; Including a processing flow database for storing processing flow information including an execution result database for storing variables referred to by each step of the source before and after the modification, and degrading the source after the modification with reference to the source before and after the modification A computer system degradation test support method for testing whether or not an error has occurred,
The computer system is
Test source generation for generating a test source before and after renovation in which a processing order output function for outputting a processing execution order for each step of the source before and after the renovation and a variable value output function for outputting a variable that can be referred to in the step are embedded Process,
A compiling step for generating test object code before and after the modification from the test source before and after the modification;
The test object code before and after the modification is executed, the processing flow information output by the processing order output function is stored in the processing flow database, and the variable output by the variable value output function is stored in the execution result database A test execution process,
Extract the test object code records before and after the modification that have a difference in the value of the execution result variable from the execution result database, and extract the module name and method name of the extracted record, and the upper record of the upper record of the extracted record The module name and the upper method name are extracted by referring to the hierarchy and processing order of the processing flow information stored in the processing flow database, and the plurality of extracted module names and method names, the upper module name and the upper method name are for charge. Lud grade test support method to perform an execution result comparison step to be displayed on the computer.
前記実行結果データベースが、改修前テスト用オブジェクトコードの実行により出力された変数を格納する改修前実行結果データベースと、改修後テスト用オブジェクトコードの実行により出力された変数を格納する改修後実行結果データベースとを含み、
前記コンピュータシステムが、前記実行結果比較工程において、改修前実行結果データベース及び改修後実行結果データベース個々のモジュール名とメソッド名と行数と変数名と値のフィールドを等結合し、前記値のフィールドが異なるレコードを実行結果の変数の値に差異があるレコードとして抽出する請求項5記載のデグレードテスト支援方法。
The execution result database stores the variables output by executing the pre-repair test object code and the post-reformation execution result database storing the variables output by the execution of the post-repair test object code. Including
In the execution result comparison step, the computer system equally combines the module name, method name, number of lines, variable name, and value fields of the execution result database before the modification and the execution result database after the modification. Motomeko 5 degraded test support method according you extracted as a record there is a difference different records the value of the execution result variable.
前記処理フローデータベースが、改修前ソースのモジュール又はメソッドの階層と処理順とを含む改修前処理フロー情報を格納する改修前処理フローデータベースと、改修後ソースのモジュール又はメソッドの階層と処理順とを含む改修後処理フロー情報を格納する改修後処理フローデータベースとを含み、
前記コンピュータシステムが、改修前処理フローデータベースに格納した改修前ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修前シーケンス図を生成し、前記改修後処理フローデータベースに格納した改修後ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修後シーケンス図を生成し、前記実行結果比較工程により抽出した実行結果の変数の値に差異があるレコードのモジュール又はメソッドの色を変化させて担当用コンピュータに表示させるシーケンス図生成工程を実行する請求項5及び請求項6記載のいずれか1項に記載のデグレードテスト支援方法。
The processing flow database stores a pre-repair processing flow database that stores pre-repair processing flow information including the hierarchy and processing order of the module or method of the pre-repair source, and a hierarchy and processing order of the module or method of the renovated source Including a post-repair process flow database that stores post-repair process flow information,
The computer system generates a pre-repair sequence diagram that expresses the exchange between the module and the method along the time axis based on the hierarchy and processing order of the module or method of the pre-repair source stored in the pre-repair process flow database. , Generating a modified sequence diagram that expresses the exchange between the module and the method along the time axis based on the hierarchy and processing order of the module or method of the modified source stored in the modified processing flow database, and executes the execution result comparison step Motomeko 5 and claim 6, wherein that perform diagram generation step of displaying the representative computer to change the color of the modules or method there are differences in the value of the extracted execution result variable record by The degradation test support method according to any one of the above.
前記コンピュータシステムが、階層データベースからデグレード発生箇所の対象モジュール名及び対象メソッド名を上位対象モジュール名及び上位対象メソッド名として抽出する上位抽出工程と、前記階層データベースから前記上位対象モジュール名及び上位対象メソッド名を階層構造の親とする下位対象モジュール名及び下位対象メソッド名とを抽出する下位抽出工程と、該下位抽出工程を前記下位対象モジュール名及び下位対象メソッド名がソースの最終行でないと判定するまで繰り返す繰り返し工程とを実行し、前記上位抽出工程及び下位抽出工程によって抽出した対象モジュール名及び対象メソッド名とに基づいてデグレード発生箇所の対象モジュール名及び対象メソッド名が影響を及ぼす呼び出し先一覧情報を作成して表示する工程とを実行する呼び出し先一覧抽出を行う請求項5から7何れか1項に記載のデグレードテスト支援方法。 An upper extraction step in which the computer system extracts a target module name and a target method name of a degradation occurrence location from a hierarchical database as an upper target module name and an upper target method name; and the upper target module name and an upper target method from the hierarchical database A lower-level extraction step for extracting a lower-level target module name and a lower-level target method name whose name is the parent of the hierarchical structure, and determining that the lower-level extraction step is not the last line of the source Call destination list information affected by the target module name and target method name of the occurrence of degradation based on the target module name and target method name extracted by the upper extraction step and the lower extraction step. Create and display Degraded test support method according the call destination list extracted from the line jar請 Motomeko 5 7 any one of claims 1 to run the door. 階層構造のモジュール及びメソッドを含む改修後のソースをテストするための担当用コンピュータと接続され、改修前後のソースを格納するソースデータベースと、前記改修前後のソースのモジュール又はメソッドの階層と処理順とを含む処理フロー情報を格納する処理フローデータベースと、前記改修前後のソースの各ステップが参照する変数を格納する実行結果データベースとを備え、前記改修前後のソースを参照して改修後のソースにデグレードが発生したか否かを試験するコンピュータシステムのデグレードテスト支援プログラムであって、
該コンピュータシステムに、
前記改修前後のソースのステップ毎に処理実行順を出力させる処理順出力機能及び前記ステップで参照可能な変数を出力させる変数値出力機能を埋め込んだ改修前後のテスト用ソースを生成するテスト用ソース生成機能と、
前記改修前後のテスト用ソースから改修前後のテスト用オブジェクトコードを生成するコンパイル機能と、
前記改修前後のテスト用オブジェクトコードを実行し、前記処理順出力機能によって出力された処理フロー情報を前記処理フローデータベースに格納すると共に前記変数値出力機能によって出力された変数を前記実行結果データベースに格納するテスト実行機能と、
前記実行結果データベースから実行結果の変数の値に差異がある前記改修前後のテスト用オブジェクトコードのレコードを抽出し、該抽出したレコードのモジュール名及びメソッド名と、該抽出したレコードの上位レコードの上位モジュール名及び上位メソッド名を前記処理フローデータベースに格納した処理フロー情報の階層及び処理順を参照して抽出し、該抽出した複数のモジュール名及びメソッド名並びに上位モジュール名及び上位メソッド名を担当用コンピュータに表示させる実行結果比較機能とを実現させるデグレードテスト支援プログラム。
A source database connected to a computer in charge for testing a modified source including a module and a method having a hierarchical structure, storing a source before and after the modification, and a hierarchy and processing order of the module or method of the source before and after the modification; Including a processing flow database for storing processing flow information including an execution result database for storing variables referred to by each step of the source before and after the modification, and degrading the source after the modification with reference to the source before and after the modification A computer system degradation test support program for testing whether or not
In the computer system,
Test source generation for generating a test source before and after renovation in which a processing order output function for outputting a processing execution order for each step of the source before and after the renovation and a variable value output function for outputting a variable that can be referred to in the step are embedded Function and
A compile function for generating test object code before and after the modification from the test source before and after the modification;
The test object code before and after the modification is executed, the processing flow information output by the processing order output function is stored in the processing flow database, and the variable output by the variable value output function is stored in the execution result database A test execution function to
Extract the test object code records before and after the modification that have a difference in the value of the execution result variable from the execution result database, and extract the module name and method name of the extracted record, and the upper record of the upper record of the extracted record The module name and the upper method name are extracted by referring to the hierarchy and processing order of the processing flow information stored in the processing flow database, and the plurality of extracted module names and method names, the upper module name and the upper method name are for charge. Lud grade test support program to realize the execution result comparison function to be displayed on the computer.
前記実行結果データベースが、改修前テスト用オブジェクトコードの実行により出力された変数を格納する改修前実行結果データベースと、改修後テスト用オブジェクトコードの実行により出力された変数を格納する改修後実行結果データベースとを含み、
前記実行結果比較機能において、前記コンピュータシステムに、改修前実行結果データベース及び改修後実行結果データベース個々のモジュール名とメソッド名と行数と変数名と値のフィールドを等結合する機能と、前記値のフィールドが異なるレコードを実行結果の変数の値に差異があるレコードとして抽出させる機能とを実現させる請求項9記載のデグレードテスト支援プログラム。
The execution result database stores the variables output by executing the pre-repair test object code and the post-reformation execution result database storing the variables output by the execution of the post-repair test object code. Including
In the execution result comparison function, the computer system includes a function for combining the module name, method name, number of lines, variable name, and value fields of the execution result database before the modification and the execution result database after the modification, Motomeko 9 wherein degraded test support program of field Ru to realize a function to extract a record there is a difference in the value of the execution result different record variable.
前記処理フローデータベースが、改修前ソースのモジュール又はメソッドの階層と処理順とを含む改修前処理フロー情報を格納する改修前処理フローデータベースと、改修後ソースのモジュール又はメソッドの階層と処理順とを含む改修後処理フロー情報を格納する改修後処理フローデータベースとを含み、
前記コンピュータシステムに、改修前処理フローデータベースに格納した改修前ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修前シーケンス図を生成する機能と、前記改修後処理フローデータベースに格納した改修後ソースのモジュール又はメソッドの階層と処理順とに基づいてモジュール及びメソッド間のやりとりを時間軸に沿って表現する改修後シーケンス図を生成する機能と、前記実行結果比較機能により抽出した実行結果の変数の値に差異があるレコードのモジュール又はメソッドの色を変化させたシーケンス図を担当用コンピュータに表示させる機能を実現させる請求項9及び請求項10のいずれか1項に記載のデグレードテスト支援プログラム。
The processing flow database stores a pre-repair processing flow database that stores pre-repair processing flow information including the hierarchy and processing order of the module or method of the pre-repair source, and a hierarchy and processing order of the module or method of the renovated source Including a post-repair process flow database that stores post-repair process flow information,
The computer system generates a pre-repair sequence diagram that expresses the exchange between the module and the method along the time axis based on the hierarchy of the pre-reform source module or method stored in the pre-reform process flow database and the processing order. Function to generate a sequence diagram after modification that represents the exchange between modules and methods along the time axis based on the function and the hierarchy and processing order of the module or method of the modified source stored in the post-repair processing flow database When the execution result comparison function Motomeko 9 and Ru is achieving the function of displaying the charge computer a sequence diagram of changing the color of the modules or method there are differences in the value of the extracted execution result variable record by The degradation test support program according to claim 10.
前記コンピュータシステムに、
階層データベースからデグレード発生箇所の対象モジュール名及び対象メソッド名を上位対象モジュール名及び上位対象メソッド名として抽出する上位抽出機能と、前記階層データベースから前記上位対象モジュール名及び上位対象メソッド名を階層構造の親とする下位対象モジュール名及び下位対象メソッド名とを抽出する下位抽出機能と、該下位抽出機能を前記下位対象モジュール名及び下位対象メソッド名がソースの最終行でないと判定するまで繰り返す繰り返し機能とを実行させ、
前記上位抽出機能及び下位抽出機能によって抽出した対象モジュール名及び対象メソッド名とに基づいてデグレード発生箇所の対象モジュール名及び対象メソッド名が影響を及ぼす呼び出し先一覧情報を作成して表示する表示機能とを実行させる呼び出し先一覧抽出機能を設けた請求項9から請求項11何れか1項に記載のデグレードテスト支援プログラム。
In the computer system,
A higher-level extraction function that extracts the target module name and target method name of the occurrence of degradation from the hierarchical database as the upper target module name and upper target method name, and the upper target module name and upper target method name from the hierarchical database in a hierarchical structure A lower-level extraction function that extracts a lower-level target module name and a lower-level target method name as a parent, and a repetition function that repeats the lower-level extraction function until it is determined that the lower-level target module name and the lower-level target method name are not the last line of the source And execute
A display function for creating and displaying call destination list information affected by the target module name and the target method name of the occurrence of degradation based on the target module name and the target method name extracted by the upper extraction function and the lower extraction function; The degradation test support program according to claim 9, further comprising a call destination list extraction function for executing
JP2012171058A 2012-08-01 2012-08-01 Degradation test support system, degradation test support method, and degradation test support program Expired - Fee Related JP6006577B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012171058A JP6006577B2 (en) 2012-08-01 2012-08-01 Degradation test support system, degradation test support method, and degradation test support program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012171058A JP6006577B2 (en) 2012-08-01 2012-08-01 Degradation test support system, degradation test support method, and degradation test support program

Publications (2)

Publication Number Publication Date
JP2014032447A JP2014032447A (en) 2014-02-20
JP6006577B2 true JP6006577B2 (en) 2016-10-12

Family

ID=50282248

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012171058A Expired - Fee Related JP6006577B2 (en) 2012-08-01 2012-08-01 Degradation test support system, degradation test support method, and degradation test support program

Country Status (1)

Country Link
JP (1) JP6006577B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6475288B2 (en) * 2017-07-07 2019-02-27 三菱電機インフォメーションシステムズ株式会社 Program comparison method, program comparison device, and program comparison program
WO2023199407A1 (en) * 2022-04-12 2023-10-19 日本電信電話株式会社 Maintenance work assistance device, maintenance work assistance method, and program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10320234A (en) * 1997-05-21 1998-12-04 Hitachi Ltd Automatic test method for software
JP4763743B2 (en) * 2008-03-28 2011-08-31 日本電信電話株式会社 Program operation comparison apparatus and method and program

Also Published As

Publication number Publication date
JP2014032447A (en) 2014-02-20

Similar Documents

Publication Publication Date Title
US10261781B2 (en) Correcting non-compliant source code in an integrated development environment
US11386154B2 (en) Method for generating a graph model for monitoring machinery health
US9734214B2 (en) Metadata-based test data generation
US9588871B1 (en) Method and system for dynamic business rule extraction
CN102681835A (en) Code clone notification and architectural change visualization
US11074162B2 (en) System and a method for automated script generation for application testing
US9152539B2 (en) Tag-based graphical user interface production systems and methods
JP2008191963A (en) Source code verification system, source code verification method and source code verification program
WO2012052215A1 (en) Software development
US20200012658A1 (en) Systems and methods for facilitating data transformation
JP2015204065A (en) Test case generation device and test case generation method
Tierno et al. Open issues for the automotive software testing
CN104657274A (en) Method and device for testing software interface
CN106919431B (en) Code comparison method, equipment and system in continuous integration
JP6310527B1 (en) Object analysis apparatus, object analysis method, and program
JP6006577B2 (en) Degradation test support system, degradation test support method, and degradation test support program
CN108090234A (en) A kind of information network method for auto constructing of software-oriented defect
Zhang et al. How effective are they? Exploring large language model based fuzz driver generation
Gorthi et al. Specification-based approach to select regression test suite to validate changed software
JP7557431B2 (en) Apparatus and method for supporting source code modification
CN117573564B (en) Method for automatically identifying differences based on gitlab code submitted log
JP6169302B2 (en) Specification configuration apparatus and method
JP2008197897A (en) Test pattern generation apparatus and generation method
JP6287093B2 (en) Software development support apparatus, software development support method and program
JP2014002565A (en) Effect range extraction method and effect range extraction program of application program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160412

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160801

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160909

R150 Certificate of patent or registration of utility model

Ref document number: 6006577

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

LAPS Cancellation because of no payment of annual fees