(57)【要約】【課題】異なるＯＳ上で動作するプリンタドライバに対して自動テストを実行する。【解決手段】プリンタを制御するソフトウェアであるプリンタドライバを利用する評価用ＰＣ２００とネットワークで接続されたＰＣ１００であって、評価用ＰＣ２００に搭載されたＯＳに依存しない形式で、プリンタドライバの自動テストを行うために評価用ＰＣ２００に実行させる操作コマンドを含むシナリオを作成するシナリオ作成部１０４と、作成したシナリオを、評価用ＰＣ２００に送信し、評価用ＰＣ２００において実行されたシナリオの操作結果を受信する通信処理部１０８と、受信した操作結果によって、プリンタドライバが正常に動作しているか否かを判定する判定部１１０と、を備える。【選択図】図２
2017010462.tif 000002
【特許請求の範囲】
【請求項１】
機器を制御するソフトウェアであるデバイスドライバを利用する外部装置とネットワークで接続された情報処理装置であって、
前記外部装置に搭載されたオペレーティングシステムに依存しない形式で、前記デバイスドライバの動作テストを行うために前記外部装置に実行させる操作手順を含むシナリオを作成するシナリオ作成部と、
作成した前記シナリオを、前記外部装置に送信し、前記外部装置において実行された前記シナリオの操作結果を受信する通信処理部と、
受信した前記操作結果によって、前記デバイスドライバが正常に動作しているか否かを判定する判定部と、を備える情報処理装置。
【請求項２】
前記シナリオは、操作対象の画像情報と、前記画像情報の検索によって前記デバイスドライバの設定画面に対する操作位置を特定させる前記操作手順とを含む、請求項１に記載の情報処理装置。
【請求項３】
前記シナリオは、前記画像情報の検索によって特定された前記操作位置を、任意の方向に微調整させる位置補正情報を含む、請求項２に記載の情報処理装置。
【請求項４】
前記シナリオは、入力する任意の文字情報と、前記設定画面に対する文字入力個所に前記文字情報を入力させる前記操作手順を含む、請求項２または３に記載の情報処理装置。
【請求項５】
前記シナリオは、前記動作テストの対象を示すデバイスの名称を含み、前記デバイスの名称によって前記動作テストの対象となるデバイスを選択させる前記操作手順を含む、請求項１〜４のいずれか一つに記載の情報処理装置。
【請求項６】
前記通信処理部は、受信した複数回の前記操作結果を記憶部に保存し、
前記判定部により判定された結果と、最新の前記操作結果とを表示する表示制御部をさらに備える、請求項１〜５のいずれか一つに記載の情報処理装置。
【請求項７】
機器を制御するソフトウェアを示すデバイスドライバを利用する外部装置とネットワークで接続された情報処理装置で実行される情報処理方法であって、
前記外部装置に搭載されたオペレーティングシステムに依存しない形式で、前記デバイスドライバの動作テストを行うために前記外部装置に実行させる操作手順を含むシナリオを作成するシナリオ作成ステップと、
作成した前記シナリオを、前記外部装置に送信し、前記外部装置において実行された前記シナリオの操作結果を受信する通信処理ステップと、
受信した前記操作結果によって、前記デバイスドライバが正常に動作しているか否かを判定する判定ステップと、を含む情報処理方法。
【請求項８】
機器を制御するソフトウェアを示すデバイスドライバを利用する外部装置とネットワークで接続されたコンピュータに、
前記外部装置に搭載されたオペレーティングシステムに依存しない形式で、前記デバイスドライバの動作テストを行うために前記外部装置に実行させる操作手順を含むシナリオを作成するシナリオ作成ステップと、
作成した前記シナリオを、前記外部装置に送信し、前記外部装置において実行された前記シナリオの操作結果を受信する通信処理ステップと、
受信した前記操作結果によって、前記デバイスドライバが正常に動作しているか否かを判定する判定ステップと、を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
従来、プリンタドライバの自動テストを行う場合、自動テストプログラムが動作するＰＣ（Personal  Computer）などの情報処理装置でプリンタドライバの設定（画面）を開き、各種設定操作を自動で行う技術が知られている。
【０００３】
例えば、操作に伴う画面表示の動作テストを行う自動テストツール・プログラムが開示されている（特許文献１参照）。この特許文献１の自動テストツール・プログラムでは、テストケースを作成し、テスト対象のソフトウェアに対しテストケースを実行させ、操作命令に伴い表示される表示画面の確かさをテストする構成が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来の自動テストを実行する情報処理装置などでは、異なるＯＳ（Operating  System）上で動作するプリンタドライバに対して自動テストを実行する場合、そのＯＳ専用の自動テストプログラムを作成しなければならないという問題があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、外部装置に搭載された異なるＯＳ上で動作するプリンタドライバに対して自動テストを実行できる情報処理装置、情報処理方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明の情報処理装置は、機器を制御するソフトウェアであるデバイスドライバを利用する外部装置とネットワークで接続された情報処理装置であって、前記外部装置に搭載されたオペレーティングシステムに依存しない形式で、前記デバイスドライバの動作テストを行うために前記外部装置に実行させる操作手順を含むシナリオを作成するシナリオ作成部と、作成した前記シナリオを、前記外部装置に送信し、前記外部装置において実行された前記シナリオの操作結果を受信する通信処理部と、受信した前記操作結果によって、前記デバイスドライバが正常に動作しているか否かを判定する判定部と、を備える。
【発明の効果】
【０００７】
本発明によれば、外部装置に搭載された異なるＯＳ上で動作するプリンタドライバに対して自動テストを実行できるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態のＰＣのハードウェア構成の一例を示す図である。
【図２】図２は、実施形態のＰＣおよび評価用ＰＣの構成を示す機能ブロック図である。
【図３】図３は、ＰＣで作成されたシナリオの一例を示す図である。
【図４】図４は、ＰＣにより判定された結果の一例を示す図である。
【図５】図５は、設定画面の一例を示す図である。
【図６】図６は、操作結果が反映された設定画面の一例を示す図である。
【図７】図７は、操作結果が反映された設定画面の他の例を示す図である。
【図８】図８は、操作結果が反映された設定画面の他の例を示す図である。
【図９】図９は、操作結果が反映された設定画面の他の例を示す図である。
【図１０】図１０は、操作結果が反映された設定画面の他の例を示す図である。
【図１１】図１１は、ＰＣから他のＰＣに対して自動テストを実施した場合の全体処理の流れを示すシーケンス図である。
【図１２】図１２は、実施形態の評価用ＰＣのプリンタドライバの自動テストを実施した場合の処理の流れを示すシーケンス図である。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、情報処理装置、情報処理方法、およびプログラムの実施形態を詳細に説明する。本実施形態では、情報処理装置をＰＣに適用した例を示す。
【００１０】
図１は、実施形態のＰＣのハードウェア構成の一例を示す図である。図１に示すように、ＰＣ１００は、ＣＰＵ６０１と、ＲＯＭ６０２と、ＲＡＭ６０３と、補助記憶装置６０４と、ディスプレイ６０５と、ネットワークＩ／Ｆ６０６と、キーボード６０７と、マウス６０８と、を備えている。なお、評価用ＰＣ２００も同様の構成である。
【００１１】
ＣＰＵ６０１は、ＰＣ１００全体の動作を制御する演算装置である。ＲＯＭ６０２は、ＰＣ１００用のプログラムおよび制御データ等を記憶している不揮発性記憶装置である。ＲＡＭ６０３は、ＣＰＵ６０１のワークエリアとして使用される揮発性記憶装置である。
【００１２】
補助記憶装置６０４は、プログラム等の各種情報を記憶するＨＤＤ（Hard  Disk  Drive）またはＳＳＤ（Solid  State  Drive）等の不揮発性記憶装置である。
【００１３】
ディスプレイ６０５は、文字または画像等の各種情報を表示する表示装置（表示部）である。ディスプレイ６０５は、例えば、ＣＲＴ（Cathode  Ray  Tube）ディスプレイ、ＬＣＤ（Liquid  Crystal  Display）、または有機ＥＬ（electro−Luminescence）ディスプレイ等である。
【００１４】
ネットワークＩ／Ｆ６０６は、ネットワークに接続してデータ通信をするためのインターフェースである。ネットワークＩ／Ｆ６０６は、例えば、１０Ｂａｓｅ−Ｔ、１００Ｂａｓｅ−ＴＸまたは１０００Ｂａｓｅ−Ｔ等のＥｔｈｅｒｎｅｔ（登録商標）に対応したインターフェースである。
【００１５】
キーボード６０７は、文字、数字、各種指示の選択等を行う入力装置である。マウス６０８は、各種指示の選択および実行、処理対象の選択等を行うための入力装置である。
【００１６】
上述のＣＰＵ６０１、ＲＯＭ６０２、ＲＡＭ６０３、補助記憶装置６０４、ディスプレイ６０５、ネットワークＩ／Ｆ６０６、キーボード６０７、およびマウス６０８は、アドレスバスおよびデータバス等のバス６１１によって互いに通信可能に接続されている。
【００１７】
次に、実施形態のＰＣ１００、評価用ＰＣ２００の機能構成について説明する。本実施形態のＰＣ１００は、デバイスドライバの一つであるプリンタドライバが搭載されている評価用ＰＣ２００（外部装置）にネットワークで接続されており、評価用ＰＣ２００で利用されているプリンタドライバに対して、動作テストを自動化した自動テストを実行させるものである。なお、デバイスドライバとは、コンピュータ内部に装着された装置や、外部に接続した機器を制御・操作するためのソフトウェアである。
【００１８】
図２は、実施形態のＰＣおよび評価用ＰＣの構成を示す機能ブロック図である。ＰＣ１００は、評価用ＰＣ２００で利用されているプリンタドライバの自動テストを行うためのシナリオの作成や実行管理を行う。図２に示すように、ＰＣ１００は、操作受付部１０２と、シナリオ作成部１０４と、シナリオ実行指示部１０６と、通信処理部１０８と、判定部１１０と、表示制御部１１２と、を備えている。図２では、評価用ＰＣ２００に対して自動テストを実施する例を示す。
【００１９】
操作受付部１０２は、ユーザからの各種入力を受け付けるものである。本実施形態では、操作受付部１０２は、外部装置である評価用ＰＣ２００で利用されているプリンタドライバの自動テストを実施する旨の指示を受け付ける。
【００２０】
シナリオ作成部１０４は、プリンタドライバの動作テストを行うために評価用ＰＣ２００に実行させる操作コマンド（操作手順）を含むシナリオを作成し、補助記憶装置６０４（図１参照）であるＨＤＤに保存する。また、シナリオ作成部１０４は、操作手順を示す操作コマンドに対して、当該操作コマンドの操作を実行する際に用いる関連データを対応付けている。そして、作成するシナリオは、操作コマンドが評価用ＰＣ２００のＯＳおよびプリンタドライバの機能に依存しない形式となっている。なお、ＯＳとは、ソフトウェアの種類の一つで、機器の基本的な管理や制御のための機能や、多くのソフトウェアが共通して利用する基本的な機能などを実装した、システム全体を管理するソフトウェアである。
【００２１】
図３は、ＰＣで作成されたシナリオの一例を示す図である。図３に示すように、シナリオでは、評価用ＰＣ２００に実行させる操作手順を示す操作コマンドと、関連データとが対応付けられている。上述したように、ＰＣ１００と評価用ＰＣ２００との間で送受信される操作コマンドは、ＯＳおよびプリンタドライバの機能に依存しない形式となっている。
【００２２】
具体的には、例えば、自動テストの前処理にあたる操作コマンドは、「（テスト対象の）プリンタを選択する」、「印刷データ指定したアプリ（アプリケーション）で開く」、「プリンタドライバの設定画面を開く（表示する）」のように単純化されている。また、設定操作を行う操作コマンドは、「指定した画像（画像データ）の位置にマウスを移動する」、「マウスをクリックする」、「（指定した位置に）文字を入力する」のように単純化されている。
【００２３】
図３に示すように、シナリオは、「プリンタを選択する」操作コマンドに、「プリンタ名（プリンタの名称）」が関連データとして対応付けられている。これにより、自動テストの対象となるプリンタを、プリンタ名によって選択する操作を評価用ＰＣ２００に実行させる。
【００２４】
また、シナリオは、「印刷データを指定したアプリで開く」操作コマンドに、「印刷用アプリ名」と「印刷データ」が対応付けられている。これにより、自動テストで印刷するための印刷データと、印刷する際に利用する印刷用アプリとが指定でき、当該印刷データを印刷用アプリで開く操作を評価用ＰＣ２００に実行させる。
【００２５】
また、シナリオは、画像データの検索によってプリンタドライバの設定画面に対する操作位置を特定させる「指定した画像の位置にマウスを移動する」操作コマンドに、関連データとして、「検索する画像データ（操作対象の画像情報）」が対応付けられている。この「検索する画像データ」とは、位置を示す画像であって、例えば、評価用ＰＣ２００のプリンタドライバの設定画面の画像とマッチングさせることにより、操作位置を特定する。これにより、指定した画像の位置にマウスを移動する操作を評価用ＰＣ２００に実行させる。
【００２６】
また、シナリオは、上述の操作位置を特定する操作コマンドには、画像データの検索によって特定されたプリンタライバの設定画面における操作位置を、任意の方向に微調整するための位置補正情報が対応付けられている。特定した操作位置の画像とマウスなどによる操作位置に差異がある場合には、位置補正情報により、特定した操作位置の画像のすぐ下の部分など、所望の位置に操作位置を移動させて微調整する。
【００２７】
また、シナリオは、「文字を入力する」操作コマンドに、「入力する文字列」が対応付けられている。これにより、プリンタドライバの設定画面に対する文字入力個所に、任意の文字を入力させる操作を評価用ＰＣ２００に実行させる。
【００２８】
また、シナリオは、「ボタンを押す」操作コマンドに、「ボタンの画像データ」が対応付けられている。この付随された画像データと、評価用ＰＣ２００のプリンタドライバの設定画面の画像とをマッチングすることで、ボタンを特定し、決定指示などの操作を評価用ＰＣ２００に実行させる。
【００２９】
シナリオ実行指示部１０６は、操作受付部１０２により、プリンタドライバの自動テストを実施する旨の指示を受け付けた場合、シナリオ作成部１０４により作成してＨＤＤ（補助記憶装置６０４）に保存されたシナリオを読み込む。そして、シナリオ実行指示部１０６は、通信処理部１０８を介して、自動テストを行う評価用ＰＣ２００にシナリオを実行する旨の指示であるシナリオ実行指示を送信する。
【００３０】
このとき、シナリオ実行指示部１０６は、シナリオ実行指示とともに、プリンタ名、印刷用アプリ名、印刷データ、およびシナリオを、通信処理部１０８を介して評価用ＰＣ２００に送信する。また、シナリオ実行指示部１０６は、シナリオの操作コマンドに応じて、検索する画像データ、位置補正情報、入力する文字列、ボタンの画像データ等を、通信処理部１０８を介して評価用ＰＣ２００に送信する。
【００３１】
通信処理部１０８は、評価用ＰＣ２００などの外部装置との通信を行うものである。本実施形態では、通信処理部１０８は、シナリオ実行指示とともに、プリンタ名、印刷用アプリ名、印刷データなどの操作手順に付随する関連データ、および作成したシナリオを評価用ＰＣ２００に送信する。
【００３２】
また、通信処理部１０８は、シナリオ実行指示等を送信した後、評価用ＰＣ２００においてシナリオに従って実行された自動テストの操作結果を受信し、ＨＤＤ等に保存する。通信処理部１０８は、複数回の操作結果を受信した場合でも、複数回の操作結果をＨＤＤ等に保存する。
【００３３】
判定部１１０は、通信処理部１０８により受信した操作結果によって、プリンタドライバが正常に動作しているか否かを判定し、判定した結果（判定結果）をＨＤＤ等に保存して管理する。また、判定部１１０は、評価用ＰＣ２００で自動テストのシナリオに印刷処理が含まれている場合、印刷結果をプリンタに問い合わせて結果を確認する。
【００３４】
図４は、ＰＣにより判定された結果の一例を示す図である。図４に示すように、評価用ＰＣ２００でシナリオを実行した操作結果は、それぞれの操作コマンドごとに判断（ＯＫ／ＮＧ）されている。
【００３５】
そして、判定部１１０では、評価用ＰＣ２００による操作結果を自動テストの実行ごとに管理し、自動テストの回数ごとに結果を判定する。具体的には、例えば、図４に示すように１回目、２回目…のシナリオの実行に対して「自動テストの回数ごとの判定結果」として、判定（ＯＫ／ＮＧ）する。この時、判定部１１０は、全ての操作コマンドの操作結果がＯＫ（成功）であった場合にはＯＫ（正常）と判定し、一つ以上の操作コマンドの操作結果がＮＧ（失敗）であった場合にはＮＧ（異常）と判定する。
【００３６】
表示制御部１１２は、判定部１１０により判定された判定結果を表示部であるディスプレイ６０５（図１参照）に表示する。具体的には、表示制御部１１２は、図４に示すように、自動テストの回数ごとの判定結果を表示する。さらに、表示制御部１１２は、図４に示すように、最新の操作結果を表示する表示欄「最新」を設けて、最新の操作結果を表示する。これにより、自動テストの回数が多くても最新の状況を把握できる。
【００３７】
また、評価用ＰＣ２００（外部装置）は、プリンタドライバを操作する機能を備えたものであり、図２に示すように、通信処理部２０２と、シナリオ実行部２０４と、印刷用アプリ２０６と、プリンタドライバ２０８と、画面操作部２１０と、マウス操作部２１２と、キーボード操作部２１４と、表示制御部２１６と、操作結果判断部２１８とを備えている。
【００３８】
通信処理部２０２は、ＰＣ１００などの外部装置との通信を行うものである。本実施形態では、通信処理部２０２は、ＰＣ１００から、シナリオ実行指示とともに、プリンタ名、印刷用アプリ名、印刷データなどの操作手順に付随する関連データ、およびシナリオを受信する。
【００３９】
シナリオ実行部２０４は、ＰＣ１００から受信したシナリオに従って、印刷用アプリ２０６、プリンタドライバ２０８、画面操作部２１０、マウス操作部２１２、およびキーボード操作部２１４によって操作コマンドを実行させることで、プリンタドライバの自動テストを実施する。本実施形態では、ＯＳに依存する処理を、画面操作部２１０、マウス操作部２１２、およびキーボード操作部２１４等の操作部に実行させている。
【００４０】
印刷用アプリ２０６は、自動テストの評価対象のプリンタドライバを使用するアプリケーションである。例えば、図３のシナリオでは「印刷データを指定したアプリで開く」操作コマンドに、「印刷用アプリ名」と「印刷データ」が対応付けられている。これにより、印刷用アプリ２０６は、受信した印刷データを開く操作を実行する。また、印刷用アプリ２０６は、自動テストのシナリオに印刷処理が含まれていた場合、プリンタドライバ２０８を介して受信した印刷データの印刷を実行する。
【００４１】
プリンタドライバ２０８は、評価用ＰＣ２００に接続されたプリンタを制御するためのソフトウェアであって、設定画面の作成等を行う。本実施形態では、プリンタドライバ２０８は、ＰＣ１００により評価される対象のデバイスドライバである。例えば、図３のシナリオで示す「プリンタドライバの設定画面を開く」操作コマンドに従って、プリンタドライバの設定画面を開く操作を実行する。
【００４２】
図５は、設定画面の一例を示す図である。図５に示すように、設定画面には、複数の画像データ（アイコン）、操作ボタンの画像データ「ＯＫ」や、文字入力欄が表示されており、操作位置を示すためのポインタＰが表示されている。
【００４３】
画面操作部２１０は、受信したシナリオに従って、プリンタドライバ２０８により表示された設定画面に対する操作を実行する。例えば、図３のシナリオでは、「指定した画像の位置にマウスを移動する」操作コマンドに、「検索する画像データ」が対応付けられている。これにより、画面操作部２１０は、画像データの検索、すなわち付随した画像データと設定画面の画像とをマッチングさせることにより、設定画面における操作位置を特定し、指定された画像の位置にマウスを移動する操作を実行する。
【００４４】
図６は、操作結果が反映された設定画面の一例を示す図である。図６に示す設定画面では、指定した画像Ａの位置にマウスのポインタＰを移動した状態が表示されている。図７は、操作結果が反映された設定画面の他の例を示す図である。図７に示す設定画面では、指定した画像Ｂの位置にマウスのポインタＰを移動した状態が表示されている。
【００４５】
また、画面操作部２１０は、「指定した画像の位置にマウスを移動する」操作コマンドに付随した位置補正情報により、特定した操作位置の画像のすぐ下の部分など、所望の位置に操作位置を移動させて微調整する。図８は、操作結果が反映された設定画面の他の例を示す図である。図８に示す設定画面では、特定した操作位置の画像Ｃから、例えば下側に２０Ｐｉｘｅｌ移動した場所にある文字入力欄ＤをポインタＰによって指定している状態が表示されている。
【００４６】
マウス操作部２１２は、受信したシナリオに従って、マウスのクリック操作を実行する。例えば、画面操作部２１０によりマウスのポインタが移動されると、図３のシナリオの「マウスをクリックする」操作コマンドに従って、操作位置の画像をクリックする操作を実行する。例えば、図６や図７のように、マウスのポインタＰが指定された画像Ａや画像Ｂの位置にある場合に、マウスをクリックする操作を実行する。
【００４７】
キーボード操作部２１４は、受信したシナリオに従って、文字等の入力操作を実行する。例えば、図３のシナリオでは「文字を入力する」操作コマンドに、「入力する文字列」が対応付けられている。これにより、キーボード操作部２１４は、図８に示すように、画面操作部２１０によりマウスのポインタが移動されて文字入力欄Ｄを指定している場合、付随された文字列を文字入力欄Ｄに入力する操作を実行する。図９は、操作結果が反映された設定画面の他の例を示す図である。図９に示す設定画面では、指定されている文字入力欄Ｄに文字列「ＡＢＣＤＥＦＧ」が入力された状態が表示されている。
【００４８】
また、画面操作部２１０は、受信したシナリオに従って、設定画面に表示されたボタンを押下する操作を実行する。例えば、図３のシナリオでは、「ボタンを押す」操作コマンドに、「ボタンの画像データ」が対応付けられている。これにより、画面操作部２１０は、付随した操作ボタン（「ＯＫボタン」）の画像データと設定画面の画像とをマッチングさせることにより、操作ボタンの位置を特定し、指定された画像（操作ボタン）の位置にマウスを移動する操作を実行する。そして、「ボタンを押す」操作コマンドに従って、マウス操作部２１２が操作ボタンをマウスによりクリックする操作を実行する。図１０は、操作結果が反映された設定画面の他の例を示す図である。図１０に示す設定画面では、操作ボタンＥがポインタＰにより指定されている状態が表示されている。
【００４９】
表示制御部２１６は、印刷用アプリ２０６、プリンタドライバ２０８、画面操作部２１０、マウス操作部２１２、およびキーボード操作部２１４等に実行された操作結果を反映した設定画面を表示部であるディスプレイ６０５（図１参照）に表示し、シナリオの実行状況を表示する。すなわち、表示制御部２１６は、図５〜１０の設定画面などを操作に合わせて表示する。
【００５０】
操作結果判断部２１８は、シナリオ実行部２０４によりシナリオに従って実行した自動テストの操作を判断する。操作結果判断部２１８は、例えば図３に示すような「指定した画像の位置にマウスを移動する」操作コマンドが実行された場合に、想定された操作結果であった場合はＯＫ（成功）と判断し、想定外の操作結果であった場合はＮＧ（失敗）と判断する。具体的には、例えば、操作結果判断部２１８は、プリンタエンジンのシミュレータに対して操作コマンドに従ったジョブを実行し、シミュレータのパラメータや実行結果を取得することによって、自動テストによる操作の合否（ＯＫ／ＮＧ）を判断する。
【００５１】
そして、通信処理部２０２は、受信したシナリオに従って自動テストを実行し、操作結果判断部２１８により判断された操作結果をＰＣ１００に送信する。このように、それぞれの操作コマンドの操作結果（成功／失敗）をＰＣ１００に返すことで、ＰＣ１００においてプリンタドライバ２０８が正常に動作しているか否かを判定できるため、評価用ＰＣ２００のＯＳに依存せずに自動テストを実行させ、結果を判定することができる。
【００５２】
次に、実施形態のＰＣ１００から評価用ＰＣ２００、３００のプリンタドライバに対して自動テストを実施した場合の全体の処理の流れ説明する。図１１は、ＰＣから他のＰＣのプリンタドライバに対して自動テストを実施した場合の全体処理の流れを示すシーケンス図である。図１１に示す評価用ＰＣ２００と評価用ＰＣ３００とは、異なるＯＳを使用しているものとする。
【００５３】
まず、ＰＣ１００は、プリンタドライバの自動テストを実施する旨の指示を受け付けた場合、シナリオ作成部１０４は、シナリオを作成し、ＨＤＤに保存する（ステップＳ１０）。
【００５４】
シナリオ実行指示部１０６は、作成されたシナリオを読み込み（ステップＳ１２）、通信処理部１０８を介して、シナリオ実行指示等を評価用ＰＣ２００に送信する（ステップＳ１４）。シナリオ実行指示等を受信した評価用ＰＣ２００のシナリオ実行部２０４は、画面操作部２１０等に受信したシナリオに従って画面操作を実行させる（ステップＳ１６）。
【００５５】
次に、シナリオに印刷処理が含まれている場合は、印刷用アプリ２０６は、プリンタ４００による印刷を実行する（ステップＳ１８）。そして、通信処理部２０２は、操作結果判断部２１８により判断された操作結果をＰＣ１００に送信する（ステップＳ２０）。ＰＣ１００の判定部１１０は、印刷結果をプリンタ４００に問い合わせ、印刷結果を確認し（ステップＳ２２）、操作結果を判定した判定結果をＨＤＤ等に保存する。
【００５６】
また、シナリオ実行指示部１０６は、作成されたシナリオを読み込み（ステップＳ１２）、通信処理部１０８を介して、シナリオ実行指示等を評価用ＰＣ３００に送信する（ステップＳ２４）。シナリオ実行指示等を受信した評価用ＰＣ３００のシナリオ実行部は、画面操作部等に受信したシナリオに従って画面操作を実行させる（ステップＳ２６）。
【００５７】
次に、シナリオに印刷処理が含まれている場合は、印刷用アプリは、プリンタ４００による印刷を実行する（ステップＳ２８）。そして、通信処理部は、操作結果判断部により判断された操作結果をＰＣ１００に送信する（ステップＳ３０）。ＰＣ１００の判定部１１０は、印刷結果をプリンタ４００に問い合わせ、印刷結果を確認し（ステップＳ３２）、操作結果を判定した判定結果をＨＤＤ等に保存する。
【００５８】
次に、実施形態のＰＣ１００からの実行指示により、評価用ＰＣ２００において実施されるプリンタドライバの自動テストの処理の流れ説明する。図１２は、実施形態の評価用ＰＣのプリンタドライバの自動テストを実施した場合の処理の流れを示すシーケンス図である。
【００５９】
まず、ＰＣ１００においてプリンタドライバの自動テストのシナリオが作成され、保存される（ステップＳ５０）。そして、評価用ＰＣ２００の通信処理部２０２は、ＰＣ１００からシナリオ実行指示とともに、プリンタ名、印刷用アプリ名、印刷データ等の関連データ、およびシナリオを受信する（ステップＳ５２）。
【００６０】
シナリオ実行部２０４は、受信したシナリオ実行指示等に基づいて、シナリオに従った処理を実行する。具体的には、シナリオ実行部２０４は、受信したプリンタ名に基づいてプリンタ４００を選択し、印刷用アプリ２０６は、受信した印刷用アプリ名および印刷データに基づいて、印刷用アプリを起動する（ステップＳ５４）。
【００６１】
プリンタドライバ２０８は、設定画面を表示する（ステップＳ５６）。画面操作部２１０は、操作コマンドに付随する画像データにより、操作対象の画像を検索し、（ステップＳ５８）、画面操作部２１０、マウス操作部２１２、およびキーボード操作部２１４は、シナリオに従った操作（マウスクリック、文字入力、ボタン操作など）を実行する（ステップＳ６０）。
【００６２】
印刷用アプリ２０６は、シナリオに従って印刷を実行し（ステップＳ６２）、操作結果判断部２１８は、操作の結果を判断する（ステップＳ６４）。そして、シナリオに従い必要な操作処理を繰り返す（ステップＳ５８〜６４）。
【００６３】
そして、通信処理部２０２は、判断された操作結果をＰＣ１００に送信する（ステップＳ６６）。この時、通信処理部２０２は、それぞれの操作コマンドの操作結果をまとめてＰＣ１００に送信する。
【００６４】
ＰＣ１００の判定部１１０は、評価用ＰＣ２００で自動テストのシナリオに印刷処理が含まれている場合、印刷結果をプリンタに問い合わせて結果（使用した用紙や、エラーの有無等）を確認する（ステップＳ６８）。判定部１１０は、受信した操作結果によってプリンタドライバが正常に動作しているか否かを判定し、表示制御部１１２は、判定した判定結果をディスプレイ６０５に表示する（ステップＳ７０）。
【００６５】
このように、本実施形態のＰＣ１００から評価用ＰＣ２００のプリンタドライバに対する自動テストを実施する場合、ＰＣ１００に自動テストのシナリオの作成や実行管理をする構成を搭載し、評価用ＰＣ２００にプリンタドライバを操作する構成を搭載した。そして、ＰＣ１００において作成する自動テストのシナリオに含まれる操作コマンドは、プリンタドライバやＯＳに依存しない一般的な形式とする。ＰＣ１００により作成されたシナリオを評価用ＰＣ２００に送信し、評価用ＰＣ２００はシナリオに従った操作を実行して、操作結果をＰＣ１００に送信する。そして、ＰＣ１００は、受信した操作結果を判定し、判定結果を表示部に表示する。これにより、ユーザはプリンタドライバが搭載された評価用ＰＣを切り替えることで、容易に異なるＯＳのプリンタドライバに対して自動テストを実行して評価することができる。すなわち、複数のＰＣにおける異なるＯＳ上で動作するプリンタドライバに対して自動テストを実行することができる。
【００６６】
また、プリンタドライバを搭載している評価用ＰＣ２００では、機種依存の処理として、テスト文書（印刷データ）を印刷するための印刷用アプリを起動し、プリンタドライバの設定画面を表示する処理と、画面操作処理が必要となる。印刷用アプリの起動処理はＯＳごとに作成しなくてはならないが、画面に対する制御処理は既存の技術を利用することによって開発が容易になる。このため、新たなＯＳに対応させて自動テストを実施する場合でも、少ない工数で対応することができる。
【００６７】
また、本実施形態のＰＣ１００では、判定部１１０により判定された判定結果を表示部（ディスプレイ）に表示する構成となっているが、音声等によって判定結果を出力する構成としてもよい。
【００６８】
本実施形態のＰＣで実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【００６９】
また、本実施形態のＰＣで実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態のＰＣで実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。また、本実施形態のＰＣで実行されるプログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【００７０】
本実施形態のＰＣで実行されるプログラムは、上述した各部（操作受付部１０２、シナリオ作成部１０４、シナリオ実行指示部１０６、通信処理部１０８、判定部１１０、表示制御部１１２）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記記憶媒体からプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、上記各部が主記憶装置上に生成されるようになっている。また、例えば、上述した各部の機能のうちの一部または全部が専用のハードウェア回路で実現されてもよい。
【符号の説明】
【００７１】
１００  ＰＣ
１０２  操作受付部
１０４  シナリオ作成部
１０６  シナリオ実行指示部
１０８  通信処理部
１１０  判定部
１１２  表示制御部
２００、３００  評価用ＰＣ
２０２  通信処理部
２０４  シナリオ実行部
２０６  印刷用アプリ
２０８  プリンタドライバ
２１０  画面操作部
２１２  マウス操作部
２１４  キーボード操作部
２１６  表示制御部
２１８  操作結果判断部
４００  プリンタ
６０１  ＣＰＵ
６０２  ＲＯＭ
６０３  ＲＡＭ
６０４  補助記憶装置
６０５  ディスプレイ
６０６  ネットワークＩ／Ｆ
６０７  キーボード
６０８  マウス
６１１  バス
【先行技術文献】
【特許文献】
【００７２】
【特許文献１】特開２０１２−３８１６２号公報
【図１】
2017010462.tif 000003
【図２】
2017010462.tif 000004
【図３】
2017010462.tif 000005
【図４】
2017010462.tif 000006
【図５】
2017010462.tif 000007
【図６】
2017010462.tif 000008
【図７】
2017010462.tif 000009
【図８】
2017010462.tif 000010
【図９】
2017010462.tif 000011
【図１０】
2017010462.tif 000012
【図１１】
2017010462.tif 000013
【図１２】
2017010462.tif 000014