JP7238439B2 - Information processing device, test method, and test program - Google Patents

Information processing device, test method, and test program Download PDF

Info

Publication number
JP7238439B2
JP7238439B2 JP2019016355A JP2019016355A JP7238439B2 JP 7238439 B2 JP7238439 B2 JP 7238439B2 JP 2019016355 A JP2019016355 A JP 2019016355A JP 2019016355 A JP2019016355 A JP 2019016355A JP 7238439 B2 JP7238439 B2 JP 7238439B2
Authority
JP
Japan
Prior art keywords
test
information processing
software
tests
failed
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.)
Active
Application number
JP2019016355A
Other languages
Japanese (ja)
Other versions
JP2020123287A (en
Inventor
俊宏 望月
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2019016355A priority Critical patent/JP7238439B2/en
Publication of JP2020123287A publication Critical patent/JP2020123287A/en
Application granted granted Critical
Publication of JP7238439B2 publication Critical patent/JP7238439B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、情報処理装置、テスト方法、及びテストプログラムに関する。 The present invention relates to an information processing device, test method, and test program.

テスト対象となるソフトウェアを自動的にテストして、テスト結果を出力するテストシステムが知られている。 A test system that automatically tests software to be tested and outputs test results is known.

また、ソフトウェア開発プロジェクトにおいて、バグを分析して、バグによる手戻り工数等から優先すべき課題を選定するバグ分析方法、及び装置が知られている(例えば、特許文献1参照) Also known is a bug analysis method and apparatus for analyzing bugs in a software development project and selecting priority issues from the number of rework due to bugs, etc. (see, for example, Patent Document 1).

しかし、テスト対象となるソフトウェアを自動的にテストするテストシステムでは、例えば、同じ障害(バグ)が原因で複数のテストが不合格になった場合でも、その原因が同じ障害であるか否かを自動的に判別することは困難である。従って、テストシステムは、同じ障害が原因で複数のテストが不合格になった場合でも、不合格になった全てのテストについて障害票を起票し、設計者は、起票された複数の障害票を解析して不合格の原因となった障害を判別しなければならないという問題がある。 However, in a test system that automatically tests the software under test, for example, even if multiple tests fail due to the same defect (bug), it is difficult to determine whether the cause is the same defect. It is difficult to distinguish automatically. Therefore, the test system raises a problem ticket for every test that fails, even if multiple tests fail due to the same problem, and the designer is responsible for the multiple problems raised. There is the problem of having to parse the ballot to determine the fault that caused the failure.

本発明の一実施形態は、上記の問題点に鑑みてなされたものであって、ソフトウェアを自動的にテストする情報処理システムにおいて、同じ障害が原因で複数のテストが不合格になった場合に、不合格の原因となった障害の解析を効率的に行えるようにする。 SUMMARY OF THE INVENTION An embodiment of the present invention has been made in view of the above problems. , to make it possible to efficiently analyze failures that have caused failures.

上記目的を達成するため、本発明の一実施形態に係る情報処理装置は、テスト対象となるソフトウェアをテストする情報処理装置であって、前記ソフトウェアに関する複数のテストの実行を制御するテスト制御部と、前記複数のテストのうち、不合格になったテストおいて、前記ソフトウェアに機能面の特徴があるかどうかを判断する第1の判断部と、前記ソフトウェアに現象面の特徴があるかどうかを判断する第2の判断部と、前記第1の判断部と前記第2の判断部の判断結果に基づいて、前記不合格の原因となった障害に関するテスト結果を出力する出力部と、を有する。
To achieve the above object, an information processing apparatus according to one embodiment of the present invention is an information processing apparatus for testing software to be tested, comprising a test control unit for controlling execution of a plurality of tests on the software; a first judgment unit for judging whether or not the software has functional characteristics in a failed test among the plurality of tests; a second judging section for judging; and an output section for outputting a test result related to a fault that caused the failure based on judgment results of the first judging section and the second judging section. .

本発明の一実施形態によれば、ソフトウェアを自動的にテストする情報処理システムにおいて、同じ障害が原因で複数のテストが不合格になった場合に、不合格の原因となった障害の解析を効率的に行えるようになる。 According to one embodiment of the present invention, in an information processing system for automatically testing software, when multiple tests fail due to the same failure, the failure that caused the failure is analyzed. be able to do so efficiently.

一実施形態に係る情報処理システムのシステム構成の例を示す図である。1 is a diagram illustrating an example of a system configuration of an information processing system according to an embodiment; FIG. 一実施形態に係るテストツールの構成例を示す図である。It is a figure which shows the structural example of the test tool which concerns on one Embodiment. 一実施形態に係る情報処理装置のハードウェア構成の例を示す図である。It is a figure which shows the example of the hardware constitutions of the information processing apparatus which concerns on one Embodiment. 一実施形態に係る情報処理装置の機能構成の例を示す図である。It is a figure showing an example of functional composition of an information processor concerning one embodiment. 一実施形態に係るテスト仕様について説明するための図である。FIG. 4 is a diagram for explaining test specifications according to one embodiment; 一実施形態に係るテストケースの例について説明するための図である。FIG. 4 is a diagram for explaining an example of test cases according to an embodiment; FIG. 第1の実施形態に係る情報処理装置の処理の例を示すフローチャートである。4 is a flow chart showing an example of processing of the information processing apparatus according to the first embodiment; 第2の実施形態に係る情報処理装置の処理の例を示すフローチャートである。9 is a flowchart showing an example of processing of an information processing apparatus according to the second embodiment;

以下、本発明の実施形態について、図面を参照しながら詳細に説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

<システム構成>
(情報処理システムのシステム構成)
図1は、一実施形態に係る情報処理システムのシステム構成の例を示す図である。情報処理システム100は、ソフトウェアを設計する設計者101等が、テスト対象となるソフトウェアをテスト(試験)するシステムである。
<System configuration>
(System configuration of information processing system)
FIG. 1 is a diagram illustrating an example of the system configuration of an information processing system according to one embodiment. The information processing system 100 is a system in which a designer 101 or the like who designs software tests (tests) software to be tested.

近年のソフトウェア開発においては、継続的インテグレーション(CI:Continuous Integration)と呼ばれるような、ビルドやテストを頻繁に繰り返し行うことにより問題を早期に発見し、開発の効率化、省電力化、納期の短縮等を図る手法が用いられる。CIシステムにおいては、手続きを自動化すると共に、変更管理ツール102、テスト管理ツール106、障害管理ツール109等と連携することで、ワークフロー全体の効率化を図ることも行われる。なお、CIシステムは、情報処理システム100の一例である。 In software development in recent years, frequent repetition of builds and tests, which is called continuous integration (CI), is used to detect problems early, improve development efficiency, save power, and shorten delivery times. etc. is used. In the CI system, procedures are automated, and the workflow as a whole is made more efficient by cooperating with the change management tool 102, test management tool 106, fault management tool 109, and the like. Note that the CI system is an example of the information processing system 100 .

図1に示す情報処理システム100において、設計者101は、テスト対象となるソフトウェアのソースコード103と、当該ソフトウェアをテストするテストコード107を作成して情報処理システム100に登録する。 In the information processing system 100 shown in FIG. 1, a designer 101 creates a source code 103 of software to be tested and a test code 107 for testing the software, and registers them in the information processing system 100 .

ビルドツール104、及びテストツール108は、予め定められたスケジュールに従ってビルドとテストを自動的に実行し、テスト結果が不合格である場合には、障害管理ツール109が、不合格になったテスト結果等を設計者101に通知する。このとき、障害管理ツール109は、変更管理ツール102、テスト管理ツール106等と連携することで、障害の対策状況のトラッキング等が可能である。 The build tool 104 and test tool 108 automatically build and test according to a predetermined schedule, and if the test result fails, the fault management tool 109 reports the failed test result. etc. is notified to the designer 101 . At this time, the failure management tool 109 can track the status of failure countermeasures by cooperating with the change management tool 102, the test management tool 106, and the like.

設計者101は、テスト結果が不合格であれば、障害(バグ)の解析を行い、必要に応じてソースコード103の修正、或いはテストコード107の修正を行う。障害の解析にあたって、設計者101は、例えば、どのテストケースでどのようなエラーが発生したか、またエラーが発生したときのログ情報等から障害を特定して対策を行う。 If the test result fails, the designer 101 analyzes the failure (bug) and corrects the source code 103 or the test code 107 as necessary. In analyzing the failure, the designer 101 identifies the failure based on, for example, what kind of error occurred in which test case, log information when the error occurred, and the like, and takes countermeasures.

このようなフローを繰り返し実行することにより、設計者101は、常にテスト結果が合格となる状態を維持する。これにより、設計者101は、テスト対象となるソフトウェア(成果物)をいつでもリリースできる状態に保つことができるので、ソフトウェアをタイムリーに市場にリリースすることができる。 By repeatedly executing such a flow, the designer 101 always maintains a state in which the test results pass. As a result, the designer 101 can keep the software (product) to be tested in a state ready for release at any time, so that the software can be released to the market in a timely manner.

(テストツールの構成例)
図2は、一実施形態に係るテストツールの構成例を示す図である。ここでは、一例として、組み込み系のソフトウェア開発におけるテストツールについて説明する。組み込み系のソフトウェア開発における自動テストは、基本的には対象となる対象機器202で、テスト対象オブジェクト105を実行させることでテストを行う。ここで、「対象機器」には、実際にソフトウェアが実装される電子機器(以下、「実機」と呼ぶ)だけではなく、実機の動作をエミュレートしたエミュレータも含まれる。
(Test tool configuration example)
FIG. 2 is a diagram illustrating a configuration example of a test tool according to one embodiment. Here, as an example, a test tool in embedded software development will be described. Automatic testing in embedded software development is basically performed by executing the test target object 105 on the target device 202 . Here, the “target device” includes not only an electronic device on which software is actually installed (hereinafter referred to as “real device”), but also an emulator that emulates the operation of the real device.

また、テスト対象オブジェクト105を対象機器202で実行させる方法には、一例として、図2(a)に示すように、テストツール108から、対象機器202上のテストランナー203を使って、テスト対象オブジェクト105とテストコード107とを実行させる方法がある。また、別の一例として、図2(b)に示すように、テストツール108がテストコード107を実行し、対象機器202が公開しているインタフェース(I/F:Interface)を用いて、テスト対象オブジェクト105を操作する方法もある。図2(a)に示す方法は、主にホワイトボックス的なテストに用いられ、図3(b)に示す方法は、主にブラックボックス的なテストに用いられることが多い。 In addition, as an example of the method of executing the test target object 105 on the target device 202, as shown in FIG. There is a way to run 105 and test code 107 . Also, as another example, as shown in FIG. There are also methods for manipulating the object 105 . The method shown in FIG. 2A is mainly used for white-box tests, and the method shown in FIG. 3B is mainly used for black-box tests.

上記の構成において、情報処理システム100は、例えば、テストを自動実行し、テストが不合格になったときに、自動的に障害票を起票して設計者101に通知する。このような情報処理システム100において、例えば、同じ障害(バグ)が原因で複数のテストが不合格になった場合、その原因が同じ障害であることを、情報処理システム100が自動的に判別することは困難である。従って、情報処理システム100は、不合格になった全てのテストについて障害票を起票することになり、設計者101は、複数の障害票を解析して、不合格になった複数のテストの原因が同じ障害によるものであることを判別しなければならないという問題がある。 In the above configuration, the information processing system 100, for example, automatically executes a test, and when the test fails, automatically issues a trouble ticket and notifies the designer 101 of it. In such an information processing system 100, for example, when a plurality of tests fail due to the same fault (bug), the information processing system 100 automatically determines that the cause is the same fault. is difficult. Therefore, the information processing system 100 issues a trouble ticket for all the failed tests, and the designer 101 analyzes the plurality of trouble tickets and analyzes the plurality of failed tests. There is the problem of having to determine that the cause is due to the same fault.

このとき、例えば、情報処理システム100が、発生した障害の現象から、同じ現象の障害を「同一の障害」としてグループ分け(グルーピング)して、設計者101に通知する方法が考えられる。しかし、この方法だけでは、同じ現象の障害が、同じ原因によるものであるとは限らないので、潜在的な障害(バグ)を見逃してしまう場合がある。 At this time, for example, the information processing system 100 may group faults of the same phenomenon as "same faults" based on the phenomenon of the faults that have occurred, and notify the designer 101 of them. However, with this method alone, failures of the same phenomenon are not necessarily caused by the same cause, so latent failures (bugs) may be overlooked.

また、別の方法として、情報処理システム100が、基本的な機能のテストと、枝葉の機能のテストとを分けて、基本的な機能のテストを先に行うことで、障害票の大量の起票を抑制する方法も考えられる。しかし、この方法では、どの機能が基本的な機能であり、どの機能が枝葉の機能であるのかを分類する必要がある。また、この方法では、基本的な機能のテストで不合格になった場合には、他の機能のテストができなくなってしまうという問題もある。 As another method, the information processing system 100 separates the basic function test from the branch function test, and performs the basic function test first, thereby generating a large number of trouble tickets. A method of suppressing votes is also conceivable. However, in this method, it is necessary to classify which functions are basic functions and which functions are secondary functions. Another problem with this method is that if the basic function test fails, other functions cannot be tested.

そこで、本実施形態に係る情報処理システム100では、テストを自動実行し、テストが不合格になったときに、不合格になったテストにおける現象面の特徴と、機能面の特徴とに基づいて、不合格の原因となった障害に関するテスト結果を出力する。 Therefore, in the information processing system 100 according to the present embodiment, the test is automatically executed, and when the test fails, based on the phenomenon characteristics and the functional characteristics of the failed test, , outputs the test results for the fault that caused the failure.

好ましくは、情報処理システム100は、不合格になったテストにおける現象面の特徴と機能面の特徴とに基づいて、不合格になったテスト(例えば、障害票等)をグループ分けしてテスト結果を出力する。 Preferably, the information processing system 100 divides the failed tests (for example, trouble reports, etc.) into groups based on the characteristics of the phenomena and the features of the functions of the failed tests, and displays the test results. to output

ここで、機能面の特徴には、例えば、テスト対象となるソフトウェアの機能仕様書に記載されている「機能」に関する特徴等が含まれる。例えば、情報処理システム100は、機能仕様書に記載されている所定の機能に関する1つ以上のテスト項目のうち、不合格になったテスト項目の数に基づいて、不合格になったテストに機能的な特徴があるか(例えば、所定の機能に問題があるか)否かを判断する。 Here, the functional features include, for example, features related to "functions" described in the functional specifications of the software to be tested. For example, the information processing system 100 performs the failed tests based on the number of failed test items among one or more test items related to a predetermined function described in the functional specifications. It determines whether there is a specific characteristic (for example, whether there is a problem with a predetermined function).

また、現象面の特徴には、例えば、テストに用いられる所定のコマンドで発生した「現象」に関する特徴等が含まれる。例えば、情報処理システム100は、ソフトウェアのテストで用いられる所定のコマンドで発生したエラーの発生回数に基づいて、不合格になったテストに現象的な特徴があるか(同じ現象のエラーが発生しているか)否かを判断する。なお、コマンドには、例えば、所定の手順の実行を指示する命令や、所定のハードウェアへのアクセスを指示する命令等の様々な命令が含まれ得る。 Further, the characteristics of the phenomenon include, for example, characteristics related to "phenomenon" generated by a predetermined command used in the test. For example, the information processing system 100 determines whether the failed test has phenomenological characteristics (errors of the same or not). Note that the command may include various instructions such as an instruction to execute a predetermined procedure, an instruction to access predetermined hardware, and the like.

具体的な一例として、所定のコマンドでエラーが複数回発生している等の現象面の特徴がある場合、情報処理システム100は、機能面の特徴より優先して、現象面の特徴に関するテスト結果を設計者101に通知する。これは、特定のコマンドでエラーが多発している場合、テスト対象となる機能に対して適切なテストを行えない可能性が高いと考えられるためである。 As a specific example, if there is a characteristic of the phenomenon such that an error occurs multiple times in a predetermined command, the information processing system 100 prioritizes the characteristic of the phenomenon over the characteristic of the function. is notified to the designer 101 . This is because if errors occur frequently in a specific command, there is a high possibility that the function to be tested cannot be properly tested.

例えば、テスト対象となる機器がスキャン機能、コピー機能、プリンタ機能、ファクシミリ機能等を一つの筐体に搭載したMFP(Multifunction Peripheral)であるものとする。また、MFPのソフトウェアのテストにおいて、スキャン機能のテストで不合格が発生しているが、実際には、準備作業に含まれるアドレス帳登録コマンドが原因でエラーが発生していたものとする。このようなときに、本実施形態に係る情報処理システム100によれば、スキャン機能の担当者ではなく、アドレス帳機能の担当者に障害解析を依頼することが容易になる。なお、具体的な処理内容については後述する。 For example, it is assumed that the device to be tested is an MFP (Multifunction Peripheral) having a scan function, a copy function, a printer function, a facsimile function, etc. in one housing. In the MFP software test, it is assumed that the scan function test failed, but an error actually occurred due to the address book registration command included in the preparation work. In such a case, according to the information processing system 100 according to the present embodiment, it becomes easier to request failure analysis to the person in charge of the address book function instead of the person in charge of the scan function. Note that the specific processing contents will be described later.

<ハードウェア構成>
図2は、一実施形態に係る情報処理装置のハードウェア構成の例を示す図である。図1に示す変更管理ツール102、ビルドツール104、テスト管理ツール106、テストツール108、及び障害管理ツール109等は、例えば、図2に示すようなコンピュータ構成を備えた情報処理装置300、又は複数の情報処理装置300で実行される。
<Hardware configuration>
FIG. 2 is a diagram illustrating an example of a hardware configuration of an information processing apparatus according to one embodiment; The change management tool 102, build tool 104, test management tool 106, test tool 108, fault management tool 109, etc. shown in FIG. is executed by the information processing apparatus 300 of

情報処理装置300は、例えば、CPU(Central Processing Unit)301、ROM(Read Only Memory)302、RAM(Random Access Memory)303、HD(Hard Disk)304、HDD(Hard Disk Drive)コントローラ305、ディスプレイ306、外部機器接続I/F307、ネットワークI/F308、キーボード309、ポインティングデバイス310、DVD-RW(Digital Versatile Disk Rewritable)ドライブ312、メディアI/F314、及びバスライン315等を備えている。 The information processing apparatus 300 includes, for example, a CPU (Central Processing Unit) 301 , a ROM (Read Only Memory) 302 , a RAM (Random Access Memory) 303 , an HD (Hard Disk) 304 , an HDD (Hard Disk Drive) controller 305 , a display 306 , an external device connection I/F 307, a network I/F 308, a keyboard 309, a pointing device 310, a DVD-RW (Digital Versatile Disk Rewritable) drive 312, a media I/F 314, a bus line 315, and the like.

これらのうち、CPU301は、情報処理装置300の全体の動作を制御する。ROM302は、例えば、IPL(Initial Program Loader)等のCPU301の起動に用いられるプログラムを記憶する。RAM303は、CPU301のワークエリアとして使用される。HD304は、プログラム等の各種データを記憶する。HDDコントローラ305は、CPU301の制御に従ってHD304に対する各種データの読み出し又は書き込みを制御する。 Among these, the CPU 301 controls the overall operation of the information processing apparatus 300 . The ROM 302 stores a program such as an IPL (Initial Program Loader) that is used to start the CPU 301 . A RAM 303 is used as a work area for the CPU 301 . The HD 304 stores various data such as programs. The HDD controller 305 controls reading or writing of various data to/from the HD 304 under the control of the CPU 301 .

ディスプレイ306は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。外部機器接続I/F307は、各種の外部機器を接続するためのインタフェースである。外部機器には、例えば、USB(Universal Serial Bus)メモリやプリンタ等に加え、テストの対象となる対象機器202等が含まれる。ネットワークI/F308は、通信ネットワークを利用してデータ通信をするためのインタフェースである。なお、情報処理装置300は、ネットワークI/F308を介して、対象機器202を制御しても良い。 A display 306 displays various information such as cursors, menus, windows, characters, and images. The external device connection I/F 307 is an interface for connecting various external devices. The external device includes, for example, a USB (Universal Serial Bus) memory, a printer, and the like, as well as the target device 202 to be tested. A network I/F 308 is an interface for data communication using a communication network. Note that the information processing apparatus 300 may control the target device 202 via the network I/F 308 .

キーボード309は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス310は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。DVD-RWドライブ312は、着脱可能な記録媒体の一例としてのDVD-RW311に対する各種データの読み出し又は書き込みを制御する。なお、DVD-RW311は、DVD-RWに限らず、DVD-R等であっても良い。メディアI/F314は、フラッシュメモリ等のメディア313に対するデータの読み出し又は書き込み(記憶)を制御する。バスライン315は、上記の各構成要素を電気的に接続するためのアドレスバス、データバス及び各種の制御信号等を含む。 A keyboard 309 is a type of input means having a plurality of keys for inputting characters, numerical values, various instructions, and the like. The pointing device 310 is a type of input means for selecting and executing various instructions, selecting a processing target, moving a cursor, and the like. A DVD-RW drive 312 controls reading or writing of various data to a DVD-RW 311 as an example of a removable recording medium. The DVD-RW 311 is not limited to DVD-RW, and may be DVD-R or the like. A media I/F 314 controls reading or writing (storage) of data to a media 313 such as a flash memory. A bus line 315 includes an address bus, a data bus, various control signals, and the like for electrically connecting the components described above.

<機能構成>
続いて、情報処理装置300の機能構成について説明する。
<Functional configuration>
Next, the functional configuration of the information processing device 300 will be described.

図4は、一実施形態に係る情報処理装置の機能構成の例を示す図である。情報処理装置300は、例えば、図3のCPU301で所定のテストプログラムを実行することにより、テスト制御部401、第1の判断部402、第2の判断部403、出力部404、設定受付部405、及び記憶部406等を実現している。なお、上記の各機能構成のうち、少なくとも一部は、ハードウェアによって実現されるものであっても良い。 FIG. 4 is a diagram illustrating an example of a functional configuration of an information processing device according to an embodiment; The information processing apparatus 300, for example, executes a predetermined test program in the CPU 301 of FIG. , and the storage unit 406 and the like. It should be noted that at least part of the functional configurations described above may be realized by hardware.

テスト制御部401は、例えば、図3のCPU301で実行されるテストツール108等によって実現され、テスト対象となるソフトウェアに関する複数のテストの実行を制御する。 The test control unit 401 is implemented, for example, by the test tool 108 or the like executed by the CPU 301 in FIG. 3, and controls execution of a plurality of tests regarding software to be tested.

第1の判断部402は、例えば、図3のCPUで実行される障害管理ツール109等のテストプログラムによって実現され、ソフトウェアのテストが不合格になった場合、不合格になったソフトウェアに機能面の特徴があるか否かを判断する。例えば、第1の判断部402は、所定の機能に関する1つ以上のテスト項目のうち、不合格になったテスト項目の数に基づいて、不合格になったテストに機能面の特徴があるか(例えば、所定の機能に問題があるか)否かを判断する。 The first determination unit 402 is implemented, for example, by a test program such as the failure management tool 109 executed by the CPU in FIG. determine whether there is a characteristic of For example, based on the number of failed test items among one or more test items related to a predetermined function, the first determination unit 402 determines whether the failed tests have functional characteristics. (For example, whether there is a problem with a predetermined function) or not.

図5は、一実施形態に係るテスト仕様について説明するための図である。例えば、機能合致性を検証するためのテストケースを作成する場合、設計者101は、テスト対象となるソフトウェアの機能仕様501に対して、テストケースを設計することになる。例えば、図5の機能仕様501における機能Aのサブ機能A-1をテストする場合、図5のテスト仕様411に示すように、機能Aのサブ機能A-1に関する1つ以上のテスト項目をテストする。同様に、機能仕様501における機能Aのサブ機能A-2をテストする場合、テスト仕様411に示すように、機能Aのサブ機能A-2に関する1つ以上のテスト項目をテストする。 FIG. 5 is a diagram for explaining test specifications according to one embodiment. For example, when creating a test case for verifying functional compatibility, the designer 101 designs the test case for the functional specification 501 of the software to be tested. For example, when testing sub-function A-1 of function A in functional specification 501 of FIG. do. Similarly, when testing sub-function A-2 of function A in functional specification 501, one or more test items relating to sub-function A-2 of function A are tested, as shown in test specification 411. FIG.

好ましくは、第1の判断部402は、例えば、テスト仕様411において、所定の機能に関する複数のテスト項目が定義されている場合、不合格になったテスト項目の数が、予め設定された第1の閾値以上のとき、所定の機能に機能面の特徴があると判断する。なお、所定の機能に関するテスト項目が1つである場合には、所定の機能に関するテスト項目が不合格であるときに、所定の機能に機能面の特徴があると判断しても良い。 Preferably, for example, when the test specification 411 defines a plurality of test items related to a predetermined function, the first determination unit 402 sets the number of failed test items to a preset first is equal to or greater than the threshold value, it is determined that the predetermined function has functional characteristics. If there is only one test item for a given function, it may be determined that the given function has a functional feature when the test item for the given function fails.

第2の判断部403は、例えば、図3のCPUで実行される障害管理ツール109等のテストプログラムによって実現され、ソフトウェアのテストが不合格になった場合、不合格になったソフトウェアに現象面の特徴があるか否かを判断する。例えば、第2の判断部403は、所定のコマンドで発生したエラーの発生回数に基づいて、不合格になったテストに現象面の特徴があるか(例えば、所定のコマンドに問題があるか)否かを判断する。 The second determination unit 403 is implemented by, for example, a test program such as the fault management tool 109 executed by the CPU in FIG. determine whether there is a characteristic of For example, the second determination unit 403 determines whether the failed test has characteristics in terms of phenomena (for example, whether there is a problem with the predetermined command), based on the number of times errors have occurred in the predetermined command. determine whether or not

図6は、一実施形態に係るテストケースの例について説明するための図である。例えば、所定の機能に関するテストを行う場合、テストシナリオの実行に先立って、事前条件や事後条件を明確にし、テストを実行する。例えば、図6のテストケース601に示すように、所定の機能に関するテストを行う「テストシナリオ」の前後で、「事前条件」、「事後条件」等を自動的に実行する。 FIG. 6 is a diagram for explaining an example of test cases according to one embodiment. For example, when testing a given function, preconditions and postconditions are clarified prior to execution of the test scenario, and the test is executed. For example, as shown in a test case 601 in FIG. 6, a "precondition", a "postcondition", etc. are automatically executed before and after a "test scenario" for testing a predetermined function.

なお、テストケース601に含まれる各手順の自動実行は、様々な方法で実行可能である。例えば、多くの場合、対象機器202を提供しているメーカが、ビルドツール104と同じように、テストのための様々ツールを提供しているので、これらのツールを用いて、テスト対象オブジェクト105を操作することができる。また、例えば、テスト対象オブジェクト105が、外部に提供しているI/Fを、テストケース601に含まれる各手順の自動実行に用いることもできる。なお、当該I/Fは、別のテストケースでは、テスト対象となる場合がある。 Various methods can be used to automatically execute each procedure included in the test case 601 . For example, in many cases, the manufacturer that provides the target device 202 provides various tools for testing as well as the build tool 104, so these tools can be used to build the test target object 105. can be manipulated. Further, for example, an I/F provided externally by the object under test 105 can be used for automatic execution of each procedure included in the test case 601 . Note that the I/F may be tested in another test case.

好ましくは、第2の判断部403は、ソフトウェアのテストにおいて、所定のコマンド(例えば、手順B1の実行命令等)で発生したエラーの発生回数が第2の閾値以上のとき、不合格になったソフトウェアに現象面の特徴があると判断する。 Preferably, the second judging unit 403 determines that the software test fails when the number of errors occurring in a predetermined command (for example, an execution instruction of procedure B1) is equal to or greater than a second threshold. Judging that the software has the characteristics of the phenomenon.

出力部404は、例えば、図3のCPUで実行される障害管理ツール109等のテストプログラムによって実現される。出力部404は、複数のテストのうち、不合格になったテストにおける現象面の特徴と機能面の特徴とに基づいて、不合格の原因となった障害に関するテスト結果を出力する。 The output unit 404 is implemented by, for example, a test program such as the fault management tool 109 executed by the CPU in FIG. The output unit 404 outputs a test result related to the failure that caused the failure based on the phenomena and functional features of the failed test among the plurality of tests.

例えば、出力部404は、不合格になったテストに、機能面の特徴と現象面の特徴とがある場合、機能面の特徴よりも現象面の特徴を優先して、所定のコマンド(手順)に障害があることを示すテスト結果を出力する。 For example, if a failed test has functional features and phenomenal features, the output unit 404 gives priority to the functional features over the functional features, and executes a predetermined command (procedure). output a test result indicating that the

また、出力部404は、不合格になったテストに、機能面の特徴があり、かつ現象面の特徴がない場合、所定の機能に関するテスト結果を出力する。さらに、出力部404は、不合格になったテストに、現象面の特徴があり、かつ機能面の特徴がない場合、所定のコマンドに関するテスト結果を出力する。 In addition, if the failed test has functional characteristics but no phenomenon characteristics, the output unit 404 outputs the test result regarding a predetermined function. Furthermore, if the failed test has phenomenal characteristics but no functional characteristics, the output unit 404 outputs the test results regarding the predetermined command.

好ましくは、出力部404は、不合格になったテストにおける現象面の特徴と機能面の特徴とに基づいて、不合格になったテスト(又は障害票等)をグループ分けして、テスト結果として出力する。例えば、出力部404は、不合格になったテストにおける現象面の特徴と機能面の特徴とに基づいて、同じ障害が原因と考えられる複数の障害票をグルーピングして出力する。 Preferably, the output unit 404 divides the failed tests (or trouble reports, etc.) into groups based on the characteristics of the phenomena and the features of the failed tests, and outputs the results as test results. Output. For example, the output unit 404 groups and outputs a plurality of trouble tickets that are considered to be caused by the same trouble based on the characteristics of the phenomena and the characteristics of the failed tests.

設定受付部405は、例えば、図3のCPUで実行される障害管理ツール109等のテストプログラムによって実現され、前述した第1の閾値又は第2の閾値の設定を受け付ける。例えば、設定受付部405は、図3のディスプレイ306等の表示部に、第1の閾値又は第2の閾値を設定するための設定画面を表示させて、設計者101等による、第1の閾値又は第2の閾値の設定操作を受け付ける。また、設定受付部405は、受け付けた第1の閾値又は第2の閾値を、記憶部406に設定値413として記憶する。なお、設定受付部405は、他の情報処理装置等から、第1の閾値又は第2の閾値の設定要求を受け付けるものであっても良い。 The setting reception unit 405 is implemented by, for example, a test program such as the failure management tool 109 executed by the CPU in FIG. 3, and receives the setting of the above-described first threshold or second threshold. For example, the setting reception unit 405 displays a setting screen for setting the first threshold value or the second threshold value on the display unit such as the display 306 in FIG. Alternatively, an operation for setting the second threshold is accepted. The setting reception unit 405 also stores the received first threshold value or second threshold value in the storage unit 406 as a setting value 413 . Note that the setting reception unit 405 may receive a request for setting the first threshold value or the second threshold value from another information processing apparatus or the like.

記憶部406は、例えば、図3のCPUで実行されるプログラム、及びHDDコントローラ305、HD304等によって実現され、テストコード107、テスト仕様411、テスト結果412、及び設定値413等を記憶する。 The storage unit 406 is implemented by, for example, the program executed by the CPU in FIG. 3, the HDD controller 305, the HD 304, etc., and stores the test code 107, the test specifications 411, the test results 412, the setting values 413, and the like.

なお、図4の例では、図1のテストツール108及び障害管理ツール109に関する機能構成について説明を行ったが、情報処理装置300は、図1の変更管理ツール102、ビルドツール104、及びテスト管理ツール106等をさらに実行しても良い。なお、変更管理ツール102、ビルドツール104、及びテスト管理ツール106等の機能構成は、一般的なツールと同様で良いので、ここでは説明を省略する。 In the example of FIG. 4, the functional configuration of the test tool 108 and fault management tool 109 of FIG. 1 has been described. Tools such as 106 may also be executed. The functional configurations of the change management tool 102, the build tool 104, the test management tool 106, and the like may be the same as those of general tools, so description thereof will be omitted here.

<処理の流れ>
続いて、各実施形態に係るテスト方法の処理の流れについて説明する。
<Process flow>
Next, the processing flow of the test method according to each embodiment will be described.

[第1に実施形態]
図7は、第1の実施形態に係る情報処理装置の処理の例を示すフローチャートである。この処理は、情報処理装置300が、テスト制御部401により、テスト対象となるソフトウェアに関する複数のテストを実行した後、不合格になったテストがある場合に実行する処理の一例を示している。
[First Embodiment]
7 is a flowchart illustrating an example of processing of the information processing apparatus according to the first embodiment; FIG. This processing shows an example of processing executed by the information processing apparatus 300 when there is a failed test after executing a plurality of tests on software to be tested by the test control unit 401 .

ステップS701において、情報処理装置300の第1の判断部402は、不合格になったテストにおける機能面の特徴を抽出する。例えば、第1の判断部402は、図5に示すようなテスト仕様411を参照して、不合格になったテストに対応する機能等を抽出する。一例として、図5に示すテスト仕様411において、テスト項目「境界値テスト正常系」が不合格になった場合、第1の判断部402は、不合格になったテスト項目に対応するサブ機能「A-1」等を抽出する。 In step S701, the first determination unit 402 of the information processing apparatus 300 extracts functional features of the failed test. For example, the first determination unit 402 refers to the test specification 411 as shown in FIG. 5 and extracts the functions corresponding to the failed test. As an example, in the test specification 411 shown in FIG. 5, when the test item "boundary value test normal system" fails, the first judging unit 402 determines the sub-function " A-1” etc. are extracted.

ステップS702において、情報処理装置300の第2の判断部403は、不合格になったテストにおける現象面の特徴を抽出する。例えば、第2の判断部403は、不合格になったテストでエラーが発生したコマンド、及び当該コマンドで発生したエラーの回数等を抽出する。 In step S702, the second determination unit 403 of the information processing apparatus 300 extracts the features of the phenomena in the failed test. For example, the second determination unit 403 extracts commands in which errors have occurred in failed tests, the number of times errors have occurred in the commands, and the like.

ステップS703において、第1の判断部402は、不合格になったテストに機能面の特徴があるか否かを判断する。例えば、第1の判断部402は、ステップS701で抽出した機能に関する1つ以上のテスト項目のうち、不合格になったテスト項目の数が、予め設定された第1の閾値以上のとき、不合格になったテストに機能面の特徴があると判断する。 In step S703, the first determination unit 402 determines whether the failed test has functional characteristics. For example, when the number of failed test items among the one or more test items related to the function extracted in step S701 is equal to or greater than a preset first threshold, the first determination unit 402 A test that passes is judged to have functional characteristics.

不合格になったテストに機能面の特徴がある場合、情報処理装置300は、処理をステップS704に移行させる。一方、不合格になったテストに機能面の特徴がない場合、情報処理装置300は、処理をステップS705に移行させる。 If the failed test has functional characteristics, the information processing apparatus 300 shifts the process to step S704. On the other hand, if the failed test has no functional characteristics, the information processing apparatus 300 shifts the process to step S705.

ステップS704に移行すると、第2の判断部403は、不合格になったテストに、現象面の特徴があるか否かを判断する。例えば、第2の判断部403は、ステップS702で抽出したコマンドで発生したエラーの回数が、予め設定された第2の閾値以上のとき、不合格になったテストに現象面の特徴があると判断する。 After proceeding to step S704, the second determination unit 403 determines whether or not the failed test has a feature in terms of phenomena. For example, when the number of errors that occurred in the command extracted in step S702 is equal to or greater than a second preset threshold value, the second determination unit 403 determines that the failed test has a phenomenon feature. to decide.

不合格になったテストに現象面の特徴がない場合、情報処理装置300は、処理をステップS705に移行させる。一方、不合格になったテストに現象面の特徴がある場合、情報処理装置300は、処理をステップS707に移行させる。 If the failed test does not have any phenomenal features, the information processing apparatus 300 shifts the process to step S705. On the other hand, if the failed test has a phenomenon, the information processing apparatus 300 shifts the process to step S707.

ステップS705に移行すると、出力部404は、特定機能のデグレードを指摘するテスト結果を出力する。例えば、出力部404は、ステップS703で機能面の特徴があると判断された機能のデグレードを指摘する障害票等を出力する。 After moving to step S705, the output unit 404 outputs a test result pointing out the degradation of the specific function. For example, the output unit 404 outputs a trouble report or the like pointing out the deterioration of the function judged to have functional characteristics in step S703.

ステップS703からステップS706に移行すると、第2の判断部403は、例えば、ステップS704と同様にして、不合格になったテストに、現象面の特徴があるか否かを判断する。 When the process proceeds from step S703 to step S706, the second determination unit 403 determines whether or not the failed test has characteristics in terms of phenomenon, for example, in the same manner as in step S704.

不合格になったテストに現象面の特徴がある場合、情報処理装置300は、処理をステップS707に移行させる。一方、不合格になったテストに現象面の特徴がない場合、情報処理装置300は、処理を終了させる。 If the failed test has a phenomenon, the information processing apparatus 300 shifts the process to step S707. On the other hand, if the failed test does not have any phenomenal features, the information processing apparatus 300 terminates the process.

ステップS707に移行すると、情報処理装置300の出力部404は、特定手順のデグレードを指摘するテスト結果を出力する。例えば、出力部404は、ステップS702で抽出したコマンド(特定手順の一例)のデグレードを指摘する障害票等を出力する。 After moving to step S707, the output unit 404 of the information processing apparatus 300 outputs a test result pointing out the deterioration of the specific procedure. For example, the output unit 404 outputs a trouble report or the like pointing out the deterioration of the command (an example of the specific procedure) extracted in step S702.

このように、情報処理装置300の出力部404は、不合格になったテストにおける現象面の特徴と機能面の特徴とに基づいて、不合格の原因となった障害に関するテスト結果を出力する。 In this way, the output unit 404 of the information processing apparatus 300 outputs the test results regarding the fault that caused the failure based on the phenomenal features and functional features of the failed test.

これにより、本実施形態に係る情報処理システム100によれば、不合格になったテストの機能面の特徴と現象面の特徴とに基づいて、解析すべき優先順位を設計者101に提示することができるので、設計者101による障害解析をより効率化することができる。 As a result, according to the information processing system 100 according to the present embodiment, the order of priority to be analyzed is presented to the designer 101 based on the functional characteristics and phenomenon characteristics of the failed test. can be performed, the failure analysis by the designer 101 can be made more efficient.

[第2の実施形態]
図8は、第2の実施形態に係る情報処理装置の処理の例を示すフローチャートである。この処理は、情報処理装置300が、テスト制御部401により、テスト対象となるソフトウェアに関する複数のテストを実行した後、不合格になったテストがある場合に実行する処理の別の一例を示している。なお、基本的な処理内容は、図7に示す第1の実施形態に係る情報処理装置の処理と同様なので、ここでは、第1の実施形態と同様の処理に対する詳細な説明は省略する。
[Second embodiment]
FIG. 8 is a flowchart illustrating an example of processing of the information processing apparatus according to the second embodiment. This process is another example of the process executed by the information processing device 300 when there is a failed test after the test control unit 401 has executed a plurality of tests on the software to be tested. there is Note that the basic processing content is the same as the processing of the information processing apparatus according to the first embodiment shown in FIG. 7, so detailed description of the processing similar to that of the first embodiment will be omitted here.

ステップS801において、情報処理装置300の第1の判断部402は、不合格になったテストにおける機能面の特徴を抽出する。なお、複数のテストが不合格になった場合、第1の判断部402は、不合格になった複数のテストの各々について、機能面の特徴を抽出する。 In step S801, the first determination unit 402 of the information processing apparatus 300 extracts the functional features of the failed test. Note that when a plurality of tests fails, the first determination unit 402 extracts functional features of each of the plurality of failed tests.

ステップS802において、情報処理装置300の第2の判断部403は、不合格になったテストにおける現象面の特徴を抽出する。なお、複数のテストが不合格になった場合、第2の判断部403は、不合格になった複数のテストの各々について、現象面の特徴を抽出する。 In step S802, the second determination unit 403 of the information processing apparatus 300 extracts features of phenomena in the failed test. Note that when a plurality of tests fails, the second determination unit 403 extracts the features of the phenomena for each of the plurality of failed tests.

ステップS803において、第1の判断部402は、不合格になったテストの各々について、機能面の特徴があるか否かを判断する。 In step S803, the first determination unit 402 determines whether or not each failed test has functional characteristics.

ここで、機能面の特徴があると判断されたテストについて、情報処理装置300は、ステップS804の処理を実行する。また、機能面の特徴がないと判断されたテストについて、情報処理装置300は、ステップS806の処理を実行する。 Here, the information processing apparatus 300 executes the process of step S804 for the test determined to have functional characteristics. Further, the information processing apparatus 300 executes the process of step S806 for the test determined to have no functional feature.

ステップS804において、第2の判断部403は、不合格になったテストのうち、機能面の特徴があると判断されたテストの各々について、現象面の特徴があるか否かを判断する。 In step S804, the second determination unit 403 determines whether or not each of the failed tests determined to have functional characteristics has phenomenal characteristics.

ここで、現象面の特徴がないと判断されたテストについて、情報処理装置300は、ステップS805の処理を実行する。また、現象面の特徴があると判断されたテストについて、情報処理装置300は、ステップS807の処理を実行する。 Here, the information processing apparatus 300 executes the process of step S805 for the test determined to have no feature in terms of phenomena. Further, the information processing apparatus 300 executes the process of step S807 for the test determined to have the feature of the phenomenon.

ステップS805において、情報処理装置300の出力部404は、特定機能のデグレードを指摘する障害票(テスト結果の一例)を作成する。例えば、出力部404は、ステップS803で機能面の特徴があると判断され、ステップS804で現象面の特徴がないと判断されたテストの各々について、第1の閾値以上の試験項目が不合格となった機能に障害があることを示す障害票を作成する。 In step S805, the output unit 404 of the information processing apparatus 300 creates a trouble ticket (an example of test results) pointing out the deterioration of the specific function. For example, the output unit 404 determines that the test items above the first threshold fail for each of the tests determined to have functional characteristics in step S803 and to have no phenomenon characteristics in step S804. Create a trouble ticket indicating that the missing function is at fault.

一方、ステップS806において、第2の判断部403は、不合格になったテストのうち、機能面の特徴がないと判断されたテストの各々について、現象面の特徴があるか否かを判断する。 On the other hand, in step S806, the second judging unit 403 judges whether or not each of the failed tests judged to have no functional feature has a phenomenon feature. .

ここで、現象面の特徴があると判断されたテストについて、情報処理装置300は、ステップS807の処理を実行する。なお、現象面の特徴がないと判断されたテストについては、情報処理装置300は、特に処理は行わずに、ステップS808に処理を移行させる。 Here, the information processing apparatus 300 executes the process of step S807 for the test determined to have the feature of the phenomenon. Note that the information processing apparatus 300 shifts the process to step S808 without performing any particular process for the test determined to have no feature in terms of phenomena.

ステップS807において、出力部404は、特定手順のデグレードを指摘する障害票を作成する。 In step S807, the output unit 404 creates a trouble ticket pointing out the deterioration of the specific procedure.

例えば、出力部404は、ステップS803で機能面の特徴があると判断され、ステップS804で現象面の特徴があると判断されたテストの各々について、第2の閾値以上エラーが発生したコマンド(特定手順の一例)のデグレードを指摘する障害票を作成する。 For example, the output unit 404 outputs commands (specific Create a trouble ticket pointing out the degradation of the procedure (example).

また、出力部404は、ステップS803で機能面の特徴がないと判断され、ステップS804で現象面の特徴があると判断されたテストの各々について、第2の閾値以上エラーが発生したコマンド(特定手順の一例)のデグレードを指摘する障害票を作成する。 In addition, the output unit 404 outputs commands (specific Create a trouble ticket pointing out the degradation of the procedure (example).

ステップS808において、出力部404は、ステップS805、及びステップS807で作成した障害票を、障害内容に応じてグループ分け(グルーピング)して出力する。例えば、出力部404は、所定の機能に障害があると判断された複数の障害票を1つのグループにまとめて出力する。また、出力部404は、所定の現象に障害があると判断された複数の障害票を1つのグループにまとめて出力する。 In step S808, the output unit 404 outputs the trouble tickets created in steps S805 and S807 by grouping them according to the trouble details. For example, the output unit 404 collects and outputs a plurality of trouble tickets judged to have a trouble in a predetermined function into one group. In addition, the output unit 404 outputs a plurality of trouble tickets judged to have a trouble in a predetermined phenomenon as one group.

このように、情報処理装置300の出力部404は、不合格になったテストの試験結果(障害票)を、現象面の特徴と機能面の特徴とに基づいて、障害内容に応じてグルーピングして出力する。 In this manner, the output unit 404 of the information processing apparatus 300 groups the failed test results (trouble reports) according to the type of failure based on the characteristics of the phenomenon and the characteristics of the function. output.

これにより、本実施形態に係る情報処理システム100によれば、不合格になったテストの機能面の特徴と現象面の特徴とに基づいて、解析すべき優先順位を設計者101に提示することができるので、設計者101による障害解析をより効率化することができる。 As a result, according to the information processing system 100 according to the present embodiment, the order of priority to be analyzed is presented to the designer 101 based on the functional characteristics and phenomenon characteristics of the failed test. can be performed, the failure analysis by the designer 101 can be made more efficient.

<適用例>
続いて、第2の実施形態に係るソフトウェアのテスト方法の具体的な適用例について説明する。
<Application example>
Next, a specific application example of the software testing method according to the second embodiment will be described.

ここでは、一例として、対象機器202が、スキャン機能、コピー機能、プリンタ機能、ファクシミリ機能等を一つの筐体に搭載したMFP(Multifunction Peripheral)等の画像形成装置であるものとして、以下の説明を行う。 Here, as an example, the following description is given assuming that the target device 202 is an image forming apparatus such as an MFP (Multifunction Peripheral) that has a scan function, a copy function, a printer function, a facsimile function, etc. in one housing. conduct.

ただし、対象機器202は、画像形成装置に限られず、情報処理システム100によるテスト対象となるソフトウェアを実行する様々な機器であって良い。例えば、対象機器202は、PJ(Projector:プロジェクタ)、IWB(Interactive White Board:相互通信が可能な電子式の黒板機能を有する白板)、デジタルサイネージ、HUD(Head Up Display)装置等の出力装置であっても良い。また、対象機器202は、例えば、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、自動車(Connected Car)、デジタルカメラ、ウェアラブル端末等の機器であっても良い。さらに、対象機器202は、例えば、ノートPC、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPCデスクトップPC等の汎用の情報処理装置であっても良い。 However, the target device 202 is not limited to the image forming apparatus, and may be various devices that execute software to be tested by the information processing system 100 . For example, the target device 202 is an output device such as a PJ (Projector), an IWB (Interactive White Board), a digital signage, or a HUD (Head Up Display) device. It can be. Also, the target device 202 may be, for example, an industrial machine, an imaging device, a sound collector, a medical device, a network appliance, a car (connected car), a digital camera, a wearable terminal, or the like. Furthermore, the target device 202 may be a general-purpose information processing device such as a notebook PC, mobile phone, smart phone, tablet terminal, game machine, PDA (Personal Digital Assistant), digital camera, wearable PC, or desktop PC.

例えば、MFPにおけるスキャン機能を実現するソフトウェアのテストを考えた場合、スキャン機能には、例えば、「スキャン to メール機能」、「スキャン to フォルダ機能」、「OCR(Optical Character Recognition)機能」等の様々な機能がある。 For example, when considering the test of software that realizes the scan function in MFP, the scan function includes various functions such as "scan to mail function", "scan to folder function", "OCR (Optical Character Recognition) function", etc. functions.

また、「スキャン to メール機能」にも、例えば、「スキャン条件設定」、「メール宛先設定」等の複数のサブ機能が含まれる。例えば、機能合致性のテストを行う場合、これらの機能仕様に対応するテストケースを作成することが一般的である。 The "scan to mail function" also includes a plurality of sub-functions such as "scan condition setting" and "mail destination setting". For example, when testing functional compatibility, it is common to create test cases corresponding to these functional specifications.

一例として、「スキャン to メール機能」の「スキャン条件設定」のテストケースを作成する場合、様々スキャン条件で、実際にスキャン結果がメール送信されるかどうかをテストする方法が考えられる。このとき、本来テストしたいのは、「スキャン条件」として、「両面指定」、「カラー指定」、「解像度指定」等の設定が、設定通りに動作するかどうかであるが、これらの機能を実行するためには、事前条件として予め実行すべき手順がある。例えば、事前条件には、「メール送信サーバが設定されていること」、「送信先のメールアドレスが登録されていること」等が含まれる。 As an example, when creating a test case for "scanning condition setting" of the "scan to email function", it is possible to test whether or not the scan results are actually sent by email under various scanning conditions. At this time, what I want to test is whether the settings such as "Double-sided specification", "Color specification", and "Resolution specification" as "Scanning conditions" operate as set. In order to do so, there is a procedure to be executed in advance as a precondition. For example, the preconditions include "the mail transmission server is set" and "the destination mail address is registered".

自動テストの環境においては、これらの事前条件を整える処理も自動で行う必要があるため、本来のテスト対象である「スキャン to メール機能」を実行する前に、例えば、「メール送信サーバの設定」の手順でテストが不合格になることがある。この例では、事前条件とテスト対象との因果関係が比較的明確であるが、大量のテストケースを設計・実行する際には、様々な手順でテストが実行されるので、その因果関係を事前に明確にしておくことは困難である。 In the automated test environment, it is necessary to automatically perform the processing to prepare these preconditions. procedure may cause the test to fail. In this example, the causal relationship between the preconditions and the test target is relatively clear. It is difficult to be clear on

このような場合、本発明の各実施形態を適用して、不合格となったテストにおける機能面の特徴と現象面の特徴の両方を加味して、解析すべき優先順位を示すテスト結果を設計者101に提示することで、障害解析を効率化することができる。 In such cases, each embodiment of the present invention is applied to design test results that indicate the order of priority to be analyzed, taking into account both the functional characteristics and the phenomena characteristics of the failed tests. By presenting it to the person 101, failure analysis can be made more efficient.

例えば、「スキャン to メール機能」の「スキャン条件設定」のテストケースが100件あって、前回のビルドでは全てのテストに合格していたものとする。また、今回のビルドでは、当該テストケースのうち、30件以上のテストが不合格になったものとする。このような場合、情報処理装置300は、「スキャン条件設定」機能が何かしらのデグレードを起こした可能性があるということを、機能面の特徴として抽出することが考えられる。なお、上記の「30件」は一例であり、機能面の特徴があると判断する第1の閾値は、任意の値に設定可能である。 For example, it is assumed that there are 100 test cases for "scan condition setting" of "scan to mail function" and all the tests passed in the previous build. Also, in this build, it is assumed that 30 or more tests out of the test cases have failed. In such a case, the information processing apparatus 300 may extract, as a functional feature, the possibility that the "scan condition setting" function has caused some kind of degradation. Note that the above "30 cases" is just an example, and the first threshold for determining that there is a functional feature can be set to any value.

一方で、この30件のテストケースで不合格となった現象を集計し、例えば、30件の全てが「アドレス帳登録」コマンドでエラーが発生しているものとする。このような場合、情報処理装置300は、「アドレス帳登録」コマンドが何かしらのデグレードを起こした可能性があるということを、現象面の特徴として抽出することが考えられる。 On the other hand, it is assumed that the failure phenomena in the 30 test cases are totaled, and that all of the 30 cases have an error in the "register address book" command, for example. In such a case, the information processing apparatus 300 may extract the fact that the "register address book" command may have caused some kind of degradation as a feature of the phenomenon.

また、情報処理装置300は、このような機能面の特徴、及び現象面の特徴が抽出できた場合に、これらの30件の障害をグルーピングして、例えば、「アドレス帳登録コマンドのデグレードの疑い」として設計者に提示する。これにより、より適切な設計者101(例えば、アドレス帳登録コマンドの設計者等)に解析を促すことができるので、障害解析をより効率化することができる。 In addition, when the information processing apparatus 300 can extract such functional features and phenomenon features, the information processing apparatus 300 groups these 30 failures, ” to the designer. As a result, a more appropriate designer 101 (for example, a designer of the address book registration command, etc.) can be urged to perform the analysis, so failure analysis can be made more efficient.

なお、上記の例では、テストが機能合致性テストであるものとして説明したが、これに限られない。例えば、ソフトウェアの内部構造がテスト対象であれば、その対象となる構造面での特徴を抽出すれば良い。例えば、状態遷移の網羅テストで障害が検出された場合は、その網羅テストに示す不合格の割合を特徴として抽出すること等が考えられる。 In addition, in the above example, the test is described as being a functional compatibility test, but it is not limited to this. For example, if the internal structure of software is to be tested, it is sufficient to extract the structural features of the target. For example, if a failure is detected in a state transition exhaustive test, it is conceivable to extract, as a feature, the rate of failure indicated in the exhaustive test.

以上、本発明の各実施形態によれば、ソフトウェアを自動的にテストする情報処理システム100において、同じ障害が原因で複数のテストが不合格になった場合に、不合格の原因となった障害の解析を効率的に行えるようになる。 As described above, according to the embodiments of the present invention, in the information processing system 100 that automatically tests software, if a plurality of tests fail due to the same failure, the failure that caused the failure analysis can be performed efficiently.

<補足>
上記で説明した各実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
<Supplement>
Each function of each embodiment described above can be realized by one or more processing circuits. Here, the "processing circuit" in this specification means a processor programmed by software to perform each function, such as a processor implemented by an electronic circuit, or a processor designed to perform each function described above. ASICs (Application Specific Integrated Circuits), DSPs (digital signal processors), FPGAs (field programmable gate arrays) and devices such as conventional circuit modules.

100 情報処理システム
300 情報処理装置
401 テスト制御部
402 第1の判断部
403 第2の判断部
404 出力部
405 設定受付部
100 information processing system 300 information processing device 401 test control unit 402 first determination unit 403 second determination unit 404 output unit 405 setting reception unit

特開2005-222108号公報Japanese Patent Application Laid-Open No. 2005-222108

Claims (10)

テスト対象となるソフトウェアをテストする情報処理装置であって、
前記ソフトウェアに関する複数のテストの実行を制御するテスト制御部と、
前記複数のテストのうち、不合格になったテストにおいて、
前記ソフトウェアに機能面の特徴があるかどうかを判断する第1の判断部と、
前記ソフトウェアに現象面の特徴があるかどうかを判断する第2の判断部と、
前記第1の判断部と前記第2の判断部の判断結果に基づいて、前記不合格の原因となった障害に関するテスト結果を出力する出力部と、
を有する、情報処理装置。
An information processing device for testing software to be tested,
a test controller that controls execution of a plurality of tests for the software;
Among the plurality of tests, in the failed test,
a first determination unit that determines whether the software has functional features;
a second judging unit for judging whether the software has phenomenal features;
an output unit that outputs a test result related to a failure that caused the failure based on the determination results of the first determination unit and the second determination unit ;
An information processing device.
前記出力部は、前記現象面の特徴と前記機能面の特徴とに基づいて、前記不合格になったテストをグループ分けして前記テスト結果を出力する、請求項1に記載の情報処理装置。 2. The information processing apparatus according to claim 1, wherein the output unit groups the failed tests based on the characteristics of the phenomenon and the characteristics of the function, and outputs the test results. 前記複数のテストは、所定の機能に関する1つ以上のテスト項目を含み、
前記第1の判断部は、前記所定の機能に関する1つ以上のテスト項目のうち、不合格になったテスト項目の数に基づいて、前記不合格になったテストに前記機能面の特徴があるかどうかを判断する請求項1又は2に記載の情報処理装置。
The plurality of tests includes one or more test items related to a predetermined function,
The first determination unit determines, based on the number of failed test items among one or more test items related to the predetermined function, that the failed test has the functional feature. 3. The information processing apparatus according to claim 1 , which determines whether or not .
前記第2の判断部は、前記複数のテストで用いられる所定のコマンドで発生したエラーの発生回数に基づいて、前記不合格になったテストに前記現象面の特徴があるかどうかを判断する請求項3に記載の情報処理装置。 The second determination unit determines whether the failed test has the characteristic of the phenomenon based on the number of times an error occurs in a predetermined command used in the plurality of tests . The information processing apparatus according to claim 3. 前記出力部は、前記不合格になったテストに前記現象面の特徴と前記機能面の特徴とがある場合、前記現象面の特徴を優先して前記テスト結果を出力する、請求項4に記載の情報処理装置。 5. The output unit according to claim 4, wherein, if the failed test includes the characteristics of the phenomenon and the characteristics of the function, the output unit outputs the test result with priority given to the characteristics of the phenomenon. information processing equipment. 前記出力部は、前記不合格になったテストに前記現象面の特徴と前記機能面の特徴とがある場合、前記所定のコマンドに関する前記テスト結果を出力する、請求項4又は5に記載の情報処理装置。 6. The information according to claim 4, wherein said output unit outputs said test result related to said predetermined command when said failed test has said phenomenon aspect feature and said function aspect feature. processing equipment. 前記出力部は、
前記不合格になったテストに、前記機能面の特徴があり、かつ前記現象面の特徴がない場合、前記所定の機能に関する前記テスト結果を出力し、
前記不合格となったテストに、前記現象面の特徴があり、かつ前記機能面の特徴がない場合、前記所定のコマンドに関する前記テスト結果を出力する、
請求項4乃至6のいずれか一項に記載の情報処理装置。
The output unit
outputting the test result for the predetermined function if the failed test has the functional feature and does not have the phenomenon feature;
outputting the test result for the predetermined command if the failed test has the phenomenon feature and does not have the functional feature;
The information processing apparatus according to any one of claims 4 to 6.
前記機能面の特徴があると判断する第1の閾値、又は前記現象面に特徴があると判断する第2の閾値の設定を受け付ける設定受付部を有する、請求項5乃至7のいずれか一項に記載の情報処理装置。 8. The apparatus according to any one of claims 5 to 7, further comprising a setting reception unit that receives a setting of a first threshold for determining that the function is characteristic or a second threshold for determining that the phenomenon is characteristic. The information processing device according to . テスト対象となるソフトウェアをテストするテスト方法であって、
コンピュータが、
前記ソフトウェアに関する複数のテストの実行を制御する処理と、
前記複数のテストのうち、不合格になったテストにおいて、
前記ソフトウェアに機能面の特徴があるかどうかを判断する第1の判断処理と、
前記ソフトウェアに現象面の特徴があるかどうかを判断する第2の判断処理と、
前記第1の判断処理と前記第2の判断処理の判断結果に基づいて、前記不合格の原因となった障害に関するテスト結果を出力する処理と、
を実行する、テスト方法。
A test method for testing software to be tested,
the computer
a process of controlling execution of a plurality of tests for the software;
Among the plurality of tests, in the failed test,
a first determination process for determining whether the software has functional characteristics;
a second determination process for determining whether the software has phenomenal characteristics;
a process of outputting a test result related to the failure that caused the failure based on the determination results of the first determination process and the second determination process ;
test method.
テスト対象となるソフトウェアをテストするコンピュータに、
前記ソフトウェアに関する複数のテストの実行を制御する処理と、
前記複数のテストのうち、不合格になったテストにおいて、
前記ソフトウェアに機能面の特徴があるかどうかを判断する第1の判断処理と、
前記ソフトウェアに現象面の特徴があるかどうかを判断する第2の判断処理と、
前記第1の判断処理と前記第2の判断処理の判断結果に基づいて、前記不合格の原因となった障害に関するテスト結果を出力する処理と、
を実行させる、テストプログラム。
On the computer that tests the software under test,
a process of controlling execution of a plurality of tests for the software;
Among the plurality of tests, in the failed test,
a first determination process for determining whether the software has functional characteristics;
a second determination process for determining whether the software has phenomenal characteristics;
a process of outputting a test result related to the failure that caused the failure based on the determination results of the first determination process and the second determination process ;
A test program that runs the
JP2019016355A 2019-01-31 2019-01-31 Information processing device, test method, and test program Active JP7238439B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019016355A JP7238439B2 (en) 2019-01-31 2019-01-31 Information processing device, test method, and test program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019016355A JP7238439B2 (en) 2019-01-31 2019-01-31 Information processing device, test method, and test program

Publications (2)

Publication Number Publication Date
JP2020123287A JP2020123287A (en) 2020-08-13
JP7238439B2 true JP7238439B2 (en) 2023-03-14

Family

ID=71992785

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019016355A Active JP7238439B2 (en) 2019-01-31 2019-01-31 Information processing device, test method, and test program

Country Status (1)

Country Link
JP (1) JP7238439B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222108A (en) 2004-02-03 2005-08-18 Matsushita Electric Ind Co Ltd Bug analysis method and device
JP2010157266A (en) 2010-04-09 2010-07-15 Toshiba Corp Information processing apparatus, failure sign determination method, and program
JP2011060052A (en) 2009-09-11 2011-03-24 Mitsubishi Electric Corp Method for executing software test

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002041332A (en) * 2000-07-27 2002-02-08 Hitachi Software Eng Co Ltd Program quality evaluating method and recording medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222108A (en) 2004-02-03 2005-08-18 Matsushita Electric Ind Co Ltd Bug analysis method and device
JP2011060052A (en) 2009-09-11 2011-03-24 Mitsubishi Electric Corp Method for executing software test
JP2010157266A (en) 2010-04-09 2010-07-15 Toshiba Corp Information processing apparatus, failure sign determination method, and program

Also Published As

Publication number Publication date
JP2020123287A (en) 2020-08-13

Similar Documents

Publication Publication Date Title
US20140211021A1 (en) Test system for evaluating mobile device and driving method thereof
US8549478B2 (en) Graphical user interface input element identification
US9841826B2 (en) Automatic test system and test method for computer, record medium, and program product
US10209306B2 (en) Methods and systems for generating functional test patterns for manufacture test
US9164875B2 (en) Error detection method, information processing circuit, and error detection computer program product
US20220107882A1 (en) Rendering engine component abstraction system
US8752027B2 (en) Injecting faults into program for testing software
JP6283096B2 (en) Program test service
US6047387A (en) Simulation system for testing and displaying integrated circuit&#39;s data transmission function of peripheral device
CN111414309A (en) Automatic test method of application program, computer equipment and storage medium
CN109710479B (en) Processing method, first device and second device
CN114253841A (en) Test script generation method and device and storage medium
US8392144B2 (en) Keyboard test program generating method
JP7238439B2 (en) Information processing device, test method, and test program
JP5181479B2 (en) Fault diagnosis system and fault diagnosis program
CN111949510B (en) Test processing method, device, electronic equipment and readable storage medium
JP4957521B2 (en) Software partial test system, method and program used therefor
US11657350B2 (en) Information processing apparatus, workflow test apparatus, and non-transitory computer readable medium
TWI234705B (en) Detecting method for PCI system
JP7363164B2 (en) Information processing device, information processing method, and information processing program
JP2020140529A (en) Information processing device, information processing method, and program
JP2014203125A (en) Patterning device and method
US8976378B2 (en) Pre-flight system for PDF/VT
JP2007080036A (en) Trace device, trace method and trace program
WO2016117317A1 (en) Software determination device, software determination method, recording medium in which software determination program is stored, software analysis device, and malware diagnosis device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221011

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230213

R151 Written notification of patent or utility model registration

Ref document number: 7238439

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151