(57)【要約】【課題】  電子機器のプラットフォームをテストすることができるプラットフォームテストシステム、電子機器およびテストプログラムを提供する。【解決手段】  プラットフォームテストシステムは、ＡＰＩを提供するためのプラットフォームと、プラットフォームのテストのためのテストプログラムとを備えるＭＦＰ２０と、テストの仕様がスクリプト言語で作成されたテストコードをＭＦＰ２０に送信するコンピューター３０とを備え、テストプログラムは、Ｓ７１においてコンピューター３０からＭＦＰ２０に送信されてきたテストコードをＭＦＰ２０に解釈させ（Ｓ７２）、Ｓ７２における解釈結果に応じてＭＦＰ２０にＡＰＩを呼び出させる（Ｓ７３）ことを特徴とする。【選択図】  図５
2018136652.tif 000002
【特許請求の範囲】
【請求項１】
ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供するためのプラットフォームと、
前記プラットフォームのテストのためのテストプログラムと
を備える電子機器と、
前記テストの仕様がスクリプト言語で作成されたテストコードを前記電子機器に送信するコンピューターと
を備え、
前記テストプログラムは、
前記コンピューターから送信されてきた前記テストコードを解釈するコード解釈手段と、
前記コード解釈手段による解釈結果に応じて前記ＡＰＩを呼び出すＡＰＩ呼出手段と
を前記電子機器に実現させることを特徴とするプラットフォームテストシステム。
【請求項２】
前記コンピューターは、スクリプト言語で作成されて前記テストコードから参照可能なライブラリーを前記電子機器に送信し、
前記コード解釈手段は、前記コンピューターから送信されてきた前記ライブラリーを参照して前記テストコードを解釈することを特徴とする請求項１に記載のプラットフォームテストシステム。
【請求項３】
前記コンピューターは、前記仕様を通知するための仕様通知情報を前記テストコードから生成することを特徴とする請求項１または請求項２に記載のプラットフォームテストシステム。
【請求項４】
ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供するためのプラットフォームと、
前記プラットフォームのテストのためのテストプログラムと
を備え、前記テストの仕様がスクリプト言語で作成されたテストコードが外部から送信されてくる電子機器であって、
前記テストプログラムは、
外部から送信されてきた前記テストコードを解釈するコード解釈手段と、
前記コード解釈手段による解釈結果に応じて前記ＡＰＩを呼び出すＡＰＩ呼出手段と
を前記電子機器に実現させることを特徴とする電子機器。
【請求項５】
ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供するためのプラットフォームを備える電子機器の前記プラットフォームのテストのためのテストプログラムであって、
前記テストの仕様がスクリプト言語で作成されたテストコードが外部から送信されてくる電子機器に、
外部から送信されてきた前記テストコードを解釈するコード解釈手段と、
前記コード解釈手段による解釈結果に応じて前記ＡＰＩを呼び出すＡＰＩ呼出手段と
を実現させることを特徴とするテストプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器のプラットフォームをテストするためのプラットフォームテストシステム、電子機器およびテストプログラムに関する。
【背景技術】
【０００２】
従来、電子機器のアプリケーションをテストするための技術が知られている（例えば、特許文献１−３参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１５４８８０号公報
【特許文献２】特開２０１０−１９８４７９号公報
【特許文献３】特開２０１０−２１８４９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１−３に記載された技術は、電子機器のアプリケーションをテストすることができるが、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供するためのプラットフォームを備えた電子機器のプラットフォームをテストすることができないという問題がある。
【０００５】
そこで、本発明は、電子機器のプラットフォームをテストすることができるプラットフォームテストシステム、電子機器およびテストプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のプラットフォームテストシステムは、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供するためのプラットフォームと、前記プラットフォームのテストのためのテストプログラムとを備える電子機器と、前記テストの仕様がスクリプト言語で作成されたテストコードを前記電子機器に送信するコンピューターとを備え、前記テストプログラムは、前記コンピューターから送信されてきた前記テストコードを解釈するコード解釈手段と、前記コード解釈手段による解釈結果に応じて前記ＡＰＩを呼び出すＡＰＩ呼出手段とを前記電子機器に実現させることを特徴とする。
【０００７】
この構成により、本発明のプラットフォームテストシステムは、テストの仕様がスクリプト言語で作成されたテストコードを電子機器が解釈して、その解釈結果に応じて電子機器がプラットフォームのＡＰＩを呼び出すので、電子機器のプラットフォームをテストすることができる。
【０００８】
本発明のプラットフォームテストシステムにおいて、前記コンピューターは、スクリプト言語で作成されて前記テストコードから参照可能なライブラリーを前記電子機器に送信し、前記コード解釈手段は、前記コンピューターから送信されてきた前記ライブラリーを参照して前記テストコードを解釈しても良い。
【０００９】
この構成により、本発明のプラットフォームテストシステムは、電子機器がライブラリーを参照してテストコードを解釈するので、テストコードの作成者によるテストコードの作成を容易化することができる。
【００１０】
本発明のプラットフォームテストシステムにおいて、前記コンピューターは、前記仕様を通知するための仕様通知情報を前記テストコードから生成しても良い。
【００１１】
この構成により、本発明のプラットフォームテストシステムは、テストの仕様を通知するための仕様通知情報をコンピューターがテストコードから生成するので、テストの実施者に仕様通知情報によってテストの仕様を認識させながらテストを実施することができる。
【００１２】
本発明の電子機器は、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供するためのプラットフォームと、前記プラットフォームのテストのためのテストプログラムとを備え、前記テストの仕様がスクリプト言語で作成されたテストコードが外部から送信されてくる電子機器であって、前記テストプログラムは、外部から送信されてきた前記テストコードを解釈するコード解釈手段と、前記コード解釈手段による解釈結果に応じて前記ＡＰＩを呼び出すＡＰＩ呼出手段とを前記電子機器に実現させることを特徴とする。
【００１３】
この構成により、本発明の電子機器は、テストの仕様がスクリプト言語で作成されたテストコードを解釈して、その解釈結果に応じてプラットフォームのＡＰＩを呼び出すので、プラットフォームをテストすることができる。
【００１４】
本発明のテストプログラムは、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供するためのプラットフォームを備える電子機器の前記プラットフォームのテストのためのテストプログラムであって、前記テストの仕様がスクリプト言語で作成されたテストコードが外部から送信されてくる電子機器に、外部から送信されてきた前記テストコードを解釈するコード解釈手段と、前記コード解釈手段による解釈結果に応じて前記ＡＰＩを呼び出すＡＰＩ呼出手段とを実現させることを特徴とする。
【００１５】
この構成により、本発明のテストプログラムを実行する電子機器は、テストの仕様がスクリプト言語で作成されたテストコードを解釈して、その解釈結果に応じてプラットフォームのＡＰＩを呼び出すので、プラットフォームをテストすることができる。
【発明の効果】
【００１６】
本発明のプラットフォームテストシステム、電子機器およびテストプログラムは、電子機器のプラットフォームをテストすることができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施の形態に係るプラットフォームテストシステムのブロック図である。
【図２】図１に示すＭＦＰのブロック図である。
【図３】図１に示すコンピューターのブロック図である。
【図４】仕様通知情報を表示部に表示する場合の図３に示すコンピューターの動作のフローチャートである。
【図５】プラットフォームのテストを実行する場合の図１に示すプラットフォームテストシステムの動作のシーケンス図である。
【発明を実施するための形態】
【００１８】
以下、本発明の一実施の形態について、図面を用いて説明する。
【００１９】
まず、本実施の形態に係るプラットフォームテストシステムの構成について説明する。
【００２０】
図１は、本実施の形態に係るプラットフォームテストシステム１０のブロック図である。
【００２１】
図１に示すように、プラットフォームテストシステム１０は、電子機器としてのＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）２０と、ＭＦＰ２０と通信可能なコンピューター３０とを備えている。
【００２２】
図２は、ＭＦＰ２０のブロック図である。
【００２３】
図２に示すように、ＭＦＰ２０は、種々の操作が入力されるボタンなどの入力デバイスである操作部２１と、種々の情報を表示するＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）などの表示デバイスである表示部２２と、用紙などの記録媒体に画像を印刷する印刷デバイスであるプリンター２３と、原稿から画像を読み取る読取デバイスであるスキャナー２４と、図示していない外部のファクシミリ装置と公衆電話回線などの通信回線経由でファックス通信を行うファックスデバイスであるファックス通信部２５と、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク経由で、または、ネットワークを介さずに有線または無線によって直接に、外部の装置と通信を行う通信デバイスである通信部２６と、各種の情報を記憶する半導体メモリー、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの不揮発性の記憶デバイスである記憶部２７と、ＭＦＰ２０全体を制御する制御部２８とを備えている。
【００２４】
記憶部２７は、種々のアプリケーションを動作させるためのプラットフォーム２７ａを記憶している。プラットフォーム２７ａは、ＭＦＰ２０の製造段階でＭＦＰ２０にインストールされていても良いし、ＵＳＢメモリーなどの外部の記憶媒体からＭＦＰ２０に追加でインストールされても良いし、ネットワーク上からＭＦＰ２０に追加でインストールされても良い。
【００２５】
プラットフォーム２７ａは、ファックス通信部２５を介してＦＡＸ送信したりＦＡＸ受信したりするＦＡＸ機能用のコンポーネント、印刷データに基づいてプリンター２３によって記録媒体に画像を印刷するプリント機能用のコンポーネント、特定の条件の場合にＭＦＰ２０の電源の少なくとも一部を落とすスリープ機能用のコンポーネントなど、ＭＦＰ２０の機能毎の様々なコンポーネントを利用するための様々なＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）２７ｂを含んでいる。
【００２６】
記憶部２７は、プラットフォーム２７ａ上で動作する様々なアプリケーション２７ｃを記憶可能である。アプリケーション２７ｃは、ＭＦＰ２０の製造段階でＭＦＰ２０にインストールされていても良いし、ＵＳＢメモリーなどの外部の記憶媒体からＭＦＰ２０に追加でインストールされても良いし、ネットワーク上からＭＦＰ２０に追加でインストールされても良い。
【００２７】
記憶部２７は、プラットフォーム２７ａのテストのためのテストプログラム２７ｄを記憶可能である。テストプログラム２７ｄは、アプリケーション２７ｃの一種である。テストプログラム２７ｄは、ＭＦＰ２０の製造段階でＭＦＰ２０にインストールされていても良いし、ＵＳＢメモリーなどの外部の記憶媒体からＭＦＰ２０に追加でインストールされても良いし、ネットワーク上からＭＦＰ２０に追加でインストールされても良い。
【００２８】
制御部２８は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、プログラムおよび各種のデータを記憶しているＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）と、ＣＰＵの作業領域として用いられるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）とを備えている。ＣＰＵは、ＲＯＭまたは記憶部２７に記憶されているプログラムを実行する。
【００２９】
制御部２８は、テストプログラム２７ｄを実行することによって、コンピューター３０（図１参照。）から送信されてきた後述のテストコードを解釈するコード解釈手段２８ａと、プラットフォーム２７ａによって提供されるＡＰＩ２７ｂをコード解釈手段２８ａによる解釈結果に応じて呼び出すＡＰＩ呼出手段２８ｂとを実現する。
【００３０】
図３は、コンピューター３０のブロック図である。
【００３１】
図３に示すように、コンピューター３０は、種々の操作が入力されるボタンなどの入力デバイスである操作部３１と、種々の情報を表示するＬＣＤなどの表示デバイスである表示部３２と、ＬＡＮ、インターネットなどのネットワーク経由で、または、ネットワークを介さずに有線または無線によって直接に、外部の装置と通信を行う通信デバイスである通信部３３と、各種の情報を記憶する半導体メモリー、ＨＤＤなどの不揮発性の記憶デバイスである記憶部３４と、コンピューター３０全体を制御する制御部３５とを備えている。コンピューター３０は、例えば、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）によって構成されても良い。
【００３２】
記憶部３４は、プラットフォーム２７ａ（図２参照。）のテストの仕様、すなわち、テストの内容がスクリプト言語で作成されたテストコード３４ａを記憶可能である。テストコード３４ａは、テストの仕様がコメントとして記載されている。テストコード３４ａは、例えば、テストの実施者によって作成される。なお、スクリプト言語とは、自然言語としてある程度理解可能な粒度の文字列である。
【００３３】
記憶部３４は、スクリプト言語で作成されてテストコード３４ａから参照可能なライブラリー３４ｂを記憶可能である。ライブラリー３４ｂは、例えば、テストの実施者や、プラットフォーム２７ａの開発者によって作成される。ライブラリー３４ｂの命令の粒度は、例えば、「・・・を設定する」、「・・・を実行する」など、プラットフォームのテストの一般的な仕様書に記載されているものと同程度の粒度にする。すなわち、ライブラリー３４ｂは、使用される可能性が高い命令が纏められたものである。
【００３４】
制御部３５は、例えば、ＣＰＵと、プログラムおよび各種のデータを記憶しているＲＯＭと、ＣＰＵの作業領域として用いられるＲＡＭとを備えている。ＣＰＵは、ＲＯＭまたは記憶部３４に記憶されているプログラムを実行する。
【００３５】
制御部３５は、ＲＯＭまたは記憶部３４に記憶されているプログラムを実行することによって、テストコード３４ａおよびライブラリー３４ｂをＭＦＰ２０に送信するコード送信手段３５ａと、プラットフォーム２７ａのテストの仕様を通知するための仕様通知情報をテストコード３４ａから生成する通知情報生成手段３５ｂと、通知情報生成手段３５ｂによって生成された仕様通知情報を表示部３２に表示する通知情報表示手段３５ｃとを実現する。
【００３６】
次に、プラットフォームテストシステム１０の動作について説明する。
【００３７】
まず、仕様通知情報を表示部３２に表示する場合のコンピューター３０の動作について説明する。
【００３８】
図４は、仕様通知情報を表示部３２に表示する場合のコンピューター３０の動作のフローチャートである。
【００３９】
テストの実施者は、仕様通知情報をコンピューター３０の表示部３２に表示する指示をコンピューター３０の操作部３１に入力することができる。コンピューター３０の制御部３５は、仕様通知情報を表示部３２に表示する指示が操作部３１に入力されると、図４に示す動作を実行する。
【００４０】
図４に示すように、コンピューター３０の通知情報生成手段３５ｂは、テストコード３４ａにコメントとして記載されている「テストの仕様」から仕様通知情報を生成する（Ｓ６１）。ここで、仕様通知情報は、例えば、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ファイルによって構成されても良い。
【００４１】
通知情報表示手段３５ｃは、Ｓ６１の処理の後、Ｓ６１において生成された仕様通知情報を表示部３２に表示して（Ｓ６２）、図４に示す動作を終了する。
【００４２】
したがって、テストの実施者は、プラットフォーム２７ａのテストを実施する際に、表示部３２に表示された仕様通知情報を確認することができる。
【００４３】
次に、プラットフォーム２７ａのテストを実行する場合のプラットフォームテストシステム１０の動作について説明する。
【００４４】
図５は、プラットフォーム２７ａのテストを実行する場合のプラットフォームテストシステム１０の動作のシーケンス図である。
【００４５】
テストの実施者は、テストコード３４ａおよびライブラリー３４ｂをＭＦＰ２０に送信する指示をコンピューター３０の操作部３１に入力することができる。コンピューター３０の制御部３５は、テストコード３４ａおよびライブラリー３４ｂをＭＦＰ２０に送信する指示が操作部３１に入力されると、図５に示す動作を実行する。
【００４６】
図５に示すように、コンピューター３０のコード送信手段３５ａは、テストコード３４ａおよびライブラリー３４ｂをＭＦＰ２０に送信する（Ｓ７１）。
【００４７】
ＭＦＰ２０のコード解釈手段２８ａは、テストコードおよびライブラリーがＳ７１においてコンピューター３０から送信されてくると、コンピューター３０から送信されてきたテストコードを、コンピューター３０から送信されてきたライブラリーを参照して解釈する（Ｓ７２）。
【００４８】
ＡＰＩ呼出手段２８ｂは、Ｓ７２における解釈結果に応じてプラットフォーム２７ａのＡＰＩ２７ｂを呼び出して（Ｓ７３）、図５に示す動作を終了する。
【００４９】
以上に説明したように、プラットフォームテストシステム１０は、テストの仕様がスクリプト言語で作成されたテストコードをＭＦＰ２０が解釈して（Ｓ７２）、その解釈結果に応じてＭＦＰ２０がプラットフォーム２７ａのＡＰＩ２７ｂを呼び出す（Ｓ７３）ので、ＭＦＰ２０のプラットフォーム２７ａをテストすることができる。
【００５０】
プラットフォームテストシステム１０は、ＭＦＰ２０がライブラリーを参照してテストコードを解釈する（Ｓ７２）ので、テストコードの作成者によるテストコードの作成を容易化することができる。例えば、プラットフォーム２７ａに詳しくない人でも、ライブラリーに含まれる命令を使用することによって、自然言語に近い記述でテストコードを容易に作成することができる。
【００５１】
なお、ライブラリーに含まれる命令は、ライブラリーにおけるこの命令のスクリプト言語による記述のまま、テストコードに記述されることによって、テストコードから参照される必要がなくなる。
【００５２】
プラットフォームテストシステム１０は、プラットフォーム２７ａのテストの仕様を通知するための仕様通知情報をコンピューター３０がテストコード３４ａから生成する（Ｓ６１）ので、テストの実施者に仕様通知情報によってテストの仕様を認識させながらテストを実施することができる。
【００５３】
なお、テストプログラム２７ｄは、コンピューター３０から送信されてきたテストコードを実行するのみの単純なもので良く、プラットフォーム２７ａ、テストコードおよびライブラリーの何れが変更されても変更される必要がない。
【００５４】
本発明の電子機器は、本実施の形態においてＭＦＰであるが、プリンター専用機、コピー専用機など、ＭＦＰ以外の画像形成装置でも良いし、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）など、画像形成装置以外の電子機器でも良い。
【符号の説明】
【００５５】
１０  プラットフォームテストシステム
２０  ＭＦＰ（電子機器）
２７ａ  プラットフォーム
２７ｂ  ＡＰＩ
２７ｄ  テストプログラム
２８ａ  コード解釈手段
２８ｂ  ＡＰＩ呼出手段
３０  コンピューター
３４ａ  テストコード
３４ｂ  ライブラリー
【図１】
2018136652.tif 000003
【図２】
2018136652.tif 000004
【図３】
2018136652.tif 000005
【図４】
2018136652.tif 000006
【図５】
2018136652.tif 000007