JP6723483B2 - テストケース生成装置、テストケース生成方法およびテストケース生成プログラム - Google Patents
テストケース生成装置、テストケース生成方法およびテストケース生成プログラム Download PDFInfo
- Publication number
- JP6723483B2 JP6723483B2 JP2019566031A JP2019566031A JP6723483B2 JP 6723483 B2 JP6723483 B2 JP 6723483B2 JP 2019566031 A JP2019566031 A JP 2019566031A JP 2019566031 A JP2019566031 A JP 2019566031A JP 6723483 B2 JP6723483 B2 JP 6723483B2
- Authority
- JP
- Japan
- Prior art keywords
- test case
- steps
- software
- value
- case generation
- 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
Links
- 238000012360 testing method Methods 0.000 title claims description 299
- 238000000034 method Methods 0.000 title claims description 60
- 238000007689 inspection Methods 0.000 claims description 77
- 238000000605 extraction Methods 0.000 claims description 55
- 238000012545 processing Methods 0.000 claims description 54
- 230000008569 process Effects 0.000 claims description 25
- 230000006870 function Effects 0.000 description 51
- 230000008859 change Effects 0.000 description 14
- 239000000284 extract Substances 0.000 description 12
- 238000004891 communication Methods 0.000 description 7
- 230000006399 behavior Effects 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- YTAHJIFKAKIKAV-XNMGPUDCSA-N [(1R)-3-morpholin-4-yl-1-phenylpropyl] N-[(3S)-2-oxo-5-phenyl-1,3-dihydro-1,4-benzodiazepin-3-yl]carbamate Chemical compound O=C1[C@H](N=C(C2=C(N1)C=CC=C2)C1=CC=CC=C1)NC(O[C@H](CCN1CCOCC1)C1=CC=CC=C1)=O YTAHJIFKAKIKAV-XNMGPUDCSA-N 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3676—Test management for coverage analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
値が入力される度に1ステップの処理を実行するソフトウェアを解析して、前記ソフトウェアのテストのために入力される値の系列をテストケースとして生成するテストケース生成装置において、
複数ステップの処理で共用され、前記複数ステップの処理が順次実行されていく中で、各ステップの処理の実行結果に応じた値を保持する状態変数について、前記複数ステップのうちいずれか1ステップの処理が実行された後の値と他の1ステップの処理が実行された後の値とが等しい場合に、それら2ステップが等価ステップであると判定する等価ステップ検査部と、
前記等価ステップ検査部により等価ステップであると判定された2ステップの一方を除き、前記ソフトウェアを解析して前記テストケースに含める値を生成するテストケース生成部と
を備える。
本実施の形態について、図1から図6を用いて説明する。
図1を参照して、本実施の形態に係るテストケース生成装置10の構成を説明する。
図1を参照して、本実施の形態に係るテストケース生成装置10の動作の概要を説明する。テストケース生成装置10の動作は、本実施の形態に係るテストケース生成方法に相当する。
本実施の形態では、等価ステップであると判定された2ステップの一方について、ソフトウェアを解析してテストケースに含める値を生成する処理が省かれる。そのため、複数ステップにわたるテストケースの生成にかかる時間を削減することができる。
本実施の形態では、プログラム情報入力部15、状態変数抽出部16、構造抽出部17、ラッパ関数生成部18、等価ステップ検査部19およびテストケース生成部20の機能がソフトウェアにより実現されるが、変形例として、プログラム情報入力部15、状態変数抽出部16、構造抽出部17、ラッパ関数生成部18、等価ステップ検査部19およびテストケース生成部20の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。すなわち、プログラム情報入力部15、状態変数抽出部16、構造抽出部17、ラッパ関数生成部18、等価ステップ検査部19およびテストケース生成部20の機能の一部が専用のハードウェアにより実現され、残りがソフトウェアにより実現されてもよい。
本実施の形態について、主に実施の形態1との差異を、図7から図12を用いて説明する。
本実施の形態に係るテストケース生成装置10の構成は、図1に示した実施の形態1のものと同じであるため、説明を省略する。
図12を参照して、本実施の形態に係るテストケース生成装置10の動作の概要を説明する。テストケース生成装置10の動作は、本実施の形態に係るテストケース生成方法に相当する。
本実施の形態では、状態がループしているようなテスト対象ソフトウェアにおいて、最大ステップ数に到達する前にすべての状態に到達したと判断した場合には、未網羅の網羅対象箇所が残っていても処理を終了する。すなわち、あるステップの処理を実行した後、そのステップが、そのステップより前のステップと等価である場合には、最大ステップに到達する前に処理を終了する。これにより、不要なテストケース生成用の解析を行わず、最大ステップ数まで実行する場合と比較して解析時間を削減することができる。未網羅の網羅対象箇所とは、デッドコード等、いかなる値を入力しても実行不能なコード等が存在する場合に含まれる箇所である。
Claims (9)
- 値が入力される度に1ステップの処理を実行するソフトウェアを解析して、前記ソフトウェアのテストのために入力される値の系列をテストケースとして生成するテストケース生成装置において、
複数ステップの処理で共用され、前記複数ステップの処理が順次実行されていく中で、各ステップの処理の実行結果に応じた値を保持する状態変数について、前記複数ステップのうちいずれか1ステップの処理が実行された後の値と他の1ステップの処理が実行された後の値とが、それら2ステップにおいて前記ソフトウェアに入力された値がいかなる値であっても等しい場合に、それら2ステップが等価ステップであると判定する等価ステップ検査部と、
前記等価ステップ検査部により等価ステップであると判定された2ステップの一方を除き、前記ソフトウェアを解析して前記テストケースに含める値を生成するテストケース生成部と
を備えるテストケース生成装置。 - 前記ソフトウェアを解析して、前記複数ステップの処理で共用され、各ステップの処理の実行結果に応じた値を保持する複数の変数のうち、前記ソフトウェアの次ステップの処理を異にする第1変数を除く第2変数を前記状態変数として抽出する状態変数抽出部をさらに備え、
前記ソフトウェアは、前記第1変数の値が閾値に達しているかどうかによって次ステップの処理を異にする請求項1に記載のテストケース生成装置。 - 前記第1変数の仕様を示す情報が入力されるプログラム情報入力部をさらに備え、
前記状態変数抽出部は、前記プログラム情報入力部に入力された情報に基づいて前記第1変数を判別する請求項2に記載のテストケース生成装置。 - 前記状態変数抽出部は、前記ソフトウェアを解析して前記第1変数を判別する請求項2に記載のテストケース生成装置。
- 前記テストケース生成部は、前記ソフトウェアのテストの網羅基準が満たされるまで、前記ソフトウェアを、前記等価ステップ検査部により等価ステップであると判定された2ステップの一方を除き1ステップずつ順番に解析して前記テストケースに含める値を生成する請求項1から4のいずれか1項に記載のテストケース生成装置。
- 前記等価ステップ検査部は、前記複数ステップのうち連続する2ステップの各組み合わせが等価ステップであるかどうかを判定し、
前記テストケース生成部は、前記等価ステップ検査部により等価ステップであると判定された2ステップのうち後に処理が実行されるステップを除き、前記ソフトウェアを解析して前記テストケースに含める値を生成する請求項1から5のいずれか1項に記載のテストケース生成装置。 - 前記等価ステップ検査部は、前記状態変数と、前記ソフトウェアの次ステップの処理を異にする変数との両方について、前記複数ステップのうちいずれか1ステップの処理が実行された後の値と他の1ステップの処理が実行された後の値とが、それら2ステップにおいて前記ソフトウェアに入力された値がいかなる値であっても等しい場合に、それら2ステップが完全等価ステップであると判定し、
前記テストケース生成部は、前記等価ステップ検査部により完全等価ステップであると判定された2ステップのうち後に処理が実行されるステップに到達するまで、前記ソフトウェアを、前記等価ステップ検査部により等価ステップであると判定された2ステップの一方を除き1ステップずつ順番に解析して前記テストケースに含める値を生成し、
前記ソフトウェアは、前記次ステップの処理を異にする変数の値が閾値に達しているかどうかによって次ステップの処理を異にする請求項1から5のいずれか1項に記載のテストケース生成装置。 - 値が入力される度に1ステップの処理を実行するソフトウェアを解析して、前記ソフトウェアのテストのために入力される値の系列をテストケースとして生成するテストケース生成方法において、
等価ステップ検査部が、複数ステップの処理で共用され、前記複数ステップの処理が順次実行されていく中で、各ステップの処理の実行結果に応じた値を保持する状態変数について、前記複数ステップのうちいずれか1ステップの処理が実行された後の値と他の1ステップの処理が実行された後の値とが、それら2ステップにおいて前記ソフトウェアに入力された値がいかなる値であっても等しい場合に、それら2ステップが等価ステップであると判定し、
テストケース生成部が、前記等価ステップ検査部により等価ステップであると判定された2ステップの一方を除き、前記ソフトウェアを解析して前記テストケースに含める値を生成するテストケース生成方法。 - 値が入力される度に1ステップの処理を実行するソフトウェアを解析して、前記ソフトウェアのテストのために入力される値の系列をテストケースとして生成するテストケース生成プログラムにおいて、
コンピュータに、
複数ステップの処理で共用され、前記複数ステップの処理が順次実行されていく中で、各ステップの処理の実行結果に応じた値を保持する状態変数について、前記複数ステップのうちいずれか1ステップの処理が実行された後の値と他の1ステップの処理が実行された後の値とが、それら2ステップにおいて前記ソフトウェアに入力された値がいかなる値であっても等しい場合に、それら2ステップが等価ステップであると判定する等価ステップ検査手順と、
前記等価ステップ検査手順により等価ステップであると判定された2ステップの一方を除き、前記ソフトウェアを解析して前記テストケースに含める値を生成するテストケース生成手順と
を実行させるテストケース生成プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/001227 WO2019142266A1 (ja) | 2018-01-17 | 2018-01-17 | テストケース生成装置、テストケース生成方法およびテストケース生成プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2019142266A1 JPWO2019142266A1 (ja) | 2020-04-16 |
JP6723483B2 true JP6723483B2 (ja) | 2020-07-15 |
Family
ID=67300958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019566031A Active JP6723483B2 (ja) | 2018-01-17 | 2018-01-17 | テストケース生成装置、テストケース生成方法およびテストケース生成プログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US11347628B2 (ja) |
JP (1) | JP6723483B2 (ja) |
CN (1) | CN111566625B (ja) |
DE (1) | DE112018006331B4 (ja) |
WO (1) | WO2019142266A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023060521A1 (en) * | 2021-10-14 | 2023-04-20 | Intel Corporation | Apparatus, device, method and computer program for generating test cases for verification of hardware instructions of hardware device in hypervisor |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05151023A (ja) | 1991-11-27 | 1993-06-18 | Mitsubishi Electric Corp | 情報制御装置 |
JPH11219293A (ja) | 1998-02-02 | 1999-08-10 | Nec Eng Ltd | アドレストレース方法及びトレーサメモリ制御装置 |
JP2003316612A (ja) | 2002-04-25 | 2003-11-07 | Fujitsu Ltd | 縮小プログラム自動作成装置 |
US7801715B2 (en) * | 2003-08-11 | 2010-09-21 | The Mathworks, Inc. | System and method for block diagram simulation context restoration |
CN1908892A (zh) * | 2005-08-01 | 2007-02-07 | 王彤 | 测试用例设计方法和系统 |
FR2921170B1 (fr) * | 2007-09-14 | 2018-01-12 | Airbus Operations | Procede de generation automatique de programmes de test d'un logiciel de fonctionnement d'un systeme embarque a bord d'un aeronef, et dispositif de mise en oeuvre |
JP5198132B2 (ja) | 2008-04-23 | 2013-05-15 | 大日本スクリーン製造株式会社 | 状態遷移テスト支援装置、状態遷移テスト支援プログラム、および状態遷移テスト支援方法 |
JP2010140084A (ja) * | 2008-12-09 | 2010-06-24 | Toshiba Corp | 検査モデル生成装置、モデル検査装置、及び検査モデル生成方法 |
JP5321286B2 (ja) | 2009-06-26 | 2013-10-23 | 富士通株式会社 | プログラムモデル検査方法、プログラムモデル検査プログラム |
JP5123350B2 (ja) * | 2010-04-20 | 2013-01-23 | 株式会社シーイーシー | テストケース作成システム、方法およびプログラム |
CN102385551B (zh) * | 2010-08-31 | 2015-04-29 | 西门子公司 | 一种筛选测试用例的方法、装置及系统 |
US20130090911A1 (en) * | 2011-10-05 | 2013-04-11 | International Business Machines Corporation | Modeling Test Space for System Behavior Using Interchangeable Designations |
JP5987189B2 (ja) | 2012-09-24 | 2016-09-07 | 三菱電機株式会社 | テストケース自動生成装置及びテストケース自動生成プログラム |
WO2015045472A1 (ja) | 2013-09-24 | 2015-04-02 | 富士通株式会社 | シミュレーション装置、シミュレーション方法およびシミュレーションプログラム |
JP2015069400A (ja) * | 2013-09-30 | 2015-04-13 | 日立オートモティブシステムズ株式会社 | ソフトウェアテストシステム |
CN105095085B (zh) * | 2015-08-25 | 2018-01-19 | 暨南大学 | 一种基于web的软件测试实训系统及方法 |
US9830255B2 (en) * | 2015-12-03 | 2017-11-28 | Wipro Limited | System and method for optimizing test suite comprising plurality of test cases |
DE112016006297T5 (de) | 2016-02-24 | 2018-10-31 | Mitsubishi Electric Corporation | Testfall-Erzeugungsvorrichtung und Testfall-Erzeugungsprogramm |
US10353810B2 (en) * | 2016-10-04 | 2019-07-16 | Sap Se | Software testing with minimized test suite |
-
2018
- 2018-01-17 CN CN201880085785.3A patent/CN111566625B/zh active Active
- 2018-01-17 DE DE112018006331.3T patent/DE112018006331B4/de active Active
- 2018-01-17 US US16/961,395 patent/US11347628B2/en active Active
- 2018-01-17 WO PCT/JP2018/001227 patent/WO2019142266A1/ja active Application Filing
- 2018-01-17 JP JP2019566031A patent/JP6723483B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
US20200364137A1 (en) | 2020-11-19 |
CN111566625A (zh) | 2020-08-21 |
US11347628B2 (en) | 2022-05-31 |
WO2019142266A1 (ja) | 2019-07-25 |
DE112018006331B4 (de) | 2022-05-05 |
JPWO2019142266A1 (ja) | 2020-04-16 |
CN111566625B (zh) | 2024-01-09 |
DE112018006331T5 (de) | 2020-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8756460B2 (en) | Test selection based on an N-wise combinations coverage | |
US8386851B2 (en) | Functional coverage using combinatorial test design | |
US8719789B2 (en) | Measuring coupling between coverage tasks and use thereof | |
US9367427B2 (en) | Embedding and executing trace functions in code to gather trace data | |
US20170060735A1 (en) | Software program repair | |
US8868976B2 (en) | System-level testcase generation | |
US10936474B2 (en) | Software test program generation | |
US10592703B1 (en) | Method and system for processing verification tests for testing a design under test | |
US9396095B2 (en) | Software verification | |
US9218273B2 (en) | Automatic generation of a resource reconfiguring test | |
CN108874656A (zh) | 代码测试方法、装置、可读存储介质及计算机设备 | |
US9075921B2 (en) | Error simulation | |
JP6723483B2 (ja) | テストケース生成装置、テストケース生成方法およびテストケース生成プログラム | |
KR20190128457A (ko) | 대상 프로그램에 포함된 대상 함수를 테스트하는 방법 및 장치 | |
US8903700B2 (en) | Concretization of abstracted traces | |
US8261227B2 (en) | Circuit design approximation | |
US8554522B2 (en) | Detection of design redundancy | |
KR101038397B1 (ko) | 로봇 소프트웨어 화이트 박스 테스트를 위한 테스트 교호강도 결정 방법 및 자동화 테스트 시스템 | |
JP2009134360A (ja) | モデル検査システム、モデル検査方法およびモデル検査用プログラム | |
CN109933948B (zh) | 一种形式验证方法、装置、形式验证平台及可读存储介质 | |
JP5755861B2 (ja) | テストケース生成装置、テストケース生成方法およびテストケース生成プログラム | |
US20170123959A1 (en) | Optimized instrumentation based on functional coverage | |
KR102519639B1 (ko) | 코드 점검 인터페이스 제공 방법, 그리고 이를 구현하기 위한 장치 | |
US8930759B2 (en) | Stream generation | |
US11782682B2 (en) | Providing metric data for patterns usable in a modeling environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200109 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20200109 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20200131 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200421 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200518 |
|
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: 20200526 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200623 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6723483 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |