JP2016206727A - 検査パターン自動生成装置 - Google Patents

検査パターン自動生成装置 Download PDF

Info

Publication number
JP2016206727A
JP2016206727A JP2015083671A JP2015083671A JP2016206727A JP 2016206727 A JP2016206727 A JP 2016206727A JP 2015083671 A JP2015083671 A JP 2015083671A JP 2015083671 A JP2015083671 A JP 2015083671A JP 2016206727 A JP2016206727 A JP 2016206727A
Authority
JP
Japan
Prior art keywords
inspection
inspection pattern
pattern
past
automatic 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.)
Pending
Application number
JP2015083671A
Other languages
English (en)
Inventor
裕規 中野
Hiroki Nakano
裕規 中野
靖志 安藤
Yasushi Ando
靖志 安藤
伸和 水野
Nobukazu Mizuno
伸和 水野
周平 石川
Shuhei Ishikawa
周平 石川
正穂 石田
Masaho Ishida
正穂 石田
忠芳 坂本
Tadayoshi Sakamoto
忠芳 坂本
尚幸 宮田
Naoyuki Miyata
尚幸 宮田
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2015083671A priority Critical patent/JP2016206727A/ja
Publication of JP2016206727A publication Critical patent/JP2016206727A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】過去の検査パターンを利用して新たな検査パターンを自動生成する場合に、過去の検査パターンから効率的に利用する検査パターンを抽出することが可能な検査パターン自動生成装置を提供すること。
【解決手段】過去に作成された複数の検査パターンから、検査対象であるソフトウェアに含まれる境界値の前後1LSB範囲内で前記境界値に対する境界値検査を実行可能であること、及び前記ソフトウェアの入力から出力までの経路のうち前記複数の検査パターンの通過率が所定割合以下である経路を通過することの少なくとも一方を満足する検査パターンを抽出する抽出部と、前記抽出部により抽出される検査パターンに基づき前記ソフトウェアの単体検査を実行する検査パターンを自動生成する自動生成部を備える。
【選択図】図3

Description

本発明は、ソフトウェアの単体検査(ソフトウェアテスト)における検査パターンを自動生成する検査パターン自動生成装置に関する。
従来、過去に作成したテスト仕様を利用して、ソフトウェアプログラムのテスト仕様を作成するテスト仕様作成支援装置が知られている。(例えば、特許文献1)。
特開2012−226652号公報
ところで、上述した特許文献1のテスト仕様と同様、複数のテスト仕様(テストケース)の集合である検査パターンについても過去に作成した検査パターンを利用して不足する分を自動生成する等によりソフトウェアの単体検査の効率化を図ることができる。
しかしながら、特許文献1には、テスト仕様を作成する際に過去のテスト仕様の何れを利用するかについての開示がない。そのため、例えば、過去の検査パターンが比較的多く存在する場合、利用する過去の検査パターンの抽出に時間が掛かってしまい、結果として、効率化を図ることができなくなるおそれがある。
そこで、上記課題に鑑み、過去の検査パターンを利用して新たな検査パターンを自動生成する場合に、過去の検査パターンから効率的に利用する検査パターンを抽出することが可能な検査パターン自動生成装置を提供することを目的とする。
上記目的を達成するため、一実施形態において、検査パターン自動生成装置は、
過去に作成された複数の検査パターンから、検査対象であるソフトウェアに含まれる境界値の前後1LSB範囲内で前記境界値に対する境界値検査を実行可能であること、及び前記ソフトウェアの入力から出力までの経路のうち前記複数の検査パターンの通過率が所定割合以下である経路を通過することの少なくとも一方を満足する検査パターンを抽出する抽出部と、
前記抽出部により抽出される検査パターンに基づき前記ソフトウェアの単体検査を実行する検査パターンを自動生成する自動生成部を備える。
本実施の形態によれば、過去の検査パターンを利用して新たな検査パターンを自動生成する場合に、過去の検査パターンから効率的に利用する検査パターンを抽出することが可能な検査パターン自動生成装置を提供することができる。
本実施形態に係る検査パターン自動生成装置の構成の一例を示すブロック図である。 本実施形態に係る検査パターン自動生成装置による検査パターン自動生成処理の流れを説明するブロック図である。 過去に作成された検査パターンから有用な検査パターンを抽出する抽出条件を説明する図である。
以下、図面を参照して発明を実施するための形態について説明する。
図1は、本実施形態に係る検査パターン自動生成装置1の構成の一例を示すブロック図である。
本実施形態に係る検査パターン自動生成装置1は、車両等の各種制御装置のモデルベース開発において、制御の処理動作を記述したモデルと、オブジェクト(ECU等に実装される機械コード)との一致性を確認する検査パターンを自動生成する。検査パターン自動生成装置1により自動生成される検査パターンを用いて、ECU等に実装された機械コード(ソフトウェア)がモデルの記述通り(要求通り)の動作をするか否かの単体検査(ソフトウェアテスト)を実行することができる。以下、検査を行う対象であるソフトウェアを検査対象ソフトウェアと称する。
なお、検査パターンは、テストケース(検査仕様)の集合であり、予め定められる検査観点(例えば、命令、条件、経路等に関する網羅性や境界値検査の可否等)を満足するように自動生成される。
検査パターン自動生成装置1は、例えば、コンピュータ等により実現され、図1に示すように、CPU、RAM、ROM、I/O等を含む処理部10と、過去に作成された検査パターンを記憶する記憶部20を含む。
なお、記憶部20は、コンピュータの内部に設けられる記憶手段(内部メモリ等)であってもよいし、コンピュータの外部に設けられる記憶手段であってもよい。
一般的に、ソフトウェア開発では、差分開発(従来のソフトウェアをベースに変更、追加、削除を行う開発)が行われる。そのため、検査パターン自動生成装置1では、処理部10が記憶部20に格納される過去に作成された検査パターン(過去検査パターン)に基づき新たな検査パターン(追加検査パターン)を自動生成する。以下、図2を参照しつつ、処理部10により実行される検査パターン自動生成処理について説明する。
図2は、本実施形態に係る検査パターン自動生成装置1による検査パターン自動生成処理の流れを説明するブロック図である。
なお、図中、点線部分が検査パターン自動生成装置1による処理を表す部分である。また、本実施形態では、検査パターン自動生成装置1が実装されるコンピュータ(即ち、処理部10)において、検査自体も実行される前提で説明を行う。
ステップS1にて、処理部10は、複数存在する過去検査パターンDBのそれぞれを検査対象ソフトウェアに対応するモデルに入力して、検査観点を満足するか否かをチェックする。そして、処理部10は、各過去検査パターンDBと、満足する検査観点とを紐づけて、内部メモリ等に記憶させる。
過去検査パターンDBのうち、検査観点を全て満足するものが存在する場合、新たな検査パターンを自動生成する必要はない。そのため、処理部10は、かかる流用可能な検査パターン(流用検査パターン)O1で検査対象ソフトウェアの単体検査を実行する(ステップS5)。
一方、処理部10は、過去検査パターンDBのうち、検査観点を全て満足するものが存在しない場合、ステップS2に進む。
ステップS2にて、処理部10は、追加検査パターンO2を自動生成する際のベースとなるベース検査パターンM2の候補である有用な検査パターン(有用検査パターン)M1の抽出を実行する。具体的には、以下に示す(1)、(2)の条件の何れかを満足する過去検査パターンDBを有用検査パターンM1として抽出する。各条件について、図3(過去検査パターンDBから有用検査パターンM1を抽出する抽出条件を説明する図)を参照しつつ、説明する。
(1)検査対象ソフトウェア(モデル)に含まれる境界値の前後1LSB(Least Significant Bit:最下位ビット)範囲内でかかる境界値に対する境界値検査が実行可能である。
ソフトウェアの単体検査における検査観点として、境界値における動作の妥当性を確認可能であるか否かがある。例えば、モデル内のブロック要素に入力される値が所定閾値以上である場合と所定閾値より小さい場合とで異なる出力を行う場合、かかるブロック要素が境界値(所定閾値)及びその前後の値の入力に対して適切な出力を行うか否かを検査する必要がある(境界値検査)。かかる境界値検査を行う場合、図3(a)に示すように、上限値から下限値の範囲で、境界値A、境界値から1LSBを減じた値B、境界値に1LSBを加えた値Cの3値に対する動作を確認する必要がある。よって、検査対象ソフトウェアに含まれる境界値の前後1LSB範囲内でかかる境界値に対する境界値検査を実行可能であれば、かかる過去検査パターンDBを有用な検査パターンであるとして抽出対象にする。
なお、検査対象ソフトウェアに複数の境界値が含まれる場合、少なくとも1つの境界値に対する境界値検査が実行可能であれば、有用検査パターンM1として抽出してよい。また、検査対象ソフトウェアに複数の境界値が含まれる場合、全ての境界値のうち一定割合以上の境界値に対する境界値検査が実行可能である場合に有用検査パターンM1として抽出してもよい。また、境界値は、上限値、下限値を含む場合がある。例えば、上限値から下限値の範囲外の値の入力に対してモデル内のブロック要素が無効である旨の出力をする場合、かかる上限値、下限値も境界値検査の対象になる。
(2)検査対象ソフトウェア(モデル)の入力から出力までの経路のうち、過去検査パターンDBの通過率が所定割合Th以下である経路を通過する。
ソフトウェアの単体検査における検査観点として経路網羅性(検査パターンにより入力から出力までの経路の全てを網羅できるか否か)がある。例えば、図3(b)に示すような検査対象ソフトウェアに対応するモデルがある場合、比較的多くの過去検査パターンDBが通過する経路(図中太い矢印)もあれば、ごく一部の過去検査パターンDBしか通過しない経路(図中細い矢印)も有り得る。経路網羅性の観点から言えば、全ての過去検査パターンDBのうち通過する割合が比較的低い経路を通過する過去検査パターンDBが有用であるため、このような過去検査パターンDBを抽出対象にする。具体的には、全ての過去検査パターンDBの通過率(全ての過去検査パターンDBに対する通過する過去検査パターンDBの割合)が所定割合Th以下である経路を通過する過去検査パターンDBを有用検査パターンM1として抽出する。
なお、所定割合Thは、実験やシミュレーション等により適宜決定される適合値である。
ステップS3にて、処理部10は、有用検査パターンM1の中から追加検査パターンO2を自動生成する上でのベースになるベース検査パターンM2を探索する。ベース検査パターンM2の探索においては、既知の探索アルゴリズム(例えば、遺伝的アルゴリズム等)が適宜採用されてよい。
ステップS4にて、処理部10は、ベース検査パターンM2をベースに検査観点を満足するために不足するテストケースを追加する等により追加検査パターンO2の自動生成を実行する。
なお、追加検査パターンO2の自動生成処理は、例えば、既知の市販プログラム等を適用することで実行することができる。
ステップS5にて、処理部10は、自動生成した追加検査パターンO2を用いて、検査対象プログラムの単体検査を実行する。
このように、本実施形態に係る検査パターン自動生成装置1は、過去に作成された検査パターンから有用な検査パターンを抽出し、かかる有用な検査パターンから新たに自動生成する検査パターンのベースとなる検査パターンを探索する。具体的には、過去に作成された検査パターンのうち、境界値検査が可能であること、及び経路網羅性を満足することという2つの検査観点において有用な検査パターンを抽出する。これにより、過去に作成された検査パターンを利用して新たな検査パターンを自動生成する場合に、過去に作成された検査パターンから効率的に利用する検査パターンを抽出することができる。
なお、本実施形態では、上記(1)、(2)の条件の何れか一方を満足する場合に過去検査パターンDBを有用検査パターンM1として抽出するが、(1)、(2)の双方を満足する場合に有用検査パターンM1として抽出する構成であってもよい。
以上、本発明を実施するための形態について詳述したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
1 検査パターン自動生成装置
10 処理部
20 記憶部

Claims (1)

  1. 過去に作成された複数の検査パターンから、検査対象であるソフトウェアに含まれる境界値の前後1LSB範囲内で前記境界値に対する境界値検査を実行可能であること、及び前記ソフトウェアの入力から出力までの経路のうち前記複数の検査パターンの通過率が所定割合以下である経路を通過することの少なくとも一方を満足する検査パターンを抽出する抽出部と、
    前記抽出部により抽出される検査パターンに基づき前記ソフトウェアの単体検査を実行する検査パターンを自動生成する自動生成部を備える、
    検査パターン自動生成装置。
JP2015083671A 2015-04-15 2015-04-15 検査パターン自動生成装置 Pending JP2016206727A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015083671A JP2016206727A (ja) 2015-04-15 2015-04-15 検査パターン自動生成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015083671A JP2016206727A (ja) 2015-04-15 2015-04-15 検査パターン自動生成装置

Publications (1)

Publication Number Publication Date
JP2016206727A true JP2016206727A (ja) 2016-12-08

Family

ID=57490013

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015083671A Pending JP2016206727A (ja) 2015-04-15 2015-04-15 検査パターン自動生成装置

Country Status (1)

Country Link
JP (1) JP2016206727A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11994977B2 (en) 2019-03-25 2024-05-28 Mitsubishi Electric Corporation Test case generation apparatus, test case generation method, and computer readable medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11994977B2 (en) 2019-03-25 2024-05-28 Mitsubishi Electric Corporation Test case generation apparatus, test case generation method, and computer readable medium

Similar Documents

Publication Publication Date Title
US9122836B2 (en) Recognition of template patterns with mask information
EP2991004B1 (en) Method and apparatus for labeling training samples
US10817637B2 (en) System and method of designing integrated circuit by considering local layout effect
US9659125B2 (en) Computer implemented system and method for generating a layout of a cell defining a circuit component
US9898567B2 (en) Automatic layout modification tool with non-uniform grids
US7231626B2 (en) Method of implementing an engineering change order in an integrated circuit design by windows
US20140068533A1 (en) Information theoretic subgraph caching
CN108304614B (zh) 集成电路版图引脚的设置方法及装置
JP6289748B2 (ja) 制御ロジック図解析装置および制御ロジック図解析方法
JP2016206727A (ja) 検査パターン自動生成装置
CN105095535A (zh) 一种工艺开发包中参数化单元的drc验证方法
JP6789844B2 (ja) 類似関数抽出装置および類似関数抽出プログラム
CN116738925A (zh) 一种fpga详细布局方法及系统
JP7156543B2 (ja) パターン抽出およびルール生成装置、方法およびプログラム
CN116484947A (zh) 算子的自动生成方法、装置、设备及介质
US8898597B2 (en) Etch failure prediction based on wafer resist top loss
JP2006259820A (ja) 故障検出改善装置、故障検出改善プログラム、故障検出改善方法
KR102620871B1 (ko) 번역 기반 문장 데이터 변형과 딥러닝 보정을 이용한 문장 분류 데이터 증강 방법 및 장치
JP6547345B2 (ja) テストケース生成プログラム、テストケース生成方法およびテストケース生成装置
US8869077B1 (en) Selection of replacement patterns for reducing manufacturing hotspots and constraint violations of IC designs
JP2016051367A (ja) データ解析装置、データ解析方法、および、プログラム。
KR102160772B1 (ko) 메모리 수리 장치 및 그 방법
JP2013206310A (ja) モデル検査装置、モデル検査方法、およびプログラム
US20150261904A1 (en) Pattern data generation method, pattern data generation device, and pattern data generation program
JP5971193B2 (ja) ソフトウェアの開発支援装置、開発支援方法およびプログラム