JP2018014000A - テスト支援プログラム、テスト支援装置、及びテスト支援方法 - Google Patents

テスト支援プログラム、テスト支援装置、及びテスト支援方法 Download PDF

Info

Publication number
JP2018014000A
JP2018014000A JP2016143779A JP2016143779A JP2018014000A JP 2018014000 A JP2018014000 A JP 2018014000A JP 2016143779 A JP2016143779 A JP 2016143779A JP 2016143779 A JP2016143779 A JP 2016143779A JP 2018014000 A JP2018014000 A JP 2018014000A
Authority
JP
Japan
Prior art keywords
program
event
time
test
break
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.)
Pending
Application number
JP2016143779A
Other languages
English (en)
Inventor
秀喜 郷
Hideki Go
秀喜 郷
温 金子
Atsushi Kaneko
温 金子
正哉 進藤
Masaya Shindo
正哉 進藤
英次 水沼
Eiji Mizunuma
英次 水沼
和隆 谷口
Kazutaka Taniguchi
和隆 谷口
泰裕 鈴木
Yasuhiro Suzuki
泰裕 鈴木
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016143779A priority Critical patent/JP2018014000A/ja
Priority to US15/628,795 priority patent/US20180024904A1/en
Publication of JP2018014000A publication Critical patent/JP2018014000A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3414Workload generation, e.g. scripts, playback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3041Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is an input/output interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】タイミングテストを効率化する。
【解決手段】評価値付与部28が、テスト対象のプログラムの処理において発生する複数種類のイベントを検出し、検出したイベントの各々について、イベントの種類に応じて予め定められた評価値を付与する。区切り生成部30が、評価値付与部28によってイベントの各々について付与された評価値を期間毎に統合して、期間に対応する統合値を生成し、生成された統合値に基づいて、テスト対象のプログラムの処理の区切りを生成する。
【選択図】図4

Description

本発明は、テスト支援プログラム、テスト支援装置、及びテスト支援方法に関する。
従来、情報処理システムに対して行うテストに関する技術が存在する。
例えば、対象装置のハードウェア構成に含まれている各要素に対する負荷の変動パターンを決定し、決定された変動パターンで各ハードウェア要素を動作させ、各ハードウェア要素の動作が正常であるか否かを確認する試験方法が提案されている。
また、プログラムのソースコードや設計情報などから静的に解析可能な実行順序のパターンを設定する検証方法が提案されている。
また、テスト項目間について存在する同タイミング変化パターンの個数に基づいて、関連テスト項目を提示する方法が提案されている。
特開2012−174092号公報 特開平11−242614号公報 特開2013−142967号公報
システムテストの一例として、プログラムを1つの情報処理システムとし、利用者の観点からテストを実施するタイミングテストがある。
タイミングテストは、情報処理システムで実行される処理を、意味のある単位の処理に細分化し、細分化した処理を、1回以上別の操作と組み合わせて実行して、結果に問題がないかを確認するようなテストである。
例えば、情報処理システムの処理が、前処理、受信処理、変換処理、送信処理、後処理に細分化される場合、それぞれの処理において少なくとも1回のテストの実施が必要である。
タイミングテストは、情報処理システムの開発者によるテストとは異なり、情報処理システムの処理の区切りが不明の状態で実施される。そのため、タイミングテストは、テスト担当者によりタイミングをずらしながら、何度もテストを繰り返すことにより実施されている。
このため、テストの繰り返し実施と、繰り返し得られたテスト結果の確認が必要になり、多くの時間、多くの人手が掛かり、効率的にタイミングテストを実施することができない。
一つの側面として、本発明は、タイミングテストを効率化することを目的とする。
本発明は、一つの態様として、テスト対象のプログラムの実行により発生する複数のイベントに関する情報を取得する。そして、取得した前記複数のイベントに関する情報それぞれを、前記複数のイベントそれぞれの発生時刻の類似度に応じて一又は複数のイベントグループに分類する。そして、前記一又は複数のイベントグループそれぞれ毎に、それぞれのイベントグループに分類されたイベントそれぞれに応じた評価値の合計値を算出する。そして、算出した前記合計値に基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行う。そして、前記一又は複数のイベントグループそれぞれに応じた時刻のうち、前記区切りが存在すると判定された時刻が存在する場合、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する。
一つの側面として、タイミングテストを効率化することができる、という効果を有する。
タイミングテストの一例を説明するための説明図である。 タイミングテストを実施するための処理の区切りを特定する方法の一例を示す図である。 実施形態に係るテスト支援システムの概略構成を示す機能ブロック図である。 実施形態に係るテスト支援装置の概略構成を示す機能ブロック図である。 処理結果記憶部に記憶されるデータの一例を示す図である。 処理の区切りの生成を説明するための説明図である。 処理の区切りの候補である変化点に付与された評価値と統合値とを説明するための説明図である。 区切り記憶部に記憶されるデータの一例を示す図である。 処理の区切りに関するレベルの各々とレベルに応じて生成された区切りの各々とを説明するための説明図である。 処理の区切りに関するレベルの各々と区切りの確度とタイミングテストの実施の数との関係を説明するための説明図である。 処理の区切りに関するレベルに応じたタイミングテストの実施の数の一例を説明するための説明図である。 実施形態に係るテスト支援装置として機能するコンピュータの概略構成を示すブロック図である。 実施形態におけるテスト処理の一例を示すフローチャートである。
以下、図面を参照して、本発明の実施の形態の一例を詳細に説明する。
<タイミングテストについて>
まず、本実施形態の詳細を説明する前に、タイミングテストにおける処理の区切りについて説明する。
情報処理システムで実行されるプログラムに対し、利用者の観点からテストを実施するタイミングテストが知られている。
図1にタイミングテストを説明するための図を示す。図1に示すように、例えば、情報処理システムにおけるプログラムの処理として、前処理、受信処理、変換処理、送信処理、後処理が存在する場合、タイミングテストでは各処理において少なくとも1回のテストの実施が必要である。例えば、上記図1に示す例では、各処理において1回のOSダウンのテストが実施される。
ここで、タイミングテストを行うタイミングを決定する場合の例としては、以下のような単純な方法が考えられる。
まず、テスト担当者は、情報処理システムにおいてテスト対象のプログラムを実行させ、処理の過程において観測可能なメッセージ、ファイル有無、及び性能情報などの情報を利用することにより、プログラムの処理を分割する。観測可能な性能情報としては、例えば、CPU使用率、メモリ使用率、及びディスクIO(Input/Output)数などが挙げられる。
テスト担当者は、メッセージ、ファイル有無、及び性能情報の挙動に変化があったタイミングを、プログラムの処理の区切りであるとする。この場合、テスト担当者は、より具体的には以下の情報を利用することにより、処理の区切りを特定する。
メッセージによる区切りの特定では、システムログの情報が利用される。システムログには、「xxx処理開始/停止」、「ファイル転送開始/停止」等のメッセージが表示されるため、テスト担当者は、システムログに新たなメッセージが表示された時点をシステムログの情報の変化点とする。そして、テスト担当者は、変化点を処理の区切りとして特定する。
また、ファイル有無による区切りの特定では、ファイル一覧表示コマンドにより取得される情報が利用される。例えば、テスト担当者はファイル一覧表示コマンドを実行し、ファイルの作成が開始された時点又はファイルの削除が終了した時点等を、ファイル有無の変化点とする。そして、テスト担当者は、変化点を処理の区切りとして特定する。
また、CPU使用率による区切りの特定では、CPU使用率の変化により区切りが判断される。例えば、テスト担当者は、CPU使用率の値が変化した変化点を処理の区切りとして特定する。
また、メモリ使用率による区切りの特定では、メモリ使用率の変化により区切りが判断される。例えば、テスト担当者は、メモリ使用率の値が変化した変化点を処理の区切りとして特定する。
また、ディスクIO数による区切りの特定では、ディスクIO数の変化により区切りが判断される。例えば、テスト担当者は、ディスクIO数の値が変化した変化点を処理の区切りとして特定する。
このように、テスト担当者は、メッセージ、ファイル有無、性能情報の一例としてのCPU使用率、メモリ使用率、及びディスクIO数等の情報を利用して、処理の区切りを特定することが考えられる。
上記の単純な手法を整理すると、以下のように区切りの特定が行われる。
(1)プログラムの処理過程における全ての変化点を区切りとみなす。
(2)性能情報の変化点をもとに、性能情報の変化量が小さい場合でも区切りとみなす。
(3)メッセージ及びファイル有無と性能情報とでは、区切りとなり得る確度が異なるにも関わらず、全て同等に扱う。
しかし、上記の単純な方法では、メッセージ、ファイル有無、及び性能情報から、処理の区切りを判断するための閾値の基準が明確ではないため、意味のある処理の単位での区切りを特定することができない。また、全ての変化点が処理の区切りとして特定されるため、区切りの個数が増え、タイミングテストの実施の回数が増加する。これにより、タイミングテストのテスト時間が増加し人手も多くかかる。
図2に上記の単純な手法を用いて得られた処理の区切りを説明するための説明図を示す。図2は、横軸方向が時間を表し、縦軸方向が、プログラムの処理内容、メッセージ、ファイル有無、CPU使用率、メモリ使用率、及びディスクIO数を表す図である。図2に示す例では、プログラムの処理内容として、処理A〜Gが存在する場合を例に説明する。図2に示すように、システムログの情報におけるメッセージ1〜4の表示、ファイル一覧表示コマンドにより取得される情報におけるファイル作成、及び性能情報の値の変化が、変化点と判定され、変化点が処理の区切りとして特定される。このため、処理の区切りの数が膨大になってしまい、タイミングテストの実施の回数が増加する。
そこで、本実施形態では、上記の単純な手法に「情報の重要度」及び「性能情報の変化率の閾値」の2つの観点を追加することで、意味のある処理の区切りの特定の確度を高める。さらに、区切りの確度を数値で表示して、どのレベルのタイミングテストを実施するかをテスト担当者へ表示し、テスト担当者が区切りのレベルを選択できるようにする。
<実施形態>
図3に示すように、実施形態に係るテスト支援システム100は、情報処理システム10とテスト支援装置12とを含む。情報処理システム10とテスト支援装置12とは、例えば、LAN等の通信回線を介して接続されている。
情報処理システム10は、タイミングテストのテスト対象のシステムである。情報処理システム10において、タイミングテストのテスト対象のプログラムが実行される。
テスト支援装置12は、情報処理システム10にテスト対象のプログラムを実行させ、プログラムの処理で発生するイベントを検出し、検出結果に基づいて処理の区切りを生成する。テスト支援装置12は、図4に示すように、制御部20と、表示部40とを備えている。
制御部20は、図4に示すように、送受信部22と、処理結果記憶部24と、変化点検出部26と、評価値付与部28と、区切り生成部30と、区切り記憶部32と、表示制御部34と、タイミング決定部36とを備えている。
送受信部22は、情報処理システム10との間で情報の送受信を行う。具体的には、送受信部22は、情報処理システム10から送信された、テスト対象のプログラムの処理結果を受信する。また、送受信部22は、テスト対象のプログラムの処理結果を処理結果記憶部24に記憶する。送受信部22は、本発明の取得部の一例である。
本実施形態では、送受信部22は、テスト対象のプログラムの実行時におけるメッセージの表示、ファイル作成の有無、CPU使用率、メモリ使用率、及びディスクIO数を、処理結果として処理結果記憶部24に記憶する場合について説明する。
メッセージは、情報処理システム10のシステムログに格納された情報から得られるものであり、例えば、「xxx処理開始/停止」、「ファイル転送開始/停止」等のメッセージとしてシステムログに表示される。また、ファイル作成は、例えばファイル一覧表示コマンド等により取得され、ファイルの作成が開始された時点又はファイルの削除が終了した時点等を示す情報として取得される。また、CPU使用率、メモリ使用率、及びディスクIO数は、情報処理システム10においてプログラムの実行時に出力されるパフォーマンスログから取得される。
送受信部22は、情報処理システム10における上記の複数種類の処理結果の各々を、時刻と対応付けて時系列に処理結果記憶部24に記憶される処理結果テーブル41に記録する。図5に、処理結果テーブル41の一例を示す。なお、本実施形態では、1秒毎に処理結果が記録される場合を例に説明する。処理結果は、本発明のイベントに関する情報の一例である。
図5に示す処理結果テーブル41の例では、時刻1[sec]において、「メッセージ1表示」が記録されている。また、時刻5[sec]において、「メッセージ2表示」が記録されている。また、時刻7[sec]において、「ファイル作成」が記録されている。
また、図5に示す処理結果テーブル41では、CPU使用率、メモリ使用率、及びディスクIO数が時系列に記録される。
変化点検出部26は、処理結果記憶部24に記憶された処理結果に基づいて、テスト対象のプログラムの処理において発生する複数種類のイベントに応じた変化点を検出する。変化点は、テスト対象のプログラムの処理の区切りの候補である。変化点の検出は、本発明のイベントの検出の一例である。
本実施形態では、テスト対象のプログラムの処理結果から、2種類の変化点が検出される場合について説明する。1種類目の変化点は、メッセージ表示又はファイル作成に対応する処理内容に関するイベントに応じた変化点である。2種類目の変化点は、CPU使用率の変化、メモリ率使用の変化、及びディスクIO数の変化等を表す性能に関するイベントに応じた変化点である。
ここで、処理内容に関するイベントに応じた変化点は、処理の区切りとなる確度が高い。一方、性能に関するイベントに応じた変化点は、処理内容に関するイベントに応じた変化点に比べ、処理の区切りである確度が低い。
そこで、本実施形態では、処理内容に関するイベントの発生時点での性能情報の変化率の値を、性能に関するイベントに応じた変化点に関する閾値として設定する。なお、本実施形態では、以下の算出式に示すように、単位時間当たりの性能情報の変化量を変化率として定義する。
変化率=性能情報の変化量/単位時間
例えば、性能情報としてCPU使用率を考えた場合、単位時間当たりのCPU使用率の変化量が変化率となる。
従って、まず、変化点検出部26は、処理内容に関するイベントの発生時点での性能情報の変化率を、性能に関するイベントに応じた変化点に関する閾値として設定する。
なお、処理内容に関するイベントの発生時点での性能情報の変化率の値が複数存在する場合には、複数の性能情報の変化率の平均値を、変化点に関する閾値として算出する。また、性能情報の変化率が複数存在する場合、複数の変化率のうち最大値又は最小値を変化点に関する閾値として算出することも可能である。
図6に、処理の区切りの生成を説明するための図を示す。図6は、横軸方向が時間を表し、縦軸方向が、プログラムの処理内容、テスト対象のプログラムの処理の流れ、メッセージ、ファイル有無、CPU使用率、メモリ使用率、及びディスクIO数の各処理結果を表す。
上記図6に示す例では、プログラムの処理内容として、処理A〜Gが存在する。また、上記図6では、メッセージ表示に対応するイベントとして、「メッセージ1表示」、「メッセージ2表示」、「メッセージ3表示」、及び「メッセージ4表示」が発生する。また、ファイル作成に対応するイベントとして、「ファイル作成」が発生する。上記図6に示すひし形で囲われた領域が、処理内容に関するイベントが発生した時点でのCPU使用率、メモリ使用率、又はディスクIO数の変化を示している。
例えば、上記図6に示す例では、処理内容に関するイベントである、メッセージ表示のイベントが4箇所存在し、ファイル作成のイベントが1箇所存在する。そのため、変化点検出部26は、CPU使用率、メモリ使用率、及びディスクIO数の各々について、メッセージ表示のイベント及びファイル作成のイベントの発生時点に対応する時点の変化率の各々の平均を算出する。そして、変化点検出部26は、CPU使用率、メモリ使用率、及びディスクIO数の各々について算出された平均を、性能に関するイベントに応じた変化点に関する閾値として算出する。
次に、変化点検出部26は、イベントの種類と、算出した変化点に関する閾値とに基づいて、変化点を検出する。
具体的には、処理内容に関するイベントについては、処理結果記憶部24に記憶されたプログラムの処理結果のうち、処理内容に関する処理結果に対応付けられた時刻に、その処理結果を示すイベントが発生したものとする。そこで、変化点検出部26は、当該イベントの発生時点を、処理内容に関するイベントに応じた変化点として検出する。
また、性能に関するイベントについては、処理結果記憶部24に記憶された処理結果に含まれる性能情報の各値に基づいて、性能情報の変化率が設定した閾値以上となる場合を、性能に関するイベントの発生とみなす。そこで、変化点検出部26は、当該イベントの発生時点を、性能に関するイベントに応じた変化点として検出する。
例えば、上記図6に示す例では、変化点検出部26は、「メッセージ1表示」、「メッセージ2表示」、「メッセージ3表示」、「メッセージ4表示」、及び「ファイル作成」のイベントの発生時点を、処理内容に関するイベントに応じた変化点として検出する。また、上記図6に示す例では、各性能情報の処理結果について、「変化有」と表記されている箇所を、性能情報の変化率が設定した閾値以上となる箇所であるとする。この場合、当該箇所が、性能に関するイベントに応じた変化点として検出される。上記図6に示す例では、矢印の箇所が変化点を表している。
評価値付与部28は、変化点検出部26によって検出された変化点に対応するイベントに基づいて、変化点の各々に、イベントの種類に応じて予め定められた評価値を付与する。
上述したように、処理内容に関するイベントに応じた変化点は、処理の区切りである確度が高い。一方、性能に関するイベントに応じた変化点は、処理内容に関するイベントに応じた変化点に比べ、処理の区切りである確度が低い。
そのため、本実施形態では、処理内容に関するイベントに応じた変化点と、性能に関するイベントに応じた変化点との重要度の違いを考慮した評価値を設定する。各変化点に対応するイベントの種類による重要度の違いを考慮した評価値を付与することで、処理の区切りの精度を高めることができる。
処理内容に関するイベントに応じた変化点は、性能に関するイベントに応じた変化点に比べ、区切りとなる確度が高いため、本実施形態では、イベントの種類に応じて以下の評価値を付与する。
(1)メッセージ表示:評価値2.0を付与
(2)ファイル作成:評価値2.0を付与
(3)性能情報の変化(CPU使用率、メモリ使用率、及びディスクIO数):評価値0.5を付与
区切り生成部30は、変化点検出部26により検出された変化点に対応する時刻に基づいて、各変化点を所定の期間で統合する。そして、区切り生成部30は、評価値付与部28によって変化点の各々に付与された評価値に基づいて、期間に対応する統合値を生成し、期間内の代表時刻に対応付ける。すなわち、区切り生成部30は、変化点のそれぞれを、変化点の発生時刻の類似度に応じて一又は複数のイベントグループに分類する。次に、区切り生成部30は、一又は複数のイベントグループそれぞれ毎に、それぞれのイベントグループに分類されたイベントそれぞれに応じた評価値の統合値を算出する。そして、区切り生成部30は、統合値をイベントグループ内の代表時刻に対応付ける。区切り生成部30は、本発明の算出部及び判定部の一例である。また、統合値は、本発明の合計値の一例である。
具体的には、区切り生成部30は、複数の変化点が所定の期間内の連続した時刻に存在する場合、期間内に存在する変化点に付与された評価値を統合して、期間に対応する統合値を生成する。例えば、所定の期間を3秒とした場合について説明する。この場合、まず区切り生成部30は、各時刻t秒について、t秒とt+1秒との間で複数の変化点が存在し、かつ各時刻に変化点が存在する箇所を検出する。そして、区切り生成部30は、t秒とt+1秒との間で複数の変化点が存在する場合、t秒とt+1秒とt+2秒とに存在する複数の変化点に対応するイベントの評価値を統合して、統合値を生成する。そして、区切り生成部30は、t秒とt+1秒とt+2秒とに対応する統合値を生成した後、t+3秒の時刻から次の処理を開始する。そのため、一度統合値に統合された評価値は以後の処理において統合の対象とはされず、統合されていない評価値が以後の処理において統合の対象となる。なお、t秒とt+1秒との間で複数の変化点が存在しない場合には、区切り生成部30は、t秒に存在する変化点に対応するイベントの評価値を統合値として生成する。
例えば、上記図6に示す「メッセージ2表示」箇所では、3秒間の連続した各時刻(時間5、時間6、時間7)に変化点が存在する。この場合、時間5と時間6との間で複数の変化点が存在するため、区切り生成部30は、時間5と時間6と時間7とに存在する複数の変化点に対応するイベントの評価値を統合して、統合値5.5を生成し、代表時刻(例えば、時間6)の変化点に対応付ける。
また、区切り生成部30は、例えば、上記図6に示す、時間3と時間4の箇所では、1つの変化点しか存在しないため、時間3に存在する変化点に対応するイベントの評価値0.5を統合値として生成する。そして、区切り生成部30は、統合値0.5を代表時刻(例えば、時間3)の変化点に対応付ける。
図7に、変化点に付与された評価値の統合を説明するための図を示す。図7は、図6における変化点に対して評価値が付与され、評価値が統合された統合値の例を示す。図7に示すように、各変化点の評価値が統合されて統合値が生成される。
そして、区切り生成部30は、生成した統合値に基づいて、イベントグループそれぞれに応じた時刻に、プログラムにより実行される処理の区切りが存在するか否かの判定を行い、テスト対象のプログラムの処理の区切りを生成する。具体的には、区切り生成部30は、処理の区切りに関する複数のレベルの各々に対し、生成された統合値と当該レベルとに基づいて、テスト対象のプログラムの処理の区切りを生成する。処理の区切りに関するレベルは、統合値の大きさに応じて予め設定される。例えば、処理の区切りに関する複数のレベルをレベル1〜レベル4として、以下の(ア)〜(エ)のように設定される。
(ア)レベル1:統合値2.0以上
(イ)レベル2:統合値1.5以上
(ウ)レベル3:統合値1.0以上
(エ)レベル4:統合値0.5以上
区切り生成部30は、生成した統合値と、処理の区切りに関するレベルとに基づいて、レベルとして設定された値以上である統合値に対応する変化点を、区切りとして生成する。なお、t秒とt+1秒との間で複数の変化点が存在し、複数の変化点に対応するイベントの評価値が統合されて統合値が生成された場合、代表時刻に対応する変化点が区切りとして生成される。
なお、区切り生成部30は、処理の区切りに関する複数のレベルのうち、例えばユーザにより操作部(図示省略)を介して選択されたレベルに基づいて、当該レベルとして設定された値以上である統合値に対応する変化点を、区切りとして生成してもよい。
区切り記憶部32には、区切り生成部30によって生成された区切りの各々が記憶される。なお、区切り記憶部32には、処理の区切りに関するレベルと、当該レベルに応じて生成された区切りの各々とが対応付けられて記憶される。
図8に区切り記憶部32に記憶される区切りテーブル42の一例を示す。図8に示すように、区切りテーブル42には、処理の区切りに関するレベルと、当該レベルに応じて生成された区切りの各々とが対応付けられて記憶される。
上記図8に示す区切りテーブル42に示すように、処理の区切りに関するレベルに応じて、異なる区切りが生成される。
図9に、処理の区切りに関するレベルの各々と、レベルに応じて生成された区切りの各々とを時系列に並べた図を示す。図9においては、数字が格納された四角印が区切りを表しており、四角内の数字は統合値を表している。図9に示すように、処理の区切りに関するレベルに応じて、異なる区切りが生成される。
表示制御部34は、テスト対象のプログラムの処理の開始後の経過時間を示す情報と対応付けて、区切り記憶部32に記憶された区切りを示す情報を表示部40に表示させる。具体的には、表示制御部34は、イベントグループそれぞれに応じた時刻のうち、区切りが存在すると判定された時刻が存在する場合、区切りが存在すると判定された時刻を示唆する情報を、プログラムの実行開始後の経過時間に対応付けて表示させる。表示制御部34は、例えば、上記図9に示すような画面を表示部40に表示させる。なお、処理の区切りは未知であるため、図9における処理A〜Gのブロックは実際には表示されない。
タイミング決定部36は、区切り記憶部32に記憶された処理の区切りに基づいて、テスト対象のプログラムの処理を複数のブロックに分離する。そして、タイミング決定部36は、複数のブロックの各々について、当該ブロックでの処理の開始及び終了のタイミングに応じて、テスト対象のプログラムの処理とは異なる他の処理を実行するタイミングを決定する。テスト対象のプログラムの処理とは異なる他の処理の一例としては、タイミングテストにおける各処理でのテストが挙げられる。
例えば、タイミング決定部36は、複数のブロックの各々について、当該ブロックでの処理の開始と終了との間において、1回のOSダウンのテストが実施されるようにタイミングを決定する。
表示部40には、テスト対象のプログラムの処理の開始後の経過時間を示す情報と対応付けられた区切りを示す情報が表示される。なお、区切り生成部30によって、ユーザにより選択されたレベルとして設定された値以上である統合値に基づいて、区切りが生成された場合には、選択されたレベルに対応する区切りの各々が表示される。また、表示部40には、タイミング決定部36によって決定されたテストを実行するタイミングが表示される。
テスト担当者は、表示部40に表示された情報に基づいて、タイミングテストの実施方法を検討する。例えば、テスト担当者はテスト目的、期間等を考慮してどのレベルに対応する区切りでテストを実施するかを選択する。また、例えば、テスト担当者は、確度の高い区切りを利用したい場合には、値の大きな統合値に対応するレベルを選択し、漏れのないタイミングテストを実施したい場合には、値の小さな統合値に対応するレベルを選択してもよい。
図10に、処理の区切りに関するレベルの各々と、区切りの確度と、タイミングテストの実施の数との関係を示す。
図10に示すように、処理の区切りに関するレベルが(ア)である場合、すなわち、統合値が2.0以上の変化点を区切りとして生成する場合には、確度が最高のレベルの区切りのみが生成される。このため、区切りの数は少なくなり、タイミングテストにおける各処理でのテストの実施数は少なくなる。一方、処理の区切りに関するレベルが(エ)である場合、すなわち、統合値が0.5以上の変化点を区切りとして生成する場合には、確度の低い区切りも生成される。このため、区切りの数が多くなり、タイミングテストにおける各処理でのテストの実施数も最多となる。
図11に、上記図9に示した例を上記図10に適用させた場合を示す。図11に示すように、例えば、処理の区切りに関するレベルが(ア)である場合には、処理の区切りは4箇所であるため、タイミングテストにおける各処理でのテストの実施回数は3回となる。また、処理の区切りに関するレベルが(エ)である場合には、処理の区切りは13箇所であるため、タイミングテストにおける各処理でのテストの実施回数は12回となる。
テスト支援装置12の制御部20は、例えば、図12に示すコンピュータ50で実現することができる。コンピュータ50はCPU51、一時記憶領域としてのメモリ52、及び不揮発性の記憶部53を備える。また、コンピュータ50は、表示装置及び入力装置等の入出力装置54、及び記憶媒体59に対するデータの読み込み及び書き込みを制御するread/write(R/W)部55を備える。また、コンピュータ50は、インターネット等のネットワークに接続されるネットワークinterface(I/F)56を備える。CPU51、メモリ52、記憶部53、入出力装置54、R/W部55、及びネットワークI/F56は、バス57を介して互いに接続される。
記憶部53は、Hard Disk Drive(HDD)、solid state drive(SSD)、フラッシュメモリ等によって実現できる。記憶媒体としての記憶部53には、コンピュータ50をテスト支援装置12の制御部20として機能させるためのテスト支援プログラム60が記憶されている。テスト支援プログラム60は、送受信プロセス61と、変化点検出プロセス62と、評価値付与プロセス63と、区切り生成プロセス64と、表示制御プロセス65と、タイミング決定プロセス66とを有する。また、記憶部53は、処理結果記憶部24を構成する情報が記憶される処理結果記憶領域67と、区切り記憶部32を構成する情報が記憶される区切り記憶領域68とを有する。
CPU51は、テスト支援プログラム60を記憶部53から読み出してメモリ52に展開し、テスト支援プログラム60が有するプロセスを順次実行する。CPU51は、送受信プロセス61を実行することで、図4に示す送受信部22として動作する。また、CPU51は、変化点検出プロセス62を実行することで、図4に示す変化点検出部26として動作する。また、CPU51は、評価値付与プロセス63を実行することで、図4に示す評価値付与部28として動作する。また、CPU51は、区切り生成プロセス64を実行することで、図4に示す区切り生成部30として動作する。また、CPU51は、表示制御プロセス65を実行することで、図4に示す表示制御部34として動作する。また、CPU51は、タイミング決定プロセス66を実行することで、図4に示すタイミング決定部36として動作する。また、CPU51は、処理結果記憶領域67から情報を読み出して、処理結果記憶部24をメモリ52に展開する。また、CPU51は、区切り記憶領域68から情報を読み出して、区切り記憶部32をメモリ52に展開する。これにより、テスト支援プログラム60を実行したコンピュータ50が、テスト支援装置12の制御部20として機能することになる。
なお、テスト支援プログラム60により実現される機能は、例えば半導体集積回路、より詳しくはApplication Specific Integrated Circuit(ASIC)等で実現することも可能である。
次に、実施形態に係るテスト支援装置12の作用について説明する。例えば、テスト支援システム100において、テスト支援装置12が情報処理システム10にテスト対象のプログラムを実行させ、送受信部22が情報処理システム10から複数種類の処理結果を受信する。次に、送受信部22は、複数種類の処理結果の各々を、時刻と対応付けて時系列に処理結果記憶部24に記憶される処理結果テーブル41に記録する。そして、テスト支援装置12において、図13に示すテスト支援処理が実行される。以下、各処理について詳述する。
図13に示すテスト支援処理のステップS100で、変化点検出部26は、処理結果記憶部24に記憶された処理結果を取得する。
次に、ステップS102において、変化点検出部26は、上記ステップS100で取得した処理結果のうち、処理内容に関するイベントの発生時点での性能情報の変化率を、性能に関するイベントに応じた変化点に関する閾値として設定する。
ステップS104において、変化点検出部26は、処理内容に関するイベントについては、当該イベントの発生時点を処理内容に関するイベントに応じた変化点として検出する。
また、変化点検出部26は、性能に関するイベントについては、処理結果記憶部24に記憶された処理結果に含まれる性能情報の各値に基づいて、性能情報の変化率が上記ステップS102で設定した閾値以上となる場合を、性能に関するイベントの発生とみなす。そして、変化点検出部26は、性能に関するイベントの発生時点を、性能に関するイベントに応じた変化点として検出する。
ステップS106において、評価値付与部28は、上記ステップS104で検出された変化点に対応するイベントに基づいて、変化点の各々に、イベントの種類に応じて予め定められた評価値を付与する。
ステップS108において、区切り生成部30は、上記ステップS104で検出された変化点に対応する時刻に基づいて、各変化点を所定の期間で統合する。そして、区切り生成部30は、上記ステップS106で変化点の各々に付与された評価値に基づいて、期間に対応する統合値を生成し、期間内の代表時刻に対応付ける。
ステップS110において、区切り生成部30は、処理の区切りに関する複数のレベルの各々に対し、生成された統合値と当該レベルとに基づいて、テスト対象のプログラムの処理の区切りを生成する。そして、区切り生成部30は、処理の区切りに関するレベルと、当該レベルに応じて生成された区切りの各々とを対応付けて、区切り記憶部32に記憶させる。
ステップS112において、表示制御部34は、テスト対象のプログラムの処理の開始後の経過時間を示す情報と対応付けて、上記ステップS110で区切り記憶部32に記憶された区切りを示す情報を表示部40に表示させる。
ステップS114において、タイミング決定部36は、上記ステップS110で区切り記憶部32に記憶された処理の区切りに基づいて、テスト対象のプログラムの処理を複数のブロックに分離する。そして、タイミング決定部36は、複数のブロックの各々について、当該ブロックでの処理の開始及び終了のタイミングに応じて、テストを実行するタイミングを決定する。そして、タイミング決定部36は、テスト対象のプログラムの処理の開始後の経過時間を示す情報と対応付けられた区切りを示す情報を表示部40に表示させて、テスト支援処理は終了する。
以上説明したように、実施形態に係るテスト支援装置は、テスト対象のプログラムの処理において発生する複数種類のイベントを検出する。次に、テスト支援装置は、検出したイベントの各々について、イベントの種類に応じて予め定められた評価値を付与する。そして、テスト支援装置は、イベントの各々について付与された評価値を期間毎に統合して、期間に対応する統合値を生成する。そして、テスト支援装置は、生成された統合値に基づいて、テスト対象のプログラムの処理の区切りを生成する。これにより、変化点の全てを処理の区切りとして生成する場合に比べ、タイミングテストのテスト回数を抑制できる。すなわち、実施形態に係るテスト支援装置によれば、タイミングテストを効率化することができる。
また、実施形態に係るテスト支援装置は、イベントの各々について付与された評価値を期間毎に統合して、期間に対応する統合値を生成する。そして、テスト支援装置は、統合値に基づいて、テスト対象のプログラムの処理の区切りを生成するため、タイミングテストのテスト回数を抑制することができる。
また、実施形態に係るテスト支援装置は、処理の区切りに関する複数のレベルに応じて生成された区切りを、テスト対象のプログラムの処理の開始後の経過時間を示す情報と対応付けて表示する。これにより、テスト担当者は、複数のレベルに対応する処理の区切りを確認することができる。そのため、テスト対象のシステムの詳細知識がないテスト担当者であっても、テスト支援装置によって得られた処理の区切りに基づくタイミングテストを効率的に実施することができる。
また、実施形態に係るテスト支援装置は、選択されたレベルに対して生成された区切りを、テスト対象のプログラムの処理の開始後の経過時間を示す情報と対応付けて表示する。これにより、テスト担当者は、選択されたレベルに対応する区切りを確認することができる。
また、実施形態に係るテスト支援装置は、生成された処理の区切りに基づいて、テスト対象のプログラムの処理を複数のブロックに分離する。そして、実施形態に係るテスト支援装置は、複数のブロックの各々について、ブロックでの処理の開始及び終了のタイミングに応じて、テスト対象のプログラムの処理とは異なる他の処理を実行するタイミングを決定する。これにより、タイミングテストを実行するタイミングが決定されるため、処理の区切りに基づいたタイミングテストを効率的に実施することができる。
また、実施形態に係るテスト支援装置によって得られる区切りの各々は、テスト対象のプログラムの実行結果に基づくものである。そのため、得られた区切りを用いてタイミングテストを実施することによりテストの信頼性を維持することができ、テスト時間を短縮することができる。
なお、上記では、テスト支援プログラム60が記憶部53に予め記憶(インストール)されている態様を説明したが、これに限定されない。本発明に係るプログラムは、CD−ROM、DVD−ROM、USBメモリ等の記録媒体に記録された形態で提供することも可能である。
次に、実施形態の変形例を説明する。
本実施形態では、処理内容に関するイベントがメッセージ及びファイル有無であり、性能に関するイベントがCPU使用率、メモリ使用率、及びディスクIO数の各々の閾値以上の変化である場合を例に説明したが、これに限定されない。他のイベントを用いて変化点を検出してもよい。
また、本実施形態では、情報処理システム10とテスト支援装置12とが異なる装置である場合を例に説明したが、これに限定されるものではない。例えばテスト支援装置内において、タイミングテストのテスト対象のプログラムを実行し、処理の区切りを生成してもよい。
また、本実施形態では、統合値を生成する処理の一例として、所定の期間を3秒とし、t秒とt+1秒との間で複数の変化点が存在する箇所を検出し、t秒とt+1秒とt+2秒とに対応する評価値を統合する場合を例に説明したが、これに限定されるものではない。複数の変化点に付与された評価値を統合して、期間に対応する統合値を生成する処理であれば、他の処理を用いても良い。
また、本実施形態において、区切り生成部30は、処理の区切りに関する複数のレベルのうち、ユーザによって選択されたレベルとして設定された値以上である統合値に対応する変化点を、区切りとして生成してもよい旨の説明をしたが、これに限定されない。例えば、他の処理に応じて選択されたレベルに基づいて、当該レベルとして設定された値以上である統合値に対応する変化点を、区切りとして生成してもよい
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
テスト対象のプログラムの実行により発生する複数のイベントに関する情報を取得し、
取得した前記複数のイベントに関する情報それぞれを、前記複数のイベントそれぞれの発生時刻の類似度に応じて一又は複数のイベントグループに分類し、
前記一又は複数のイベントグループそれぞれ毎に、それぞれのイベントグループに分類されたイベントそれぞれに応じた評価値の合計値を算出し、
算出した前記合計値に基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
前記一又は複数のイベントグループそれぞれに応じた時刻のうち、前記区切りが存在すると判定された時刻が存在する場合、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
処理をコンピュータに実行させるテスト支援プログラム。
(付記2)
前記プログラムにより実行される処理の区切りが存在するか否かの判定の際に、処理の区切りに関する予め設定された複数のレベルの各々に対し、算出した前記合計値と前記レベルとに基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
付記1に記載のテスト支援プログラム。
(付記3)
前記プログラムにより実行される処理の区切りが存在するか否かの判定の際に、処理の区切りに関する予め設定された複数のレベルのうちの選択された前記レベルと、算出した前記合計値とに基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
付記1に記載のテスト支援プログラム。
(付記4)
前記区切りが存在すると判定された時刻を示唆する情報に基づいて、前記プログラムにより実行される処理を複数のブロックに分離し、
前記複数のブロックの各々について、前記ブロックでの処理の開始及び終了のタイミングに応じて、前記プログラムにより実行される処理とは異なる他の処理を実行するタイミングを決定する
付記1〜付記3の何れか1項に記載のテスト支援プログラム。
(付記5)
取得した前記イベントに関する情報の各々について、前記イベントに応じて、前記イベントが前記区切りの候補である変化点であるか否かを検出し、
前記変化点として検出されたイベントの各々について、イベントに応じて予め定められた評価値を付与する
付記1〜付記4の何れか1項に記載のテスト支援プログラム。
(付記6)
取得した前記イベントに関する情報の各々について、
前記イベントが前記プログラムの処理内容に関するイベントである場合には、前記イベントは前記変化点であると検出し、
前記イベントが前記プログラムを実行するシステムの性能に関するイベントである場合には、前記処理内容に関するイベントの発生時刻における前記性能に関するイベントの変化率から予め設定された閾値に基づいて、前記イベントの変化率が前記閾値より大きい場合に、前記イベントは前記変化点であると検出し、
前記評価値を付与する際に、前記変化点として検出されたイベントの各々について、イベントに応じて予め定められた評価値を付与する
付記5に記載のテスト支援プログラム。
(付記7)
テスト対象のプログラムの実行により発生する複数のイベントに関する情報を取得する取得部と、
前記取得部によって取得した前記複数のイベントに関する情報それぞれを、前記複数のイベントそれぞれの発生時刻の類似度に応じて一又は複数のイベントグループに分類し、
前記一又は複数のイベントグループそれぞれ毎に、それぞれのイベントグループに分類されたイベントそれぞれに応じた評価値の合計値を算出する算出部と、
前記算出部によって算出した前記合計値に基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行う判定部と、
前記一又は複数のイベントグループそれぞれに応じた時刻のうち、前記区切りが存在すると判定された時刻が存在する場合、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する表示制御部と、
を含むテスト支援装置。
(付記8)
前記プログラムにより実行される処理の区切りが存在するか否かの判定の際に、処理の区切りに関する予め設定された複数のレベルの各々に対し、算出した前記合計値と前記レベルとに基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
付記7に記載のテスト支援装置。
(付記9)
前記プログラムにより実行される処理の区切りが存在するか否かの判定の際に、処理の区切りに関する予め設定された複数のレベルのうちの選択された前記レベルと、算出した前記合計値とに基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
付記7に記載のテスト支援装置。
(付記10)
前記区切りが存在すると判定された時刻を示唆する情報に基づいて、前記プログラムにより実行される処理を複数のブロックに分離し、
前記複数のブロックの各々について、前記ブロックでの処理の開始及び終了のタイミングに応じて、前記プログラムにより実行される処理とは異なる他の処理を実行するタイミングを決定する
付記7〜付記9の何れか1項に記載のテスト支援装置。
(付記11)
取得した前記イベントに関する情報の各々について、前記イベントに応じて、前記イベントが前記区切りの候補である変化点であるか否かを検出し、
前記変化点として検出されたイベントの各々について、イベントに応じて予め定められた評価値を付与する
付記7〜付記10の何れか1項に記載のテスト支援装置。
(付記12)
取得した前記イベントに関する情報の各々について、
前記イベントが前記プログラムの処理内容に関するイベントである場合には、前記イベントは前記変化点であると検出し、
前記イベントが前記プログラムを実行するシステムの性能に関するイベントである場合には、前記処理内容に関するイベントの発生時刻における前記性能に関するイベントの変化率から予め設定された閾値に基づいて、前記イベントの変化率が前記閾値より大きい場合に、前記イベントは前記変化点であると検出し、
前記評価値を付与する際に、前記変化点として検出されたイベントの各々について、イベントに応じて予め定められた評価値を付与する
付記11に記載のテスト支援装置。
(付記13)
取得部が、テスト対象のプログラムの実行により発生する複数のイベントに関する情報を取得し、
算出部が、取得部によって取得した前記複数のイベントに関する情報それぞれを、前記複数のイベントそれぞれの発生時刻の類似度に応じて一又は複数のイベントグループに分類し、
前記一又は複数のイベントグループそれぞれ毎に、それぞれのイベントグループに分類されたイベントそれぞれに応じた評価値の合計値を算出し、
判定部が、前記算出部によって算出した前記合計値に基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
表示制御部が、前記一又は複数のイベントグループそれぞれに応じた時刻のうち、前記区切りが存在すると判定された時刻が存在する場合、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
処理をコンピュータに実行させるテスト支援方法。
(付記14)
判定部は、前記プログラムにより実行される処理の区切りが存在するか否かの判定の際に、処理の区切りに関する予め設定された複数のレベルの各々に対し、算出した前記合計値と前記レベルとに基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
表示制御部は、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
付記13に記載のテスト支援方法。
(付記15)
判定部は、前記プログラムにより実行される処理の区切りが存在するか否かの判定の際に、処理の区切りに関する予め設定された複数のレベルのうちの選択された前記レベルと、算出した前記合計値とに基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
表示制御部は、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
付記13に記載のテスト支援方法。
(付記16)
タイミング決定部は、前記区切りが存在すると判定された時刻を示唆する情報に基づいて、前記プログラムにより実行される処理を複数のブロックに分離し、
前記複数のブロックの各々について、前記ブロックでの処理の開始及び終了のタイミングに応じて、前記プログラムにより実行される処理とは異なる他の処理を実行するタイミングを決定する
付記13〜付記15の何れか1項に記載のテスト支援方法。
(付記17)
変化点検出部は、取得した前記イベントに関する情報の各々について、前記イベントに応じて、前記イベントが前記区切りの候補である変化点であるか否かを検出し、
算出部は、前記変化点として検出されたイベントの各々について、イベントに応じて予め定められた評価値を付与する
付記13〜付記16の何れか1項に記載のテスト支援方法。
(付記18)
変化点検出部は、取得した前記イベントに関する情報の各々について、
前記イベントが前記プログラムの処理内容に関するイベントである場合には、前記イベントは前記変化点であると検出し、
前記イベントが前記プログラムを実行するシステムの性能に関するイベントである場合には、前記処理内容に関するイベントの発生時刻における前記性能に関するイベントの変化率から予め設定された閾値に基づいて、前記イベントの変化率が前記閾値より大きい場合に、前記イベントは前記変化点であると検出し、
算出部は、前記評価値を付与する際に、前記変化点として検出されたイベントの各々について、イベントに応じて予め定められた評価値を付与する
付記17に記載のテスト支援方法。
(付記19)
テスト対象のプログラムの実行により発生する複数のイベントに関する情報を取得し、
取得した前記複数のイベントに関する情報それぞれを、前記複数のイベントそれぞれの発生時刻の類似度に応じて一又は複数のイベントグループに分類し、
前記一又は複数のイベントグループそれぞれ毎に、それぞれのイベントグループに分類されたイベントそれぞれに応じた評価値の合計値を算出し、
算出した前記合計値に基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
前記一又は複数のイベントグループそれぞれに応じた時刻のうち、前記区切りが存在すると判定された時刻が存在する場合、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
処理をコンピュータに実行させるテスト支援プログラムを記憶した記憶媒体。
10 情報処理システム
12 テスト支援装置
20 制御部
22 送受信部
24 処理結果記憶部
26 変化点検出部
28 評価値付与部
30 区切り生成部
32 区切り記憶部
34 表示制御部
36 タイミング決定部
40 表示部
41 処理結果テーブル
42 区切りテーブル
50 コンピュータ
51 CPU
52 メモリ
53 記憶部
59 記録媒体
60 テスト支援プログラム
100 テスト支援システム

Claims (6)

  1. テスト対象のプログラムの実行により発生する複数のイベントに関する情報を取得し、
    取得した前記複数のイベントに関する情報それぞれを、前記複数のイベントそれぞれの発生時刻の類似度に応じて一又は複数のイベントグループに分類し、
    前記一又は複数のイベントグループそれぞれ毎に、それぞれのイベントグループに分類されたイベントそれぞれに応じた評価値の合計値を算出し、
    算出した前記合計値に基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
    前記一又は複数のイベントグループそれぞれに応じた時刻のうち、前記区切りが存在すると判定された時刻が存在する場合、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
    処理をコンピュータに実行させるテスト支援プログラム。
  2. 前記プログラムにより実行される処理の区切りが存在するか否かの判定の際に、処理の区切りに関する予め設定された複数のレベルの各々に対し、算出した前記合計値と前記レベルとに基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
    前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
    請求項1に記載のテスト支援プログラム。
  3. 前記プログラムにより実行される処理の区切りが存在するか否かの判定の際に、処理の区切りに関する予め設定された複数のレベルのうちの選択された前記レベルと、算出した前記合計値とに基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
    前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
    請求項1に記載のテスト支援プログラム。
  4. 前記区切りが存在すると判定された時刻を示唆する情報に基づいて、前記プログラムにより実行される処理を複数のブロックに分離し、
    前記複数のブロックの各々について、前記ブロックでの処理の開始及び終了のタイミングに応じて、前記プログラムにより実行される処理とは異なる他の処理を実行するタイミングを決定する
    請求項1〜請求項3の何れか1項に記載のテスト支援プログラム。
  5. テスト対象のプログラムの実行により発生する複数のイベントに関する情報を取得する取得部と、
    前記取得部によって取得した前記複数のイベントに関する情報それぞれを、前記複数のイベントそれぞれの発生時刻の類似度に応じて一又は複数のイベントグループに分類し、
    前記一又は複数のイベントグループそれぞれ毎に、それぞれのイベントグループに分類されたイベントそれぞれに応じた評価値の合計値を算出する算出部と、
    前記算出部によって算出した前記合計値に基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行う判定部と、
    前記一又は複数のイベントグループそれぞれに応じた時刻のうち、前記区切りが存在すると判定された時刻が存在する場合、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する表示制御部と、
    を含むテスト支援装置。
  6. 取得部が、テスト対象のプログラムの実行により発生する複数のイベントに関する情報を取得し、
    算出部が、取得部によって取得した前記複数のイベントに関する情報それぞれを、前記複数のイベントそれぞれの発生時刻の類似度に応じて一又は複数のイベントグループに分類し、
    前記一又は複数のイベントグループそれぞれ毎に、それぞれのイベントグループに分類されたイベントそれぞれに応じた評価値の合計値を算出し、
    判定部が、前記算出部によって算出した前記合計値に基づき、前記一又は複数のイベントグループそれぞれに応じた時刻に、前記プログラムにより実行される処理の区切りが存在するか否かの判定を行い、
    表示制御部が、前記一又は複数のイベントグループそれぞれに応じた時刻のうち、前記区切りが存在すると判定された時刻が存在する場合、前記区切りが存在すると判定された時刻を示唆する情報を、前記プログラムの実行開始後の経過時間に対応付けて表示する、
    処理をコンピュータに実行させるテスト支援方法。
JP2016143779A 2016-07-21 2016-07-21 テスト支援プログラム、テスト支援装置、及びテスト支援方法 Pending JP2018014000A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016143779A JP2018014000A (ja) 2016-07-21 2016-07-21 テスト支援プログラム、テスト支援装置、及びテスト支援方法
US15/628,795 US20180024904A1 (en) 2016-07-21 2017-06-21 Test support device and test support method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016143779A JP2018014000A (ja) 2016-07-21 2016-07-21 テスト支援プログラム、テスト支援装置、及びテスト支援方法

Publications (1)

Publication Number Publication Date
JP2018014000A true JP2018014000A (ja) 2018-01-25

Family

ID=60988538

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016143779A Pending JP2018014000A (ja) 2016-07-21 2016-07-21 テスト支援プログラム、テスト支援装置、及びテスト支援方法

Country Status (2)

Country Link
US (1) US20180024904A1 (ja)
JP (1) JP2018014000A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3561751A1 (en) * 2018-04-25 2019-10-30 Tata Consultancy Services Limited Systems and methods for quantitative assessment of user experience (ux) of a digital product
JP2022165669A (ja) * 2021-04-20 2022-11-01 株式会社日立製作所 異常検出装置、異常検出方法、および異常検出プログラム
CN117234859B (zh) * 2023-11-14 2024-03-12 苏州元脑智能科技有限公司 一种性能事件监控方法、装置、设备和存储介质

Also Published As

Publication number Publication date
US20180024904A1 (en) 2018-01-25

Similar Documents

Publication Publication Date Title
JP6260130B2 (ja) ジョブ遅延検知方法、情報処理装置、およびプログラム
JPWO2008129635A1 (ja) 性能障害要因分析プログラムおよび性能障害要因分析装置
JP2012185642A (ja) テスト・ケース生成方法、プログラム及びシステム
JP2015026222A (ja) テストプログラム、テスト方法及びテスト装置
JP6079243B2 (ja) 障害分析支援装置、障害分析支援方法、及びプログラム
JP2010002370A (ja) パターン抽出プログラム、方法及び装置
CN112016689B (zh) 信息处理装置、预测判别***以及预测判别方法
WO2014184928A1 (ja) 検出装置、検出方法、および記録媒体
JP2007334716A (ja) 運用管理システム、監視装置、被監視装置、運用管理方法及びプログラム
JP2016012193A (ja) 抽出方法、装置、及びプログラム
JP2018014000A (ja) テスト支援プログラム、テスト支援装置、及びテスト支援方法
CN116089482A (zh) 分析大规模数据处理作业
JP2015176230A (ja) テストケース生成装置、方法、及びプログラム
JP2012186667A (ja) ネットワーク障害検出装置、ネットワーク障害検出装置のネットワーク障害検出方法およびネットワーク障害検出プログラム
US20150058272A1 (en) Event correlation detection system
CN114141302A (zh) 固态硬盘的测试方法及电子设备
JP6416588B2 (ja) ソースコード検証システム
JP2015185027A (ja) ジョブ判別プログラム、装置、及び方法
KR20150128711A (ko) 컴퓨터 시스템 활동의 트레이스 타임라인을 분석하기 위한 방법 및 시스템
JP5392820B2 (ja) 性能評価モデリングのための関数選択手法
JP2013077124A (ja) ソフトウェアテストケース生成装置
JP6627258B2 (ja) システムモデル生成支援装置、システムモデル生成支援方法、及び、プログラム
US20170371770A1 (en) Automatically establishing significance of static analysis results
CN104239199A (zh) 虚拟机器人的生成方法、自动化测试方法及相关装置
CN104142885A (zh) 一种用于对被测程序进行异常测试的方法和装置