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 PDFInfo
- 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
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
前述の特許文献1に記載の技術は、改修前後プログラムにおける当該プログラムのデグレード有無を効率よく検証、確認することができ、特許文献2に記載の技術は、改修前後プログラムのテスト内容を電子ファイル化し、デグレード検出を効率的に確認することができるものの、デグレード発生タイミングやデグレード発生箇所を確認することが考慮されておらず、プログラム設計書の見直し及びソースの解析が必要となるという課題と、デグレードが発生したメソッドを参照しているモジュールを確認することが考慮されておらず、影響範囲の特定に漏れが発生する可能性があるという課題があった。
The technique described in
特に近年においては、システム開発案件において短納期や高品質化の要求が高まっており、その中で大規模システムの改修作業ではデグレードテストにおける工数が大きなウェイトを占め、デグレードが発生した場合の発生箇所の特定や影響範囲の特定にも膨大な工数が費やされ、工程の圧迫が課題となっている。 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.
以下、本発明によるデグレードテスト支援方法及びデグレードテスト支援プログラムを実現するデグレードテスト支援システムの一実施形態を図面を参照して詳細に説明する。 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
前記ソース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
前記変数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
前記関連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
前記階層DB018は、ソースを構成するモジュール及びメソッド中の最上位モジュール・最上位メソッドから最下位モジュール・最下位メソッドまでの階層構造を格納するものであって、図13(a)に示す如く、ユニークに採番された識別子であるIDと、バージョンアップ等による改修前(フラグ「0」)と改修後(フラグ「1」)を区別するための区分と、プログラム階層構造の最上位のモジュール名を表す基準_モジュール名と、プログラム階層構造の最上位のメソッド名である基準_メソッド名と、プログラムの階層位置を表す階層(最上位モジュールの場合「1」)と、呼び出し元のモジュール名を表す親_モジュール名と、呼び出し元のメソッド名を表す親_メソッド名と、呼び出し元の行数を表す親_行数と、呼び出し先のモジュール名を表す子_モジュール名と、呼び出し先のメソッド名を表す子_メソッド名の各項目情報とから成り、具体的には、図13(b)に示す如く、ID「1」且つ区分「0」のモジュールの基準_モジュール名が「XXX」、基準_メソッド名が「xxx01」、階層が「1」、親_モジュール名が「XXX」、親_メソッド名が「xx01」、親_行数が「4」、子_モジュール名が「YYY」、子_メソッド名が「yyy01」の如く格納されている。
The
前記処理フロー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
前記実行結果DB020は、各ステップで参照可能な変数の値を格納するものであって、図15に示す如く、ユニークに採番された識別子であるIDと、バージョンアップ等による改修前(フラグ「0」)と改修後(フラグ「1」)を区別するための区分と、処理が実行された順に割れ当てられる連番と、実行されたメソッドのモジュール名と、実行されたステップのメソッド名と、実行されたステップの行数と、ステップ実行による出力対象の変数名と、ステップ実行による出力対象の変数が要素数の場合に各要素の値を識別するための要素数と、変数の値の各項目情報とから成り、具体的には、図15(a)及び(b)に示す如く格納される。
The
[動作]
[全体動作]
次に、前述のように構成されたデグレードテスト支援システムの全体動作を説明するが、このデグレードテスト支援処理は、改修後のソースに大きなエラーが含まれる場合は、後述するコンパイル時又はテスト実行時に検出され、これらコンパイル時又はテスト実行時には発見されないデグレードのテストを対象とするものであって、改修前後の処理フロー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
さて、本実施形態によるデグレードテスト支援システムは、まず、図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
次いで、本実施形態によるデグレードテスト支援システムは、前記改修前後のプログラム(オブジェクトコード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
前記改修前後の出力結果が異なる情報を一覧表示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
このように本実施形態によるデグレードテスト支援システム、デグレードテスト支援方法及びデグレードテスト支援プログラムは、改修前後のソースに処理順出力機能及び変数値出力機能を埋め込んだテスト用のオブジェクトコード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
[詳細動作]
次に前述した各処理部の詳細動作について説明する。
[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
[モジュール関連分析部003動作]
前記モジュール関連分析部003による改修前ソース028及び改修後ソース029のモジュールの関連(呼びだし元の親モジュール又は親メソッドと呼び出し先の子モジュール又は子メソッドとの関連)を分析して関連DB017に格納する工程は、図4に示す如く、ソースファイルを読み込むステップS401と、該ステップS401により読み込んだソースのレコードが最終行か否かを判定し、最終行と判定したときに処理を終了するステップS402と、該ステップS402において最終行でないと判定したときにカレント行を読み込むステップS403と、該ステップS403により読み込んだカレント行が下位モール呼び出しのためのメソッド呼び出し箇所か否かを判定し、下位モール呼び出しでないと判定したときに前記ステップS402に戻るステップS404と、該ステップS404において下位モール呼び出しであると判定したときに当該カレント行に含まれる呼び出し元のモジュール名とメソッド名と呼び出し先のモジュール名とメソッド名とを関連DB017へ格納し、前記ステップS402に戻るステップS405とを実行することによって、親子モジュール及びモジュールの関連を図12に示した如く関連DB017に格納することができる。
[Module-related
The module
[モジュール階層分析部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
次いで、本実施形態による階層構造の経路の抽出処理は、モジュール階層分析部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
このステップ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
次いで本実施形態による階層構造の経路の抽出処理は、前記ステップ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
これら一連の処理によって本実施形態によるモジュール階層分析部004が関連DB107に格納した改修前後のソースプログラムに含まれるプログラムを構成する最上位モジュールから最下位モジュールまでの階層構造の経路をモジュール及びメソッドの親子関係に基づいて階層DB018に格納することができる。
Through this series of processing, the module
前記テスト用ソース生成部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
[実行結果比較部007動作]
前記実行結果比較部007による処理フローDB019並びに実行結果DB020に格納したステップ毎の処理実行順(処理フロー情報)及び該当ステップで参照可能な変数の値に基づいてデグレード発生有無を後述の処理により判定して改修前後の出力結果が異なる情報を一覧表示024する工程は、図7に示す如く、まず、変数[v_WorkNo](変数の変数名)を宣言するステップS701と、改修前後の実行結果DB020A及び020Bを比較し、処理結果の変数の値に差異があるレコードを抽出するステップS704を実行する。
[Execution
The execution
このステップ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
次いで、本実施形態による改修前後の出力結果が異なる情報を一覧表示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
[シーケンス図生成部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
次いで、本実施形態によるシーケンス図生成部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
即ち、本実施形態によるシーケンス図生成部008は、図14に例示した改修前後の処理フロー情報に基づいて改修前後の処理フロー図を生成し、この生成した改修前後の処理フロー図に対してソースの実行結果の差異(変数内)を実行結果DB020A及び020Bに基づいて判定し、差異があった変数値を出力したステップの該当箇所(例えば、図17右側の破線部分)を色分け表示することによって、デグレード発生タイミングやデグレード発生箇所を管理者に目視可能に表示することができる。
That is, the sequence
[呼び出し先の一覧抽出部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
このように本実施形態によるデグレードテスト支援方法及びデグレードテスト支援プログラムを実現するデグレードテスト支援システムは、改修前後のソースのステップ毎に処理実行順を出力させる処理順出力機能及び前記ステップで参照可能な変数を出力させる変数値出力機能を埋め込んだ改修前後のテスト用ソースを生成するテスト用ソース生成部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
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
該コンピュータシステムが、
前記改修前後のソースのステップ毎に処理実行順を出力させる処理順出力機能及び前記ステップで参照可能な変数を出力させる変数値出力機能を埋め込んだ改修前後のテスト用ソースを生成するテスト用ソース生成工程と、
前記改修前後のテスト用ソースから改修前後のテスト用オブジェクトコードを生成するコンパイル工程と、
前記改修前後のテスト用オブジェクトコードを実行し、前記処理順出力機能によって出力された処理フロー情報を前記処理フローデータベースに格納すると共に前記変数値出力機能によって出力された変数を前記実行結果データベースに格納するテスト実行工程と、
前記実行結果データベースから実行結果の変数の値に差異がある前記改修前後のテスト用オブジェクトコードのレコードを抽出し、該抽出したレコードのモジュール名及びメソッド名と、該抽出したレコードの上位レコードの上位モジュール名及び上位メソッド名を前記処理フローデータベースに格納した処理フロー情報の階層及び処理順を参照して抽出し、該抽出した複数のモジュール名及びメソッド名並びに上位モジュール名及び上位メソッド名を担当用コンピュータに表示させる実行結果比較工程とを実行するデグレードテスト支援方法。 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.
該コンピュータシステムに、
前記改修前後のソースのステップ毎に処理実行順を出力させる処理順出力機能及び前記ステップで参照可能な変数を出力させる変数値出力機能を埋め込んだ改修前後のテスト用ソースを生成するテスト用ソース生成機能と、
前記改修前後のテスト用ソースから改修前後のテスト用オブジェクトコードを生成するコンパイル機能と、
前記改修前後のテスト用オブジェクトコードを実行し、前記処理順出力機能によって出力された処理フロー情報を前記処理フローデータベースに格納すると共に前記変数値出力機能によって出力された変数を前記実行結果データベースに格納するテスト実行機能と、
前記実行結果データベースから実行結果の変数の値に差異がある前記改修前後のテスト用オブジェクトコードのレコードを抽出し、該抽出したレコードのモジュール名及びメソッド名と、該抽出したレコードの上位レコードの上位モジュール名及び上位メソッド名を前記処理フローデータベースに格納した処理フロー情報の階層及び処理順を参照して抽出し、該抽出した複数のモジュール名及びメソッド名並びに上位モジュール名及び上位メソッド名を担当用コンピュータに表示させる実行結果比較機能とを実現させるデグレードテスト支援プログラム。 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
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)
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)
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 |
-
2012
- 2012-08-01 JP JP2012171058A patent/JP6006577B2/en not_active Expired - Fee Related
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 |