(57)【要約】【課題】計算機のハードウエアデバイスを変更するとき、後継機のハードウエアデバイスがない場合、ソフトウエアの機能的な動作確認を実施することはできるが、ハードウエアデバイス性能の変化に伴う、ソフトウエアの影響評価試験ができないという問題があった。【解決手段】試験用デバイスドライバ１００４に、応答時間を設定できる機能（低速応答機能１００６、高速応答機能１００８）を設けることにより、計算機１０００のハードウエアデバイス１０２０変更に伴い、ハードウエアデバイス１０２０の性能が変更される場合でも、ハードウエアデバイス性能にあった応答が返すことができるよう構成した。【選択図】図３
2013186682.tif 000002
【特許請求の範囲】
【請求項１】
計算機で動作するミドルウエアを試験対象とし、上記ミドルウエアからのアクセス要求に応じて計算機のハードウエアデバイスにアクセス要求し上記ハードウエアデバイスから応答を得てその応答を上記ミドルウエアに返す試験用デバイスドライバであって、上記試験用デバイスドライバに上記ミドルウエアによるアクセス要求から上記ハードウエアデバイスの応答を得るまでの時間に相当する応答時間を設定できる機能を設けることにより、計算機における上記ハードウエアデバイスの変更に伴い、ハードウエアデバイス性能が変更される場合でも、ハードウエアデバイス性能にあった応答が返すことができるよう構成したことを特徴とするミドルウエア試験用デバイスドライバ。
【請求項２】
上記試験用デバイスドライバに、上記試験対象ミドルウエアによるアクセス要求時から上記試験用デバイスドライバが上記ハードウエアデバイスの応答を得た時までの時間を計測するタイマーを備え、後継ハードウエアデバイスの変更に伴うアクセス時間の変更に応じたディレイ実行後に上記試験用デバイスドライバから上記試験対象ミドルウエアに応答を返すように構成したことを特徴とする請求項１記載のミドルウエア試験用デバイスドライバ。
【請求項３】
上記試験用デバイスドライバに、低速応答機能と高速応答機能とを設けることにより、上記ハードウエアデバイスからのデータの応答速度を変更できるように構成したことを特徴とする請求項１又は請求項２記載のミドルウエア試験用デバイスドライバ。
【請求項４】
上記ハードウエアデバイスからの応答データを、上記試験用デバイスドライバは期待される応答データとして保存し、上記ディレイ実行後に上記試験用デバイスドライバが上記ミドルウエアに上記期待される応答データを返すように構成したことを特徴とする請求項３記載のミドルウエア試験用デバイスドライバ。
【請求項５】
上記試験用デバイスドライバは、ディレイ時間設定プログラムを備え、低速応答機能のディレイ時間及び高速応答機能のディレイ時間を個別に設定可能に構成したことを特徴とする請求項３記載のミドルウエア試験用デバイスドライバ。
【請求項６】
上記試験用デバイスドライバは、ディレイ時間で設定される時間分だけウエイトするディレイ待ちの機能を備え、応答時間待ち合わせでＣＰＵ時間を消費しないよう構成したことを特徴とする請求項３記載のミドルウエア試験用デバイスドライバ。
【請求項７】
上記試験用デバイスドライバには、応答時間をランダムに設定する機能を持たせるように構成したことを特徴とする請求項３記載のミドルウエア試験用デバイスドライバ。
【請求項８】
上記試験用デバイスドライバには、低速応答機能と高速応答機能に乱数発生機能を持たせることにより、応答時間をランダムに設定可能としたことを特徴とする請求項７記載のミドルウエア試験用デバイスドライバ。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、計算機でミドルウエア試験を実施するときの試験用デバイスドライバに関するものである。
【背景技術】
【０００２】
従来の試験用デバイスドライバは、疑似データにより、実ハードウエアデバイスがなくても、ミドルウエアの機能試験を可能にしている（例えば特許文献１参照）。
すなわち、特許文献１では、アプリケーション層に試験対象アプリケーション及び擬似データ作成部を備え、ドライバ層に擬似データ応答部を備えている。そして、擬似データ作成部は、ハードウエア層からドライバ層に渡されるデータの擬似データを作成してドライバ層へ出力する。ドライバ層の擬似データ応答部は、アプリケーション層から渡された擬似データを、ハードウエア層から渡されたデータとして試験対象アプリケーションへ返すよう構成されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０-２２４７９５号公報（第４頁、図１）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
以上のように構成された従来の試験用デバイスドライバは、機能の動作確認が目的のため、ハードウエアデバイスの性能変更に伴う影響については考慮されておらず、このような性能変更があった場合、ミドルウエアの動作確認が行えないという問題点があった。
【０００５】
この発明は上記のような課題を解決するためになされたものであり、ハードウエアデバイスの動作性能が変わった場合の試験を、実ハードウエアデバイスの変更なしに、実施できる試験用デバイスドライバを提供することを目的とする。
【課題を解決するための手段】
【０００６】
この発明は、試験用デバイスドライバに応答時間を設定できる機能を設けることにより、計算機のハードウエアデバイス変更に伴い、ハードウエアデバイス性能が変更される場合でも、ハードウエアデバイス性能にあった応答を返すことができるよう構成したものである。
【発明の効果】
【０００７】
この発明によれば、ハードウエアデバイスを更新する場合、その後継デバイスの性能仕様が判明すれば、実ハードウエアデバイスがなくても、あらかじめ、ミドルウエアの試験を実施することができるという効果がある。
【図面の簡単な説明】
【０００８】
【図１】この発明の実施の形態１を示す構成図である。
【図２】この発明の実施の形態１の動作を説明するフローチャートである。
【図３】この発明の実施の形態２を示す構成図である。
【図４】この発明の実施の形態２の動作を説明するフローチャートであり、現行ハードウエアデバイスへアクセスを実施し、性能と応答データを記録する手順を示す。
【図５】この発明の実施の形態２の動作を説明するフローチャートであり、後継ハードウエアデバイスの性能を模擬した時の動作を示す。
【図６】この発明の実施の形態３を示す構成図である。
【図７】この発明の実施の形態４を示す構成図である。
【図８】この発明の実施の形態５を示す構成図である。
【発明を実施するための形態】
【０００９】
実施の形態１．
以下、この発明の実施の形態１を図１に基づいて説明する。
図１において、計算機１０００で動作する試験対象のミドルウエア１００１を試験するテストプログラム１００２は試験対象ミドルウエア１００１にアクセス要求動作を行うものである。試験対象ミドルウエア１００１はテストプログラム１００２からのアクセス要求に応じて計算機１０００上で動作する試験用デバイスドライバ１００４にアクセス要求を行う。試験用デバイスドライバ１００４は接続ケーブル１０３０で計算機１０００に接続されるハードディスクからなるデバイス１０２０を制御し試験対象ミドルウエア１００１からのアクセス要求に応じてデバイス１０２０に対しアクセス要求動作を行うものである。テストプログラム１００２にはテストプログラム１００２が期待する応答データ１００３が保存される。試験用デバイスドライバ１００４にはデバイス１０２０の性能を計測するためのタイマー１００５が備えられ、試験用デバイスドライバ１００４はディレイ時間１００７で応答時間が決められ応答を遅らせる低速応答機能１００６を有している。
【００１０】
次に、実施の形態１の動作について図２を用いて説明する。
まず、ステップ１１０１（以後ＳＴ１１０１と記す）で、テストプログラム１００２がミドルウエア１００１に対し、アクセス要求をする（ＳＴ１１０１）。ミドルウエア１００１がデバイスドライバ１００４にアクセス要求をする（ＳＴ１１０２）。デバイスドライバ１００４がタイマー１００５をスタートさせる（ＳＴ１１０３）。デバイスドライバ１００４がデバイス（ハードディスク）１０２０に対し、アクセス要求を行う（ＳＴ１１０４）。デバイス１０２０からの応答が返る（ＳＴ１１０５）。デバイスドライバ１００４は、タイマー１００５をストップし、ミドルウエア１００１からのアクセス要求によるデバイスドライバ１００４のデバイス１０２０へのアクセス要求時点からデバイスドライバ１００４がデバイス１０２０からの応答を取得した時点までの時間に相当する応答時間について時間計測を行い、計測時間を記録する（ＳＴ１１０６）。このときの計測時間をＡとする。低速応答機能１００６は後継のデバイスの性能に応じたディレイを実行する（ＳＴ１１０７）。後継のデバイスが現行のデバイスのＢ倍時間のアクセスがかかる場合は、ディレイ時間１００７は、（Ｂ−１）×Ａとなる。ディレイ実行後、デバイスドライバ１００４がミドルウエア１００１に応答を返す（ＳＴ１１０８）。ミドルウエア１００１がテストプログラム１００２に応答を返す（ＳＴ１１０９）。テストプログラム１００２が応答データを期待する応答データ１００３と一致しているか確認する（ＳＴ１１１０）。
これにより、後継ハードウエアデバイスがなくても、後継ハードウエアデバイスの性能を模擬した影響の試験を実施できるようになる。
【００１１】
実施の形態２．
図３は本発明の実施の形態２の応答速度変更ドライバのブロック図を示すもので、図３においては、図１で示した実施の形態１の構成要素と同一の構成要素は同一の記号を付けている。
図３において、試験用デバイスドライバ１００４はディレイ時間１０１０により応答待ち時間が決められる高速応答機能１００８を有している。高速応答機能１００８には期待される応答データ１００９が保存される。
【００１２】
次に、上記構成における動作について、図４、図５を用いて説明する。
まず、現行ハードウエアデバイスへアクセスを実施し、性能と応答データを記録する手順について図４を用いて説明する。
テストプログラム１００２がミドルウエア１００１に対し、アクセス要求をする（ＳＴ１２０１）。ミドルウエア１００１がデバイスドライバ１００４にアクセス要求をする（ＳＴ１２０２）。デバイスドライバ１００４がタイマー１００５をスタートさせる（ＳＴ１２０３）。デバイスドライバ１００４がデバイス１０２０に対し、アクセス要求を行う（ＳＴ１２０４）。デバイス１０２０からの応答が返る（ＳＴ１２０５）。デバイスドライバ１００４は、タイマー１００５をストップし、時間計測を行い、計測時間を記録する（ＳＴ１２０６）。この時の計測時間をＣとする。デバイスドライバ１００４が応答データを期待される応答データ１００９として保存する（ＳＴ１２０７）。デバイスドライバ１００４がミドルウエア１００１に応答を返す（ＳＴ１２０８）。ミドルウエア１００１がテストプログラム１００２に応答を返す（ＳＴ１２０９）。テストプログラム１００２が応答データを期待する応答データ１００３と一致しているか確認する（ＳＴ１２１０）。
【００１３】
次に、後継ハードウエアデバイスの性能を模擬した時の動作について、図５を用いて説明する。
テストプログラム１００２がミドルウエア１００１に対し、アクセス要求をする（ＳＴ１３０１）。ミドルウエア１００１がデバイスドライバ１００４にアクセス要求をする（ＳＴ１３０２）。デバイスドライバ１００４にある高速応答機能１００８は後継のデバイスの性能に応じたディレイを実行する（ＳＴ１３０３）。後継のデバイスが現行のデバイスのＤ倍(Ｄは１より小さい)時間のアクセス時間がかかる場合は、ディレイ時間１０１０は、Ｄ×Ｃとなる。ディレイ実行後、デバイスドライバ１００４がミドルウエア１００１に期待される応答データ１００９を返す（ＳＴ１３０４）。ミドルウエア１００１がテストプログラム１００２に応答を返す（ＳＴ１３０５）。テストプログラム１００２が応答データを期待する応答データ１００３と一致しているか確認する（ＳＴ１３０６）。
これにより、後継ハードウエアデバイスがなく、後継のハードウエアデバイスが現行ハードデバイスより高性能であっても、後継ハードウエアデバイスの性能を模擬した影響の試験を実施できるようになる。
【００１４】
実施の形態３．
図６は本発明の実施の形態３の応答速度変更ドライバのブロック図を示すもので、図８においては、図３で示した実施例２の構成要素と同一の構成要素は同一の記号を付けている。
図６において、試験用デバイスドライバ１００４は、ディレイ時間１００７，１０１０を変更するディレイ時間設定プログラム１０１１を具備している。
上記構成における動作は以下のとおりである。
テストプログラム１００２を実行前に、ディレイ時間設定プログラム１０１１により、低速応答性能１００６のディレイ時間１００７及び高速応答性能１００８のディレイ時間１０１０を設定しておく。これにより、アクセスの応答時間を個別に設定できるようになり、性能が安定しないデバイスの模擬もできるようになる。そのほかの動作については、図４、図５のフローチャートと同じである。
【００１５】
実施の形態４．
図７は本発明の実施の形態４の応答速度変更ドライバのブロック図を示すもので、図においては、図３で示した実施例２の構成要素と同一の構成要素は同一の記号を付けている。図において、１０１２は低速応答機能１００６に設けたディレイ待ちで、低速応答機能１００６内のディレイ時間１００７で設定されるディレイ時間分ビジーループすることなくウエイトするよう構成されている。また、１０１３は高速応答機能１００８に設けたディレイ待ちで、高速応答機能１００８内のディレイ時間１０１０で設定されるディレイ時間分ビジーループすることなくウエイトするよう構成されている。
上記構成における動作は、以下のとおりである。
ディレイ待ち１０１２、１０１３の時、ビジーループせずにウエイトすることにより、ＣＰＵを開放する。そのほかの動作については、図４、図５のフローチャートと同じである。
このように構成することにより、ディレイ待ちの間、ＣＰＵが他の処理を実行することができ、より現実動作を模擬できるようになる。
【００１６】
実施の形態５．
図８は本発明の実施の形態５のブロック図を示すもので、図においては、図３で示した実施例２の構成要素と同一の構成要素は同一の記号を付けている。
図８において、低速応答機能１００６内には乱数発生機能１０１４が設けられ、低速応答機能１００６のディレイ時間１００７をランダムに設定することができる。また、高速応答機能１００８内には乱数発生機能１０１５が設けられ、高速応答機能１００８のディレイ時間１０１０をランダムに設定することができる。
上記構成における動作は以下のとおりである。
試験用ドライバ１００４が応答を返す時のディレイ時間１００７、１０１０を乱数発生機能１０１４、１０１５により、ランダムに設定し、試験対象ミドルウエア１００１にランダムに応答を返す。そのほかの動作については、図４、図５のフローチャートと同じである。
このように構成することにより、デバイス１０２０の動作とは全く無関係に応答タイミングが変化することにより発生する試験対象ミドルウエア１００１に内在する不具合を検出できるようになり、試験対象のミドルウエア１００１の品質が向上する。
【００１７】
なお、この発明は、その発明の範囲内において、各実施の形態の一部または全部を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
【符号の説明】
【００１８】
１０００  計算機、１００１  試験対象ミドルウエア、１００２  テストプログラム、１００３  期待する応答データ、１００４  試験用デバイスドライバ、１００５  タイマー、１００６  低速応答機能、１００７  ディレイ時間、１００８  高速応答機能、１００９  期待される応答データ、１０１０  ディレイ時間、１０１１  ディレイ時間設定プログラム、１０１２  ディレイ待ち、１０１３  ディレイ待ち、１０１４  乱数発生機能、１０１５  乱数発生機能、１０２０  デバイス、１０３０  接続ケーブル。
【図１】
2013186682.tif 000003
【図２】
2013186682.tif 000004
【図３】
2013186682.tif 000005
【図４】
2013186682.tif 000006
【図５】
2013186682.tif 000007
【図６】
2013186682.tif 000008
【図７】
2013186682.tif 000009
【図８】
2013186682.tif 000010