JP6289778B2 - テストケース生成装置及びテストケース生成プログラム - Google Patents
テストケース生成装置及びテストケース生成プログラム Download PDFInfo
- Publication number
- JP6289778B2 JP6289778B2 JP2017558562A JP2017558562A JP6289778B2 JP 6289778 B2 JP6289778 B2 JP 6289778B2 JP 2017558562 A JP2017558562 A JP 2017558562A JP 2017558562 A JP2017558562 A JP 2017558562A JP 6289778 B2 JP6289778 B2 JP 6289778B2
- Authority
- JP
- Japan
- Prior art keywords
- test case
- test
- input
- generated
- pattern
- 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 198
- 238000000034 method Methods 0.000 claims description 96
- 238000012545 processing Methods 0.000 claims description 41
- 238000010998 test method Methods 0.000 claims description 41
- 230000008569 process Effects 0.000 claims description 16
- 230000003252 repetitive effect Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 58
- 238000004458 analytical method Methods 0.000 description 16
- 230000008859 change Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000000605 extraction Methods 0.000 description 6
- 238000003780 insertion Methods 0.000 description 6
- 230000037431 insertion Effects 0.000 description 6
- 238000012790 confirmation Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000018109 developmental process Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 108010076504 Protein Sorting Signals Proteins 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012356 Product development Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000033772 system development Effects 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/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/3664—Environments for testing or debugging software
-
- 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/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/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)(要求事項2)を同時に保証することとする。(要求事項1)制御ソフトウェアの外部的な機能に基づく網羅を保証すること。(要求事項2)制御ソフトウェアの内部的な構造に基づく網羅を保証すること。
機能安全規格は、具体例としては、航空分野のDO−178Bと自動車分野のISO26262とがある。
この発明は、(要求事項1)の機能に基づく網羅と、(要求事項2)の構造に基づく網羅とを同時に保証可能なテストケースを特定することを目的とする。
対象システムの入力信号についての複数の入力条件と、前記対象システムの出力信号についての複数の出力条件と、ソフトウェアの構造に基づく試験手法によって処理が到達したことが確認される、前記対象システムにおける複数の到達点との組合せを示す組合せパターンを生成するパターン生成部と、
前記パターン生成部によって生成された前記組合せパターンが示す各組合せを対象パターンとして、前記対象パターンにおける前記入力条件及び前記出力条件のペアである入出力条件と前記到達点とを同時に確認可能な前記複数の入力信号の値であるテストケースを生成可能か否かを判定することにより、前記複数の入力条件それぞれと、前記複数の出力条件それぞれと、前記複数の到達点それぞれとを確認可能な前記テストケースの組を特定するテストケース生成部と
を備える。
***構成の説明***
図1を参照して、実施の形態1に係るテストケース生成装置10の構成を説明する。
テストケース生成装置10は、対象システム30のテストケース36を生成するためのコンピュータである。
テストケース生成装置10は、プロセッサ11と、記憶装置12と、通信インタフェース13と、入出力インタフェース14とのハードウェアを備える。プロセッサ11は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
記憶装置12のストレージ122には、テストケース生成装置10の各部の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ11によりメモリ121に読み込まれ、プロセッサ11によって実行される。これにより、テストケース生成装置10の各部の機能が実現される。
仕様記憶部123には、信号値条件124と、実装物125といったものが記憶される。信号値条件124は、対象システム30の外部的な仕様における、対象システム30の複数の入力信号それぞれについての入力条件と、対象システム30の複数の出力信号それぞれについての出力条件とを示す。入力条件及び出力条件は、信号値の範囲と信号値の境界値といった条件である。実装物125は、対象システム30を実現したプログラムコード、対象システム30の処理の流れを表した処理モデルといった、少なくとも対象システム30の処理の流れが特定されたものである。
対象システム30は、制御ソフトウェアとハードウェアとで構成される制御装置と、制御対象とが、デジタル信号線またはアナログ信号線で接続されて構成される。制御ソフトウェアは、機能を実現するアプリケーションと、通信及びスケジューラといった機能動作の仕組みを実現する実行環境と、制御対象を制御するためのドライバとのレイヤで構成される。ハードウェアは、マイクロコンピュータと、スケジューラと等で構成される。制御対象は、センサ及びアクチュエータといったIO(Input/Output)デバイスと、外部装置といった装置である。
アプリケーションは、周期的に指定順序で起動され、内部に持った状態変数、カウンタ及びバッファの値等に依存して処理内容が変更される複数の制御処理で構成される。実行環境とドライバとは、レジスタアクセスといったI/O処理と、制御処理よりも優先度が高い割込み処理、タイマ処理と、通信処理とで構成される。対象システム30では、アプリケーションと実行環境及びドライバとの間でデータがやり取りされながら、時々刻々と制御演算が進められる。
図3から図15を参照して、実施の形態1に係るテストケース生成装置10の動作を説明する。
実施の形態1に係るテストケース生成装置10の動作は、実施の形態1に係るテストケース生成方法に相当する。また、実施の形態1に係るテストケース生成装置10の動作は、実施の形態1に係るテストケース生成プログラムの処理に相当する。
(図3のステップS1:条件抽出処理)
条件抽出部21は、ストレージ122の仕様記憶部123に記憶された信号値条件124を読み出し、図4に示すように、信号値条件124から、各入力信号についての入力条件31と、各出力信号についての出力条件32とを抽出する。これにより、複数の入力条件31と、複数の出力条件32とが抽出される。図4では、入力信号1〜入力信号nそれぞれについての入力条件31である入力条件1〜入力条件nと、出力信号1〜出力信号mそれぞれについての出力条件32である出力条件1〜出力条件mとが抽出されている。条件抽出部21は、抽出された複数の入力条件31及び複数の出力条件32をメモリ121に書き込む。
各入力条件及び各出力条件は、ビットと、論理値と、値の列挙と、値の範囲との条件、又は、条件の組合せによって規定される。ビットは、入力信号又は出力信号が取り得るビットパターンの有効値及び無効値を示す。論理値は、入力信号又は出力信号が取り得る真偽値を示す。値の列挙は、入力信号又は出力信号が取り得る離散的な有効値及び無効値を示す。値の範囲は、入力信号又は出力信号が取り得る連続的な有効値及び無効値を示す。条件の組合せは、ビットと、論理値と、値の列挙と、値の範囲との少なくともいずれかが論理演算子で結合される。
なお、入力条件31及び出力条件32は、ソフトウェアの機能に基づく試験手法の確認ポイントに対応する。
到達信号挿入部22は、ストレージ122の仕様記憶部123に記憶された実装物125を読み出し、対象システム30における複数の到達点に到達信号を挿入して、解析用実装物33を生成する。到達信号挿入部22は、生成された解析用実装物33をメモリ121に書き込む。
到達点とは、ソフトウェアの構造に基づく試験手法によって処理が到達したことが確認され、内部構造の実行可否を解析するための確認ポイントのことである。具体例としては、到達点とは、ソフトウェアの構造に基づく試験手法が分岐網羅であれば、実装物125における全ての分岐先である。実装物125が、図5に示す処理モデルである場合、解析用実装物33は、図6に示すように、実装物125の全ての分岐先に到達信号が埋め込まれたものである。
なお、図5では、対象システム30には、演算と分岐及び合流とだけが含まれているが、他にもループといった処理が含まれる場合もある。
パターン生成部23は、ステップS1で抽出された複数の入力条件と、ステップS1で抽出された複数の出力条件と、ステップS2で生成された解析用実装物33とをメモリ121から読み出す。パターン生成部23は、複数の入力条件と、複数の出力条件と、解析用実装物33に埋め込まれた複数の到達信号に対応する複数の到達点との組合せを示す組合せパターンを生成する。パターン生成部23は、生成された組合せパターンをメモリ121に書き込む。
具体例としては、図4に示す入力条件31及び出力条件32が読み出され、図6に示す解析用実装物33が読み出された場合、パターン生成部23は図7に示す組合せパターンを生成する。その結果、組合せパターンが示す組合せとして、“条件×到達”に添え字として示された1.1.A〜n.m.Zが生成される。
具体例としては、パターン生成部23は、対象パターンが図7に示す組合せ1.1.Aであれば、図8に示すように、入力条件1と、出力条件1と、到達信号Aとが埋め込まれた条件付実装物34を生成する。
テストケース生成部24は、ステップS3で生成された各組合せを対象パターンとする。そして、テストケース生成部24は、対象パターンにおける入力条件及び出力条件のペアである入出力条件と到達点とを同時に確認可能な複数の入力条件31及び複数の出力条件32の値であるテストケース36を生成可能か否かを判定する。これにより、テストケース生成部24は、ステップS1で抽出された複数の入力条件31それぞれと、ステップS1で抽出された複数の出力条件32それぞれと、ステップS2で挿入された複数の到達信号に対応する複数の到達点それぞれとを確認可能なテストケース36の組を特定する。
テストケース生成部24は、図9に示すように、テストケース36を生成可能か否かを判定した結果に応じて、組合せが仕様範囲内と仕様想定外と実行不能とのいずれであるかを示す網羅情報35を生成する。
また、テストケース生成部24は、生成可能と判定された組合せから、複数の入力条件31それぞれと、複数の出力条件32それぞれと、複数の到達点それぞれとを確認可能な組合せを抽出して、抽出された組合せについてテストケース36を生成する。テストケース36は、時間軸上の入力信号列及び出力信号列である。具体例としては、テストケース36は、図10に示すように、時間ステップ毎の、入力信号1〜入力信号nの値と、出力信号1〜出力信号mの値とである。図10の各テストケース36の例が、組合せパターンが示すいずれかの組合せに対応している。
図11に示す処理は、各組合せを対象パターンとして実行される。図11に示す処理が実行されることにより、試験目的及び確認内容に示されるように、対象パターンについての、要求の実現度合いと、期待通りの動作をしているかとが特定される。
要求の実現度合いとしては、各組合せが仕様範囲内と仕様想定外と実行不能とのいずれであるかが特定される。仕様範囲内とは、構造網羅を解析した結果、実行可能であり、意図した要求事項を実現した場合である。仕様想定外とは、構造網羅を解析した結果、実行されず、意図しない要求事項が混入した場合である。実行不能とは、構造網羅を解析した結果、実行不可能な場合である。
期待通りの動作をしているかとしては、成功と失敗と要確認とのいずれであるかが特定される。成功とは、入力信号として特定の値を与えた場合の出力信号の値が期待値と一致した場合である。要確認とは、入力信号として特定の値を与えた場合の出力信号の値が期待値と不一致の場合であり、かつ、テストケースの対象となる部分が機能変更部分の場合である。失敗とは、入力信号として特定の値を与えた場合の出力信号の値が期待値と不一致の場合であり、かつ、テストケースの対象となる部分が機能変更部分に関さず実装変更部分に関するものである場合である。
手法1:構造に基づく試験手法とは、ソフトウェアの内部的な構造の実行可否を基準にする方法である。手法1は、具体例としては、分岐網羅、MC/DC(Modified Condition/Decision Coverage)である。なお、手法1は、構造に基づく試験手法を1つだけではなく、複数用いてもよい。
手法2:機能と構造に基づく試験手法(緩い)とは、ソフトウェアの機能に基づく試験手法とソフトウェアの構造に基づく試験手法との両方の基準を同時に満たす方法のうち、機能に関する基準が相対的に緩いものである。手法2は、具体例としては、同値分割と分岐網羅との組合せである。なお、手法1は、機能及び構造に基づく試験手法をそれぞれ1つだけではなく、複数用いてもよい。
手法3:機能と構造に基づく試験手法(厳しい)とは、ソフトウェアの機能に基づく試験手法とソフトウェアの構造に基づく試験手法との両方の基準を同時に満たす方法のうち、機能に関する基準が相対的に厳しいものである。つまり、第2手法よりも基準が厳しいソフトウェアの機能に基づく試験手法と、ソフトウェアの構造に基づく試験手法との両方の基準を同時に満たす方法である。手法3は、具体例としては、境界値分析と分岐網羅との組合せである。なお、手法1は、機能及び構造に基づく試験手法をそれぞれ1つだけではなく、複数用いてもよい。
手法4:機能に基づく試験手法(フロー)とは、ソフトウェアの機能に基づく試験手法のうち、外部的な機能仕様において、対象システム30の処理フローに影響を与える入力値を基準としたものである。手法4は、具体例としては、代表値組合せ(境界値)である。なお、手法1は、機能に基づく試験手法を1つだけではなく、複数用いてもよい。
手法5:機能に基づく試験手法(値)とは、ソフトウェアの機能に基づく試験手法のうち、外部的な機能仕様において、出力信号の値と期待値との一致を基準にする方法である。手法5は、具体例としては、Back−to−Backテストである。
なお、ここで用いられるソフトウェアの構造に基づく試験手法は、ステップS2で用いられる試験手法と同じであることが望ましい。
手法2〜4の機能に基づく試験手法(フロー)の具体例である同値分割、境界値分析、原因結果グラフ、代表値組合せ(境界値)の判断条件は、図14に示す通りである。なお、同値分割には、入力条件の内容及び出力条件の内容が3行あるが、同じ行に記載された入力条件の内容と出力条件の内容とが対応していることを意味する。つまり、一番上の行であれば、全ての入力信号が有効範囲である場合に、全ての出力信号が有効範囲であるという条件になる。同値分割を用いる場合、3行それぞれの条件に対応するテストケース36が生成できる場合に生成可能と判定され、1行の条件についてでもテストケース36が生成できない場合には、生成不可能と判定される。境界値分析についても、同値分割の場合と同様である。
手法5の機能に基づく試験手法(値)の具体例であるBack−to−Backテストの判断条件は図15に示す通りである。なお、ベースラインとは、レビュー又は試験等の結果が承認され、構成管理された対象システム30のバージョンのことである。そのため、機能変更部分を除いて試験の対象となるバージョンと、ベースラインとの出力信号の値は一致することが原則である。また、入出力条件は、機能に基づく試験手法(フロー)と同様となっているが、これは手法4における入出力条件と同じ条件が適用されるということである。
図12に示す例であれば、テストケース生成部24は、分岐網羅の条件を満たすテストケース36を生成可能であるか否かを判定する。具体的には、テストケース生成部24は、対象パターンにおける入力条件の条件下で、対象パターンにおける到達点を通るテストケース36を生成する。テストケース生成部24は、テストケース36が生成できれば、生成可能と判定し、生成できなければ、生成不可と判定する。テストケース生成部24は、対象パターンにおける入力条件の条件下で、テストケース36として生成し、全ての到達点について通るか否か判定することにより、テストケース36を生成可能か否か判定できる。
テストケース生成部24は、テストケース36を生成不可な場合には、要求の実現度合いを実行不能と判定する。
図12に示す例であれば、テストケース生成部24は、同値分割と分岐網羅との両方の条件を同時に満たすテストケース36を生成可能であるか否かを判定する。具体的には、テストケース生成部24は、対象パターンにおける入力条件及び出力条件の下で、図14に示す同値分割の3行それぞれを満たし、かつ、対象パターンにおける到達点を通るテストケース36を生成する。テストケース生成部24は、テストケース36が生成できれば、生成可能と判定し、生成できなければ、生成不可と判定する。テストケース生成部24は、対象パターンにおける入力条件及び出力条件の下で、図14に示す同値分割の各行を満たすテストケース36を生成し、全ての到達点について通るか否か判定することにより、テストケース36を生成可能か否か判定できる。
テストケース生成部24は、テストケース36を生成不可な場合には、要求の実現度合いを仕様想定外と判定する。
図12に示す例であれば、境界値分析と分岐網羅との両方の条件を同時に満たすテストケース36を生成可能であるか否かを判定する。具体的には、テストケース生成部24は、対象パターンにおける入力条件及び出力条件の下で、図14に示す境界値分析の4行それぞれを満たし、かつ、対象パターンにおける到達点を通るテストケース36を生成する。テストケース生成部24は、テストケース36が生成できれば、生成可能と判定し、生成できなければ、生成不可と判定する。テストケース生成部24は、対象パターンにおける入力条件及び出力条件の下で、図14に示す境界値分析の各行を満たすテストケース36を生成し、全ての到達点について通るか否か判定することにより、テストケース36を生成可能か否か判定できる。
テストケース生成部24は、テストケース36を生成不可な場合には、要求の実現度合いを仕様想定外と判定する。
図12に示す例であれば、代表値組合せ(境界値)を満たすテストケース36を生成可能であるか否かを判定する。具体的には、テストケース生成部24は、対象パターンにおける入力条件及び出力条件の下で、図14に示す代表値組合せ(境界値)を満たすテストケース36を生成する。テストケース生成部24は、テストケース36が生成できれば、生成可能と判定し、生成できなければ、生成不可と判定する。テストケース生成部24は、対象パターンにおける入力条件及び出力条件の下で、図14に示す代表値組合せ(境界値)を満たすテストケース36を生成する処理を必要に応じて補完的に行うことにより、テストケース36を生成可能か否か判定できる。
図12に示す例であれば、テストケース生成部24は、手法4で生成されたテストケース36の入力信号を入力として、Back−to−Backテストを実行して、出力信号の値が期待値と一致するか否か判定する。
テストケース生成部24は、出力信号の値が期待値と一致する場合には、期待通りに動作しているかを成功と判定する。一方、テストケース生成部24は、出力信号の値が期待値と一致しない場合には、テストケースの対象となる部分が機能変更部分のときは、期待通りに動作しているかを要確認とし、テストケースの対象となる部分が機能変更部分でなく実装変更部分のときには、期待通りに動作しているかを失敗とする。
以上のように、実施の形態1に係るテストケース生成装置10は、(要求事項1)の機能に基づく網羅と、(要求事項2)の構造に基づく網羅とを同時に保証可能なテストケース36を得ることができる。そのため、漏れのないテストケース36、つまり、必要十分なテストケース36を得ることができる。
製品開発プロジェクトではテストケース36の数が膨大になってしまう傾向にある。しかし、実施の形態1に係るテストケース生成装置10では、必要十分なテストケース36を得ることができるため、試験作業量を減らすことができ、人員リソースを有効活用することにも寄与する。
<変形例1>
実施の形態1では、テストケース生成装置10の各部の機能がソフトウェアで実現された。しかし、変形例1として、テストケース生成装置10の各部の機能はハードウェアで実現されてもよい。この変形例1について、実施の形態1と異なる点を説明する。
各部の機能がハードウェアで実現される場合、テストケース生成装置10は、プロセッサ11と記憶装置12とに代えて、処理回路15を備える。処理回路15は、テストケース生成装置10の各部の機能及び記憶装置12の機能を実現する専用の電子回路である。
各部の機能を1つの処理回路15で実現してもよいし、各部の機能を複数の処理回路15に分散させて実現してもよい。
変形例2として、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。つまり、テストケース生成装置10の各部のうち、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。
実施の形態2は、1つの組合せについて、テストケース36を生成可能か否かを複数回判定する点が実施の形態1と異なる。実施の形態2では、この異なる点を説明する。
図3及び図17を参照して、実施の形態2に係るテストケース生成装置10の動作を説明する。
実施の形態2に係るテストケース生成装置10の動作は、実施の形態2に係るテストケース生成方法に相当する。また、実施の形態2に係るテストケース生成装置10の動作は、実施の形態2に係るテストケース生成プログラムの処理に相当する。
テストケース生成部24は、図17に示すように、時間軸を対象システム30の処理を1回実行するための離散的な時間ステップに分割する。そして、対象パターンについての条件付実装物34を時間ステップの数だけ並べて1つの繰り返しシステム37を構成する。この際、繰り返しシステム37を構成する各対象システム30は、前の時間ステップの処理が終わった時点における内部状態を引き継ぐものとする。また、入力信号及び出力信号は、時間ステップ毎に異なるものとして扱う。
テストケース生成部24は、繰り返しシステム37について、対象パターンにおける入力条件及び出力条件のペアである入出力条件と到達点との少なくともいずれかを確認可能なテストケース36を生成可能か否かを、実施の形態1と同様に判定する。これにより、例えば、時間ステップ1ではテストケース36を生成できない場合でも、時間ステップ2ではテストケース36を生成できるといったことが起こり得る。
以上のように、実施の形態2に係るテストケース生成装置10は、繰り返しシステム37を構成した上で、テストケース36を生成可能か否かを判定する。これにより、実施の形態1よりも正確にテストケース36が生成可能か否かを判定することができる。
Claims (8)
- 対象システムの入力信号についての複数の入力条件と、前記対象システムの出力信号についての複数の出力条件と、ソフトウェアの構造に基づく試験手法によって処理が到達したことが確認される、前記対象システムにおける複数の到達点との組合せを示す組合せパターンを生成するパターン生成部と、
前記パターン生成部によって生成された前記組合せパターンが示す各組合せを対象パターンとして、前記対象パターンにおける前記入力条件及び前記出力条件のペアである入出力条件と前記到達点とを同時に確認可能な前記入力信号の値であるテストケースを生成可能か否かを判定することにより、前記複数の入力条件それぞれと、前記複数の出力条件それぞれと、前記複数の到達点それぞれとを確認可能な前記テストケースの組を特定するテストケース生成部と
を備えるテストケース生成装置。 - 前記テストケース生成部は、生成可能と判定された組合せから、前記複数の入力条件それぞれと、前記複数の出力条件それぞれと、前記複数の到達点それぞれとを確認可能な組合せについて前記テストケースを生成する
請求項1に記載のテストケース生成装置。 - 前記テストケース生成部は、ソフトウェアの構造に基づく試験手法である第1手法と、ソフトウェアの機能に基づく試験手法とソフトウェアの構造に基づく試験手法との組合せである第2手法と、前記第2手法よりも基準が厳しいソフトウェアの機能に基づく試験手法とソフトウェアの構造に基づく試験手法との組合せである第3手法とのそれぞれの手法に対して、前記対象パターンについて前記テストケースが生成可能か否かを判定することにより、前記入出力条件と前記到達点との少なくともいずれかを確認可能か否かを判定する
請求項1又は2に記載のテストケース生成装置。 - 前記テストケース生成部は、前記第1手法と前記第2手法と前記第3手法とのそれぞれの手法に対して、前記テストケースが生成可能と判定された組合せについて前記テストケースを生成する
請求項3に記載のテストケース生成装置。 - 前記テストケース生成部は、生成された前記テストケースを前記対象システムに入力して得られた値と、期待値とが一致するか否かを判定する
請求項4に記載のテストケース生成装置。 - 前記テストケース生成部は、前記第1手法に対して前記テストケースが生成不可な場合には、前記対象パターンを実行不能と判定し、前記第1手法に対して前記テストケースが生成可能であり、かつ、前記第2手法又は前記第3手法に対して前記テストケースが生成不可な場合には、前記対象パターンを前記対象システムの仕様の想定外と判定し、前記第1手法と前記第2手法と前記第3手法とに対して前記テストケースが生成可能な場合には、前記対象パターンを前記対象システムの仕様の範囲内と判定する
請求項3から5までのいずれか1項に記載のテストケース生成装置。 - 前記テストケース生成部は、前記対象システムが有する内部状態を保持したまま、前記対象システムの処理を複数回繰り返し実行する繰り返しシステムにおいて、前記入出力条件と前記到達点との少なくともいずれかを確認可能な前記テストケースを生成可能か否かを判定する
請求項1から6のいずれか1項に記載のテストケース生成装置。 - 対象システムの入力信号についての複数の入力条件と、前記対象システムの出力信号についての複数の出力条件と、ソフトウェアの構造に基づく試験手法によって処理が到達したことが確認される、前記対象システムにおける複数の到達点との組合せを示す組合せパターンを生成するパターン生成処理と、
前記パターン生成処理によって生成された前記組合せパターンが示す各組合せを対象パターンとして、前記対象パターンにおける前記入力条件及び前記出力条件のペアである入出力条件と前記到達点とを同時に確認可能な前記入力信号の値であるテストケースを生成可能か否かを判定することにより、前記複数の入力条件それぞれと、前記複数の出力条件それぞれと、前記複数の到達点それぞれとを確認可能な前記テストケースの組を特定するテストケース生成処理と
をコンピュータに実行させるテストケース生成プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/055486 WO2017145300A1 (ja) | 2016-02-24 | 2016-02-24 | テストケース生成装置及びテストケース生成プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6289778B2 true JP6289778B2 (ja) | 2018-03-07 |
JPWO2017145300A1 JPWO2017145300A1 (ja) | 2018-04-12 |
Family
ID=59684847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017558562A Active JP6289778B2 (ja) | 2016-02-24 | 2016-02-24 | テストケース生成装置及びテストケース生成プログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US20190018765A1 (ja) |
JP (1) | JP6289778B2 (ja) |
CN (1) | CN108701074A (ja) |
DE (1) | DE112016006297T5 (ja) |
WO (1) | WO2017145300A1 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019142266A1 (ja) | 2018-01-17 | 2019-07-25 | 三菱電機株式会社 | テストケース生成装置、テストケース生成方法およびテストケース生成プログラム |
JP7070328B2 (ja) * | 2018-10-25 | 2022-05-18 | 日本電信電話株式会社 | テストデータ生成装置、テストデータ生成方法及びプログラム |
CN109669436B (zh) * | 2018-12-06 | 2021-04-13 | 广州小鹏汽车科技有限公司 | 一种基于电动汽车的功能需求的测试用例生成方法和装置 |
WO2020194455A1 (ja) * | 2019-03-25 | 2020-10-01 | 三菱電機株式会社 | テストケース生成装置、テストケース生成方法、およびテストケース生成プログラム |
CN110597730B (zh) * | 2019-09-20 | 2023-08-22 | 中国工商银行股份有限公司 | 基于场景法的自动化测试用例生成方法及系统 |
CN111930613B (zh) * | 2020-07-14 | 2023-11-28 | 深圳市紫光同创电子有限公司 | 待测芯片的测试用例生成方法、装置、电子设备以及介质 |
CN111984540B (zh) * | 2020-08-27 | 2024-07-19 | 北京一仿科技有限公司 | 最小代价测试用例生成方法 |
CN112052177B (zh) * | 2020-09-14 | 2024-07-19 | 北京一仿科技有限公司 | 一种多值耦合信号的mc/dc测试用例集生成方法 |
CN112052176B (zh) * | 2020-09-14 | 2024-07-19 | 北京一仿科技有限公司 | 一种多值耦合逻辑中给定条件的覆盖性测试用例生成方法 |
JP2024048916A (ja) * | 2022-09-28 | 2024-04-09 | 株式会社オートネットワーク技術研究所 | 情報処理システム、情報処理方法およびコンピュータプログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008299502A (ja) * | 2007-05-30 | 2008-12-11 | Denso Corp | テストケース妥当性自動検証プログラムおよびテストケース妥当性自動検証結果表示方法 |
JP2011028313A (ja) * | 2009-07-21 | 2011-02-10 | Toyota Motor Corp | 検証項目自動生成装置 |
JP2012185539A (ja) * | 2011-03-03 | 2012-09-27 | Toyota Motor Corp | ソフトウェア検証支援装置、ソフトウェア検証支援方法及びソフトウェア検証支援プログラム |
JP2015204065A (ja) * | 2014-04-16 | 2015-11-16 | 株式会社日立製作所 | テストケース生成装置及びテストケース生成方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5778169A (en) * | 1995-08-07 | 1998-07-07 | Synopsys, Inc. | Computer system having improved regression testing |
US5748878A (en) * | 1995-09-11 | 1998-05-05 | Applied Microsystems, Inc. | Method and apparatus for analyzing software executed in embedded systems |
US7028290B2 (en) * | 2002-04-29 | 2006-04-11 | Microsoft Corporation | Method and apparatus for prioritizing software tests |
US20040031019A1 (en) * | 2002-05-20 | 2004-02-12 | Richard Lamanna | Debugger for a graphical programming environment |
US7844350B2 (en) * | 2006-11-22 | 2010-11-30 | Honeywell International Inc. | Testing of control strategies in a control system controlling a process control plant |
JP4924188B2 (ja) | 2007-04-27 | 2012-04-25 | トヨタ自動車株式会社 | クロス検証装置 |
CN102176200A (zh) * | 2009-09-25 | 2011-09-07 | 南京航空航天大学 | 一种软件测试用例自动生成方法 |
CN101814053B (zh) * | 2010-03-29 | 2013-03-13 | 中国人民解放军信息工程大学 | 一种基于功能模型的二进制代码漏洞发现方法 |
JP2013008277A (ja) * | 2011-06-27 | 2013-01-10 | Toshiba Corp | カバレッジ測定装置、方法およびプログラム |
JP5523526B2 (ja) * | 2012-09-11 | 2014-06-18 | 日本電信電話株式会社 | テストパス中に複数の参照アクセスをもつテスト用のデータ生成装置及び方法及びプログラム |
JP5894954B2 (ja) * | 2013-03-22 | 2016-03-30 | 株式会社日立製作所 | テストケース生成方法、テストケース生成装置およびプログラム |
CN105095060A (zh) * | 2014-04-15 | 2015-11-25 | 富士通株式会社 | 利用规则集网络生成测试用例的装置和方法 |
CN103995781B (zh) * | 2014-06-10 | 2017-08-25 | 浪潮通用软件有限公司 | 一种基于模型的构件测试用例生成方法 |
CN104991863B (zh) * | 2015-07-14 | 2017-11-03 | 株洲南车时代电气股份有限公司 | 一种基于功能块图测试模型自动生成测试用例的方法 |
-
2016
- 2016-02-24 CN CN201680082137.3A patent/CN108701074A/zh active Pending
- 2016-02-24 DE DE112016006297.4T patent/DE112016006297T5/de active Pending
- 2016-02-24 JP JP2017558562A patent/JP6289778B2/ja active Active
- 2016-02-24 US US16/067,183 patent/US20190018765A1/en not_active Abandoned
- 2016-02-24 WO PCT/JP2016/055486 patent/WO2017145300A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008299502A (ja) * | 2007-05-30 | 2008-12-11 | Denso Corp | テストケース妥当性自動検証プログラムおよびテストケース妥当性自動検証結果表示方法 |
JP2011028313A (ja) * | 2009-07-21 | 2011-02-10 | Toyota Motor Corp | 検証項目自動生成装置 |
JP2012185539A (ja) * | 2011-03-03 | 2012-09-27 | Toyota Motor Corp | ソフトウェア検証支援装置、ソフトウェア検証支援方法及びソフトウェア検証支援プログラム |
JP2015204065A (ja) * | 2014-04-16 | 2015-11-16 | 株式会社日立製作所 | テストケース生成装置及びテストケース生成方法 |
Non-Patent Citations (1)
Title |
---|
松尾谷 徹: "難しいテストを簡単に CFD法の極意 前編", ソフトウェア・テストPRESS, vol. 第8巻, JPN6016010919, 25 February 2009 (2009-02-25), JP, pages 98 - 106 * |
Also Published As
Publication number | Publication date |
---|---|
US20190018765A1 (en) | 2019-01-17 |
DE112016006297T5 (de) | 2018-10-31 |
JPWO2017145300A1 (ja) | 2018-04-12 |
CN108701074A (zh) | 2018-10-23 |
WO2017145300A1 (ja) | 2017-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6289778B2 (ja) | テストケース生成装置及びテストケース生成プログラム | |
US9990458B2 (en) | Generic design rule checking (DRC) test case extraction | |
US20170134175A1 (en) | Tolerant of absolute offsets physical unclonable function device | |
US11954015B2 (en) | Software environment for control engine debug, test, calibration and tuning | |
US8875064B2 (en) | Automated design rule checking (DRC) test case generation | |
US20170271027A1 (en) | Methods and systems of testing interfaces of computer storage for storage vulnerabilities | |
US10970079B2 (en) | Parallel dispatching of multi-operation instructions in a multi-slice computer processor | |
US20150074646A1 (en) | Adopting an existing automation script to a new framework | |
US11194705B2 (en) | Automatically introducing register dependencies to tests | |
US20170261354A1 (en) | Methods and systems for performing test and calibration of integrated sensors | |
US20140143521A1 (en) | Instruction swap for patching problematic instructions in a microprocessor | |
US8650546B2 (en) | Static analysis based on observed string values during execution of a computer-based software application | |
US9043584B2 (en) | Generating hardware events via the instruction stream for microprocessor verification | |
US10223225B2 (en) | Testing speculative instruction execution with test cases placed in memory segments with non-naturally aligned data boundaries | |
US9218273B2 (en) | Automatic generation of a resource reconfiguring test | |
CN107506623B (zh) | 应用程序的加固方法及装置、计算设备、计算机存储介质 | |
US20140172344A1 (en) | Method, system and apparatus for testing multiple identical components of multi-component integrated circuits | |
CN106484945B (zh) | 用于分析逻辑电路的方法 | |
CN111176663B (zh) | 应用程序的数据处理方法、装置、设备及存储介质 | |
US8627273B2 (en) | Model checking of liveness property in a phase abstracted model | |
CN111295658B (zh) | 模拟装置、模拟方法和计算机能读取的存储介质 | |
JP6813513B2 (ja) | プロセッサシステムのプログラムカウンタ構造を保護する方法及び装置並びに中断要求の処理を監視する方法及び装置 | |
JPWO2020194455A1 (ja) | テストケース生成装置、テストケース生成方法、およびテストケース生成プログラム | |
US10289808B2 (en) | Method and system for secure data processing | |
Godunov et al. | Baget real-time operating system family (features, comparison, and future development) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171108 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20171108 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20171121 |
|
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: 20180109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180206 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6289778 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |