JP5526572B2 - 試験装置および試験方法 - Google Patents
試験装置および試験方法 Download PDFInfo
- Publication number
- JP5526572B2 JP5526572B2 JP2009070427A JP2009070427A JP5526572B2 JP 5526572 B2 JP5526572 B2 JP 5526572B2 JP 2009070427 A JP2009070427 A JP 2009070427A JP 2009070427 A JP2009070427 A JP 2009070427A JP 5526572 B2 JP5526572 B2 JP 5526572B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- target application
- test
- layer
- test target
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
・試験装置の構成
図1は、本発明の実施の形態1におけるブロック図である。図1に示すように、試験装置1は、アプリケーション層2およびドライバ層3を備えている。アプリケーション層2は、試験対象アプリケーション4および疑似データ作成部5を備えている。ドライバ層3は、疑似データ応答部6を備えている。試験装置1は、試験対象アプリケーション4とハードウェア層7との間でドライバ層3を介して授受されるデータの入出力処理を評価する装置である。
図2は、本発明の実施の形態1におけるシーケンス図である。図2に示すように、アプリケーション層2において、疑似データ作成部5は、ハードウェア層7からドライバ層3に渡されるデータの疑似データを作成する(ステップS1)。そして、疑似データ作成部5は、疑似データをドライバ層3へ送信する(ステップS2)。ドライバ層3では、アプリケーション層2から疑似データを受け取り、その疑似データを、ハードウェア層7から渡されたデータとして試験対象アプリケーション4へ返す(ステップS3)。
・試験装置のハードウェア構成
図3は、本発明の実施の形態2におけるハードウェア構成を示す図である。図3に示すように、試験装置は、例えばコンピュータ本体11、入力装置12および出力装置13を備えている。試験装置は、例えば、図示省略したルータやモデムを介してLocal Area Network(LAN、構内通信網)やWide Area Network(WAN、広域通信網)やインターネットなどのネットワーク14に接続可能となっている。
図4は、本発明の実施の形態2におけるブロック図である。図4に示すように、試験装置31は、アプリケーション層32およびドライバ層33を備えている。アプリケーション層32は、試験対象アプリケーション34および疑似データ作成アプリケーション35を備えている。疑似データ作成アプリケーション35は、疑似データ作成部に相当する。ドライバ層33は、判定部36、受付部37、ユーザデータ処理部38、制御データ処理部39、受信バッファ40および刈り取り処理部41を備えている。
図5は、本発明の実施の形態2における通常の送信データのフォーマットを示す図である。図5に示すように、通常の送信データ51は、例えば送信データ種別の情報(例えば「SEND_1・・・」)を格納する送信データ種別フィールド52、および送信データを格納する送信データフィールド53を備えている。通常の送信データは、試験対象アプリケーション34からハードウェア層46へ送信されるデータである。ドライバ層33のデータ解釈部42は、送信データ種別の情報を参照することによって、ハードウェア層宛の送信データであることを認識する。
図9は、本発明の実施の形態2におけるフローチャートである。試験において、ドライバ層33は、例えば次の手順で処理を行う。図9に示すように、受付部37は、アプリケーション層32からデータを受信する(ステップS11)。そして、データ解釈部42は、受信したデータのデータ種別フィールド(送信データ種別フィールド52または疑似データ種別フィールド58)を参照し、受信したデータがハードウェア層宛の通常の送信データであるか疑似データであるかを判定する(ステップS12)。判定の結果、受信したデータが通常の送信データである場合(ステップS12:No)、データ解釈部42は、受信したデータの送信データフィールド53に格納されているデータをハードウェア層46へ送信する(ステップS19)。ハードウェア層46へ送信されたデータは、ハードウェア層46において破棄される。
図10は、本発明の実施の形態2におけるシーケンス図である。図10において、デバイスAは正規デバイスであり、デバイスBは非正規デバイスである。図10に示すように、ハードウェア層46がデバイスBである場合、Operating System(OS、オペレーティングシステム、基本ソフト)は、デバイスドライバをインストールするときにデバイスBを検出したら、デバイスA用のデバイスドライバを起動するように、例えばシステム定義ファイル(INFファイル)に予め登録しておく。そして、OSは、試験を行う際にデバイスBを検出すると(ステップS21)、デバイスA用のデバイスドライバを起動する(ステップS22)。ハードウェアA用の試験対象アプリケーション34は、起動時にデバイスA用のデバイスドライバを検索する(ステップS23)。デバイスA用のデバイスドライバが起動されているので、試験対象アプリケーション34はデバイスA用のデバイスドライバを認識し、試験の処理を続行する(ステップS24)。
図11は、本発明の実施の形態2におけるシーケンス図である。図11において、デバイスAは正規デバイスであり、仮想デバイスAはデバイスAの仮想デバイスである。図11に示すように、ハードウェア層46にデバイスがない場合には、仮想デバイスの技術を利用する。従って、ハードウェア層46は仮想デバイスAとなる。この場合、OSは、デバイスドライバをインストールするときにデバイスAを検出したら、デバイスA用のデバイスドライバを起動するように、例えばシステム定義ファイルに予め登録しておく。そして、OSは、試験を行う際にデバイスA(仮想デバイスA)を検出すると(ステップS31)、デバイスA用のデバイスドライバを起動する(ステップS32)。ハードウェアA用の試験対象アプリケーション34は、起動時にデバイスA用のデバイスドライバを検索し(ステップS33)、デバイスA用のデバイスドライバを認識して、試験の処理を続行する(ステップS34)。前記ステップS24およびステップS34については、図12〜図16を参照しながら、以下に説明する。
図12は、本発明の実施の形態2におけるシーケンス図である。図12に示すように、試験対象アプリケーション34は、ドライバ層33へハードウェア層宛の通常の送信データを送信する(ステップS41)。ドライバ層33は、試験対象アプリケーション34から送られてきたデータをハードウェア層46へ送信する(ステップS42)。疑似データ作成アプリケーション35がドライバ層33へ疑似データを送信しないので、受信バッファ40にはデータが格納されていない。従って、試験対象アプリケーション34が受信バッファ40に対してデータの刈り取りを行うと、試験対象アプリケーション34にはデータなしという情報が返される(ステップS43)。この場合、試験対象アプリケーション34は、ハードウェア層46への送信データに対して期待される応答が得られないので、例えば再送を要求したり、あるいは、エラー処理を行う。ハードウェア層46に送られてきた通常の送信データは破棄される。
図13は、本発明の実施の形態2におけるシーケンス図である。図13に示すように、上記ステップS41およびステップS42と同様に、試験対象アプリケーション34は、ドライバ層33を介してハードウェア層46へ通常の送信データを送信する(ステップS51、ステップS52)。次いで、疑似データ作成アプリケーション35は、ハードウェア層宛の通常の送信データが送信されたことを認識し、その送信データに対して期待される応答値を含む疑似データをドライバ層33へ送信する(ステップS53)。ドライバ層33では、制御データ処理部39は、送られてきた疑似データから抽出された制御系のデータを応答値として受信バッファ40に格納する(ステップS54)。次いで、試験対象アプリケーション34は、受信バッファ40に対してデータの刈り取りを行う。それによって、ドライバ層33から試験対象アプリケーション34に、受信バッファ40に格納されているデータが応答値として返される(ステップS55)。疑似データからユーザデータが抽出された場合には、ユーザデータ処理部38は、ユーザデータを試験対象アプリケーション34へ送信する。疑似データ作成アプリケーション35は、試験対象アプリケーション34から通常の送信データが送信されたことを、例えばフラグの設定などによって認識するようにしてもよい。
図14は、本発明の実施の形態2におけるシーケンス図である。図14に示すように、疑似データ作成アプリケーション35は、試験対象アプリケーション34が通常の送信データを送信した後(ステップS61、ステップS62)、すぐには疑似データを送信しない。従って、試験対象アプリケーション34が受信バッファ40に対してデータの刈り取りを行っても、試験対象アプリケーション34にはデータなしという情報が返される(ステップS63)。疑似データ作成アプリケーション35は、試験対象アプリケーション34が通常の送信データを送信した後、任意の時間が経過した後に疑似データをドライバ層33へ送信する(ステップS64)。それによって、通常の送信データの送信後、任意の時間が経過した後に、疑似データから抽出された制御系のデータが受信バッファ40に格納される(ステップS65)。その後、試験対象アプリケーション34が受信バッファ40に対してデータの刈り取りを行うことによって、試験対象アプリケーション34に応答値が返される(ステップS66)。応答値がユーザデータである場合には、通常の送信データの送信後、任意の時間が経過した後に、ユーザデータ処理部38がユーザデータを試験対象アプリケーション34へ送信することになる。通常の送信データの送信後、任意の時間が経過した時点で例えばフラグが設定されることにより、疑似データ作成アプリケーション35が、通常の送信データが送信されたことを実際の送信タイミングから遅れて認識するようにしてもよい。
図15は、本発明の実施の形態2におけるシーケンス図である。図15に示すように、疑似データ作成アプリケーション35は、試験対象アプリケーション34が通常の送信データを送信した後(ステップS71、ステップS72)、待機カウンタ値(=n、nは自然数)を含む疑似データをドライバ層33へ送信する(ステップS73)。疑似データからは、制御系のデータと待機カウンタ値が抽出され、それらのデータが受信バッファ40に格納される(ステップS74)。試験対象アプリケーション34は受信バッファ40に対してデータの刈り取りを行うが、刈り取りの回数が待機カウンタ値(=n)を超えるまでは試験対象アプリケーション34にはデータなしという情報が返される(ステップS75)。刈り取りの回数がn+1回目になると、刈り取り処理部41は、試験対象アプリケーション34に応答値を返す(ステップS76)。その際、刈り取り処理部41は、試験対象アプリケーション34に待機カウンタ値を返さない。刈り取り処理部41は、待機カウンタ値と刈り取りの回数とを監視して、刈り取りの回数が待機カウンタ値を超えるまでは試験対象アプリケーション34に応答値を返さないようにしてもよい。応答値がユーザデータである場合には、ユーザデータ処理部38は、待機カウンタ値に関係なく、試験対象アプリケーション34へユーザデータを送信する。待機カウンタ値を刈り取りの回数で設定する代わりに、時間で設定するようにしてもよい。すなわち、試験対象アプリケーション34が通常の送信データを送信した後、待機カウンタ値に設定された時間が経過するまでは、刈り取り処理部41が試験対象アプリケーション34に応答値を返さないようにしてもよい。待機カウンタ値を時間で設定する場合には、待機カウンタ値に設定された時間が経過した後に、ユーザデータ処理部38が試験対象アプリケーション34へユーザデータを送信するようにしてもよい。
図16は、本発明の実施の形態2におけるシーケンス図である。図16に示すように、疑似データ作成アプリケーション35は、任意のタイミングで疑似データをドライバ層33へ送信する(ステップS81)。ドライバ層33では、制御データ処理部39が、疑似データから抽出された制御系のデータを応答値として受信バッファ40に格納する(ステップS82)。次いで、試験対象アプリケーション34は、受信バッファ40に対してデータの刈り取りを行い、受信バッファ40に格納されているデータを応答値として取得する(ステップS83)。疑似データからユーザデータが抽出された場合には、ユーザデータ処理部38は、ユーザデータを試験対象アプリケーション34へ送信する。図16に示す手順の試験では、疑似データが送信される前にハードウェア層宛の通常の送信データの送信が行われない。従って、疑似データによって試験対象アプリケーション34に返される応答値は、試験対象アプリケーション34の要求に対する応答ではない。つまり、ハードウェア層46からデータが自発的に送られてきた場合の試験を行うことになる。
2,32 アプリケーション層
3,33 ドライバ層
4,34 試験対象アプリケーション
5,35 疑似データ作成部
6,38〜42 疑似データ応答部
7,46 ハードウェア層
57,62 疑似データ
Claims (5)
- アプリケーション層の試験対象アプリケーションとハードウェア層との間でドライバ層を介して授受されるデータの入出力処理を評価する試験装置であって、
前記アプリケーション層にあって、前記試験対象アプリケーションが前記ハードウェア層宛てのデータを送信してから任意の時間が経過した場合、前記試験対象アプリケーションから前記ハードウェア層宛に出力されるデータに対して前記ハードウェア層から前記試験対象アプリケーションへ返される応答値と前記試験対象アプリケーションに前記応答値を返す際の条件となる前記試験対象アプリケーションによるデータの刈り取りの回数を示す待機カウンタ値とを含む疑似データを作成して前記ドライバ層へ出力する疑似データ作成部と、
前記ドライバ層にあって、前記試験対象アプリケーションによるデータの刈り取りの回数が前記疑似データに含まれる前記待機カウンタ値を超えた場合、前記ハードウェア層から渡されたデータとして前記試験対象アプリケーションへ前記疑似データに含まれる前記応答値を返す疑似データ応答部と、
を備えることを特徴とする試験装置。 - 前記疑似データ応答部は、前記試験対象アプリケーションから前記ハードウェア層宛に出力されたデータを前記ハードウェア層へ出力することを特徴とする請求項1に記載の試験装置。
- 前記ドライバ層に、前記ハードウェア層のデバイスを判定し、前記試験対象アプリケーションに対して実際のデバイスを、前記試験対象アプリケーションに対応するデバイスに見せる判定部を備えることを特徴とする請求項1または2に記載の試験装置。
- 前記ドライバ層に、前記ハードウェア層のデバイスを判定し、前記試験対象アプリケーションに対して仮想デバイスを、前記試験対象アプリケーションに対応するデバイスに見せる判定部を備えることを特徴とする請求項1または2に記載の試験装置。
- アプリケーション層の試験対象アプリケーションとハードウェア層との間でドライバ層を介して授受されるデータの入出力処理を評価する試験方法であって、
前記試験対象アプリケーションが前記ハードウェア層宛てのデータを送信してから任意の時間が経過した場合、前記試験対象アプリケーションから前記ハードウェア層宛に出力されるデータに対して前記ハードウェア層から前記試験対象アプリケーションへ返される応答値と前記試験対象アプリケーションに前記応答値を返す際の条件となる前記試験対象アプリケーションによるデータの刈り取りの回数を示す待機カウンタ値とを含む疑似データを作成して前記ドライバ層へ出力する疑似データ作成工程と、
前記試験対象アプリケーションによるデータの刈り取りの回数が前記疑似データに含まれる前記待機カウンタ値を超えた場合、前記ドライバ層から前記試験対象アプリケーションへ前記疑似データに含まれる前記応答値を前記ハードウェア層から渡されたデータとして返す疑似データ応答工程と、
を含むことを特徴とする試験方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009070427A JP5526572B2 (ja) | 2009-03-23 | 2009-03-23 | 試験装置および試験方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009070427A JP5526572B2 (ja) | 2009-03-23 | 2009-03-23 | 試験装置および試験方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010224795A JP2010224795A (ja) | 2010-10-07 |
JP5526572B2 true JP5526572B2 (ja) | 2014-06-18 |
Family
ID=43041926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009070427A Expired - Fee Related JP5526572B2 (ja) | 2009-03-23 | 2009-03-23 | 試験装置および試験方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5526572B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2709016B1 (en) * | 2011-05-09 | 2019-03-13 | Hyundai Motor Company | Exception handling test device and method thereof |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02118849A (ja) * | 1988-10-28 | 1990-05-07 | Nec Corp | 入出力装置のシミュレーション方式 |
JPH10133914A (ja) * | 1996-11-01 | 1998-05-22 | Nippon Steel Corp | 計算機システム及びデバイス入出力シミュレータ |
JP2008217574A (ja) * | 2007-03-06 | 2008-09-18 | Ricoh Co Ltd | 開発プログラム、記録媒体、開発装置および開発方法 |
-
2009
- 2009-03-23 JP JP2009070427A patent/JP5526572B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010224795A (ja) | 2010-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5821678B2 (ja) | ウェブ・アプリケーションのブラウザに依存しない自動互換性チェックのためのウェブ・サービス | |
JP6583838B2 (ja) | アプリケーションのシミュレーション | |
US20100146340A1 (en) | Analyzing Coverage of Code Changes | |
US20110054878A1 (en) | Automated performance prediction for cloud services | |
CN105099811A (zh) | 一种接口测试方法和装置 | |
KR20190022431A (ko) | 랜덤 포레스트 모델의 훈련 방법, 전자장치 및 저장매체 | |
CN104246767A (zh) | 用于云同步***的遥测*** | |
US20220107882A1 (en) | Rendering engine component abstraction system | |
CN107807841B (zh) | 服务器模拟方法、装置、设备及可读存储介质 | |
CN111447107A (zh) | 网络状态确定方法、装置、存储介质及电子设备 | |
JP5157586B2 (ja) | エミュレータ装置 | |
JP6219009B1 (ja) | やり取り型攻撃シミュレーション装置、やり取り型攻撃シミュレーション方法およびやり取り型攻撃シミュレーションプログラム | |
CN114189553B (zh) | 一种流量回放方法、***及计算设备 | |
JP6802354B2 (ja) | 通信試験装置、通信試験方法及びプログラム | |
JP5526572B2 (ja) | 試験装置および試験方法 | |
JP6959624B2 (ja) | セキュリティアセスメントシステム | |
JP5906906B2 (ja) | ログ管理方法、ログ管理システムおよび情報処理装置 | |
CN110737900A (zh) | 网页功能测试方法及装置、服务器和计算机可读存储介质 | |
CN106357468B (zh) | 一种判断网络服务器的服务规范的方法和装置 | |
JPWO2020065737A1 (ja) | 影響範囲推定装置、影響範囲推定方法、及びプログラム | |
CN112817816B (zh) | 埋点处理方法、装置、计算机设备和存储介质 | |
KR101876245B1 (ko) | 지능형전자장치 성능검증 장치, 지능형전자장치 성능검증 시스템 및 컴퓨터 판독가능 기록 매체 | |
WO2021255888A1 (ja) | アセスメント装置、代替モデル作成装置、アセスメント方法及びプログラム | |
JP6079267B2 (ja) | 中継サーバ、中継プログラム及び中継方法 | |
WO2019207743A1 (ja) | 試験装置、試験方法および試験プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130319 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130520 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131001 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131202 |
|
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: 20140318 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140331 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5526572 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |