JP7084505B2 - 検証装置および検証方法 - Google Patents
検証装置および検証方法 Download PDFInfo
- Publication number
- JP7084505B2 JP7084505B2 JP2020572155A JP2020572155A JP7084505B2 JP 7084505 B2 JP7084505 B2 JP 7084505B2 JP 2020572155 A JP2020572155 A JP 2020572155A JP 2020572155 A JP2020572155 A JP 2020572155A JP 7084505 B2 JP7084505 B2 JP 7084505B2
- Authority
- JP
- Japan
- Prior art keywords
- test
- software program
- scenario
- phase
- snapshot
- 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
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/3664—Environments for testing or debugging software
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に示すように、仮想計算機管理計算機200と、テスト実行制御計算機100とを有して構成されている。
仮想計算機240は、ゲストOS250を有し、このゲストOS250配下でマイコンモデル270を含むシミュレータ260を実行する機能を具備することで、テスト対象であるソフトウェアプログラムが搭載されるマイクロコンピュータを擬似し、ソフトウェアプログラムを検証するものである。また、仮想計算機管理計算機200は、ホストOS210を有し、このホストOS210の配下で仮想化ソフトウェア220を実行し、特定のタイミングで仮想計算機240のプロセッサとなるCPU(Central Processing Unit)状態と、仮想計算機240のメモリ状態と、仮想計算機240の記憶装置の状態とを含めた仮想計算機の状態をスナップショットとしてスナップショット履歴230に保存する機能と、スナップショット履歴230に記録された情報を用いて仮想計算機240をある特定の状態に戻す機能を有する。このように、仮想計算機240のCPU状態と、仮想計算機240のメモリ状態と、仮想計算機240の記憶装置の状態とを含めた仮想計算機の状態をスナップショットとしてスナップショット履歴230に保存する機能を有することにより、スナップショットによりマイクロコンピュータの状態を再現することができる。また、一例として、仮想計算機240のプロセッサの状態が、プロセッサのレジスタに格納されているデータであり、仮想計算機240のメモリの状態が、メモリの全領域に格納されているデータである。その場合であれば、プロセッサのレジスタに格納されているデータとメモリの全領域のデータとをスナップショットとして記録するので、マイクロコンピュータの状態を再現することができる。
図2は、図1に示したシミュレータ260の構成を示す図である。
まず、図1に示したシミュレーションシステムにおけるテスト全体の処理について説明する。
図5は、図1に示したシミュレーションシステムにおけるテストシナリオの分割方法とツリー化を説明するための図である。
図6は、図1に示したテスト実行制御部120の具体的な処理を説明するためのフローチャートである。
テスト実行制御部120は、処理開始後(F100)、まず、テストをスキップ(省略)するかどうかを判定する(F110)。
スキップ判定においては、テスト実行制御部120はまず、テストスキップのラベルを0にクリアする(F111)。
次に、例えば、変更されたソフトウェアプログラムの検証を行う場合、過去にそのソフトウェアプログラムについてテストを行ったかどうかの実績を確認し(F112)、テストの実績がある場合は、旧ROMロードファイル320を参照し、その前回のテスト結果が良好であったかどうかを判断する(F113)。ここで、テスト実行制御計算機100のロードファイル比較処理部110は、新ROMロードファイル310および旧ROMロードファイル320を参照し、変更前のソフトウェアプログラムと変更後のソフトウェアプログラムとで値が一致するアクセス先アドレスを抽出して変更無しアドレス情報としてROM一致アドレス130のファイルに記録しておく。
Claims (6)
- テスト対象であるソフトウェアプログラムが搭載されるマイクロコンピュータを模擬し、前記ソフトウェアプログラムを検証する仮想計算機と、
前記ソフトウェアプログラムを検証するための複数のテストシナリオを前記仮想計算機に実行させるテスト実行制御計算機とを有し、
前記テスト実行制御計算機は、前記複数のテストシナリオの互いに共通する部分をフェーズとして切り出すように前記テストシナリオをフェーズに分割し、共通するフェーズに続く互いに共通しないフェーズを前記共通するフェーズから枝分かれさせるように前記複数のテストシナリオをツリー化したシナリオ分割情報を記憶しておき、前記シナリオ分割情報のツリー構造に従って、前記共通するフェーズを実行させた後に前記仮想計算機の状態をスナップショットとして保存させるように第1のテストシナリオを前記仮想計算機に実行させ、前記スナップショットにより前記共通するフェーズを実行した状態を再現させた後に前記共通しないフェーズを実行させるように第2のテストシナリオを前記仮想計算機に実行させる、
検証装置において、
前記テスト実行制御計算機は、変更された前記ソフトウェアプログラムの検証を行うとき、変更前ソフトウェアプログラムと変更後ソフトウェアプログラムとで値が一致するアクセス先アドレスを抽出して変更無しアドレス情報として記録し、前記第2のテストシナリオにおける前記共通するフェーズが、当該共通するフェーズにて前記変更前ソフトウェアプログラムを検証したテスト結果が良好であり、かつ、前記テストシナリオの先頭から当該共通するフェーズまでのアクセス先アドレスが前記変更無しアドレス情報に含まれているものであるとき、前記共通するフェーズの実行後の前記仮想計算機の状態を前記スナップショットにより再現させる、
ことを特徴とする検証装置。 - 前記テスト実行制御計算機は、前記テストシナリオの各フェーズについてのテスト結果が良好であり、前記シナリオ分割情報のツリー構造において、該フェーズに続くフェーズがあれば、該フェーズを前記仮想計算機に実行させた後の前記仮想計算機の状態をスナップショットとして保存するとともに、前記テストシナリオの先頭から該フェーズまでに前記仮想計算機がアクセスしたアクセス先アドレスを保存しておき、前記ソフトウェアプログラムが変更されたとき、該アクセス先アドレスを前記変更無しアドレス情報を生成するのに利用する、
請求項1に記載の検証装置。 - 前記テスト実行制御計算機は、前記スナップショットとして、前記仮想計算機のプロセッサの状態と、前記仮想計算機のメモリの状態と、を、前記仮想計算機に保存させる、
請求項1に記載の検証装置。 - 前記仮想計算機のプロセッサの状態は、前記プロセッサのレジスタに格納されているデータであり、
前記仮想計算機のメモリの状態は、前記メモリの全領域に格納されているデータである、
請求項3に記載の検証装置。 - 前記マイクロコンピュータが、自動車に搭載される車載電子制御装置であり、
前記仮想計算機は、前記マイクロコンピュータを疑似するモデルと、前記マイクロコンピュータに対して前記自動車を模擬するシミュレータとを実行する、
請求項1に記載の検証装置。 - テスト対象であるソフトウェアプログラムが搭載されるマイクロコンピュータを模擬する仮想計算機にて複数のテストシナリオを実行させることで前記ソフトウェアプログラムを検証する検証方法であって、
前記複数のテストシナリオを前記仮想計算機に実行させるテスト実行制御計算機が、前記複数のテストシナリオの互いに共通する部分をフェーズとして切り出すように前記テストシナリオをフェーズに分割し、共通するフェーズに続く互いに共通しないフェーズを前記共通するフェーズから枝分かれさせるように前記複数のテストシナリオをツリー化したシナリオ分割情報を記憶し、
前記テスト実行制御計算機が、前記シナリオ分割情報のツリー構造に従って、前記共通するフェーズを実行させた後に前記仮想計算機の状態をスナップショットとして保存させるように第1のテストシナリオを前記仮想計算機に実行させ、
前記スナップショットにより前記共通するフェーズを実行した状態を再現させた後に前記共通しないフェーズを実行させるように第2のテストシナリオを前記仮想計算機に実行させる、検証方法において、
前記テスト実行制御計算機が、変更された前記ソフトウェアプログラムの検証を行うとき、変更前ソフトウェアプログラムと変更後ソフトウェアプログラムとで値が一致するアクセス先アドレスを抽出して変更無しアドレス情報として記録し、前記第2のテストシナリオにおける前記共通するフェーズが、当該共通するフェーズにて前記変更前ソフトウェアプログラムを検証したテスト結果が良好であり、かつ、前記テストシナリオの先頭から当該共通するフェーズまでのアクセス先アドレスが前記変更無しアドレス情報に含まれているものであるとき、前記共通するフェーズの実行後の前記仮想計算機の状態を前記スナップショットにより再現させる、
ことを特徴とする検証方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019025538 | 2019-02-15 | ||
JP2019025538 | 2019-02-15 | ||
PCT/JP2020/003316 WO2020166345A1 (ja) | 2019-02-15 | 2020-01-30 | 検証装置および検証方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2020166345A1 JPWO2020166345A1 (ja) | 2021-09-30 |
JP7084505B2 true JP7084505B2 (ja) | 2022-06-14 |
Family
ID=72044940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020572155A Active JP7084505B2 (ja) | 2019-02-15 | 2020-01-30 | 検証装置および検証方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11487649B2 (ja) |
JP (1) | JP7084505B2 (ja) |
WO (1) | WO2020166345A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000231495A (ja) | 1999-02-10 | 2000-08-22 | Nec Corp | 仮想マシン |
JP2007018254A (ja) | 2005-07-07 | 2007-01-25 | Toshiba Corp | 言語処理装置 |
JP2013120440A (ja) | 2011-12-06 | 2013-06-17 | Nec Corp | テストシステム、テスト方法、及び、プログラム |
JP2017059210A (ja) | 2015-09-14 | 2017-03-23 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | ゲートウェイ装置、ファームウェア更新方法及び制御プログラム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010112974A2 (en) * | 2009-03-31 | 2010-10-07 | Freescale Semiconductor, Inc. | System for tree sequence testing of a device and method for tree sequence testing of a device in a test framework architecture |
US11099870B1 (en) * | 2018-07-25 | 2021-08-24 | Amazon Technologies, Inc. | Reducing execution times in an on-demand network code execution system using saved machine states |
DE102019103445A1 (de) * | 2019-02-12 | 2020-08-13 | Dspace Digital Signal Processing And Control Engineering Gmbh | Verfahren zur Lizenzierung einer Toolkette |
-
2020
- 2020-01-30 JP JP2020572155A patent/JP7084505B2/ja active Active
- 2020-01-30 WO PCT/JP2020/003316 patent/WO2020166345A1/ja active Application Filing
- 2020-01-30 US US17/293,526 patent/US11487649B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000231495A (ja) | 1999-02-10 | 2000-08-22 | Nec Corp | 仮想マシン |
JP2007018254A (ja) | 2005-07-07 | 2007-01-25 | Toshiba Corp | 言語処理装置 |
JP2013120440A (ja) | 2011-12-06 | 2013-06-17 | Nec Corp | テストシステム、テスト方法、及び、プログラム |
JP2017059210A (ja) | 2015-09-14 | 2017-03-23 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | ゲートウェイ装置、ファームウェア更新方法及び制御プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20210406160A1 (en) | 2021-12-30 |
US11487649B2 (en) | 2022-11-01 |
JPWO2020166345A1 (ja) | 2021-09-30 |
WO2020166345A1 (ja) | 2020-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4266226B2 (ja) | 選択的に有効にされるチェッカーを用いた設計検証システムおよび方法 | |
US10423571B2 (en) | Method for configuring a real or virtual electronic control unit | |
JP2014203314A (ja) | Ecuシミュレーション装置 | |
US6285914B1 (en) | Verification method by means of comparing internal state traces | |
US10997344B2 (en) | ECU simulation device | |
US10592703B1 (en) | Method and system for processing verification tests for testing a design under test | |
US7093218B2 (en) | Incremental, assertion-based design verification | |
US7454726B2 (en) | Technique for generating input stimulus to cover properties not covered in random simulation | |
US8438000B2 (en) | Dynamic generation of tests | |
US11036906B1 (en) | Method and apparatus to accelerate verification signoff by selective re-use of integrated coverage models | |
JP7084505B2 (ja) | 検証装置および検証方法 | |
CN117094269A (zh) | 一种验证方法、装置、电子设备及可读存储介质 | |
JP2001051025A (ja) | 半導体試験用プログラムデバッグ装置 | |
Lauber et al. | Virtual test method for complex and variant-rich automotive systems | |
US7051301B2 (en) | System and method for building a test case including a summary of instructions | |
CN113254084A (zh) | 一种基于处理器流水线分析的时间和时序校准方法及装置 | |
JP5387521B2 (ja) | 論理検証シナリオ生成装置、及び、論理検証シナリオ生成プログラム | |
JPH07253909A (ja) | マイクロプログラム検証方法 | |
CN117313650B (zh) | 一种芯片测试验证方法及其应用装置 | |
US20240037312A1 (en) | Selective scan insertion for rapid scan design verification | |
Francois | New approaches in virtualization of ECU software development | |
US7526703B2 (en) | Method of test pattern generation in IC design simulation system | |
JP4893028B2 (ja) | チップセットのエミュレーション装置および方法 | |
CN117931641A (zh) | 测试方法、装置、计算设备及存储介质 | |
CN116245053A (zh) | 动态加载的仿真验证方法及其系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210422 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220301 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220418 |
|
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: 20220510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220602 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7084505 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |