(57)【要約】【課題】  システムのＵＩからの操作に対する、このシステムの異常を自動で検知することができる異常検知システムおよび異常検知プログラムを提供する。【解決手段】  画像形成装置を遠隔管理する遠隔管理システムの異常を検知する異常検知システムは、遠隔管理システムのＵＩとしてのＷｅｂアプリケーションからの操作に対する遠隔管理システムの正常性のテストとしてのＵＩテストを自動で実行し（Ｓ６２）、実行したＵＩテストの結果に応じて遠隔管理システムの異常を通知することを特徴とする。【選択図】  図９
2020201640.tif 000002
【特許請求の範囲】
【請求項１】
システムの異常を検知する異常検知システムであって、
前記システムのＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）からの操作に対する前記システムの正常性のテストを自動で実行するテスト実行部と、
前記テスト実行部によって実行された前記テストの結果に応じて前記異常を通知する異常通知部と
を備えることを特徴とする異常検知システム。
【請求項２】
前記テストは、前記テストにおける出力の内容の異常を検知するためのものであることを特徴とする請求項１に記載の異常検知システム。
【請求項３】
前記テストは、前記テストの所要時間の異常を検知するためのものであることを特徴とする請求項１または請求項２に記載の異常検知システム。
【請求項４】
システムの異常を検知するための異常検知プログラムであって、
前記システムのＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）からの操作に対する前記システムの正常性のテストを自動で実行するテスト実行部と、
前記テスト実行部によって実行された前記テストの結果に応じて前記異常を通知する異常通知部と
をコンピューターに実現させることを特徴とする異常検知プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムの異常を検知する異常検知システムおよび異常検知プログラムに関する。
【背景技術】
【０００２】
従来、サーバーのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）の使用率の上昇などに基づいて、このサーバーの異常を検知するものが知られている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２４２９０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術においては、サーバーのＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）からの操作に対する、このサーバーの異常を検知することができないので、サーバーのＵＩからの操作に対する、このサーバーの異常が、利用者からの指摘によって初めて把握されるという問題がある。
【０００５】
そこで、本発明は、システムのＵＩからの操作に対する、このシステムの異常を自動で検知することができる異常検知システムおよび異常検知プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の異常検知システムは、システムの異常を検知する異常検知システムであって、前記システムのＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）からの操作に対する前記システムの正常性のテストを自動で実行するテスト実行部と、前記テスト実行部によって実行された前記テストの結果に応じて前記異常を通知する異常通知部とを備えることを特徴とする。
【０００７】
この構成により、本発明の異常検知システムは、システムのＵＩからの操作に対する、このシステムの正常性のテストを自動で実行し、このテストの結果に応じてシステムの異常を通知するので、システムのＵＩからの操作に対する、このシステムの異常を自動で検知することができる。
【０００８】
本発明の異常検知システムにおいて、前記テストは、前記テストにおける出力の内容の異常を検知するためのものであっても良い。
【０００９】
この構成により、本発明の異常検知システムは、システムのＵＩからの操作に対する、このシステムの出力の内容の異常を自動で検知することができる。
【００１０】
本発明の異常検知システムにおいて、前記テストは、前記テストの所要時間の異常を検知するためのものであっても良い。
【００１１】
この構成により、本発明の異常検知システムは、システムのＵＩからの操作に対する、このシステムの出力までの所要時間の異常を自動で検知することができる。
【００１２】
本発明の異常検知プログラムは、システムの異常を検知するための異常検知プログラムであって、前記システムのＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）からの操作に対する前記システムの正常性のテストを自動で実行するテスト実行部と、前記テスト実行部によって実行された前記テストの結果に応じて前記異常を通知する異常通知部とをコンピューターに実現させることを特徴とする。
【００１３】
この構成により、本発明の異常検知プログラムを実行するコンピューターは、システムのＵＩからの操作に対する、このシステムの正常性のテストを自動で実行し、このテストの結果に応じてシステムの異常を通知するので、システムのＵＩからの操作に対する、このシステムの異常を自動で検知することができる。
【発明の効果】
【００１４】
本発明の異常検知システムおよび異常検知プログラムは、システムのＵＩからの操作に対する、このシステムの異常を自動で検知することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施の形態に係るシステムのブロック図である。
【図２】１台のコンピューターによって構成される場合の図１に示す遠隔管理システムのブロック図である。
【図３】１台のコンピューターによって構成される場合の図１に示す監視システムのブロック図である。
【図４】１台のコンピューターによって構成される場合の図１に示すＵＩテストシステムのブロック図である。
【図５】図４に示すテストシナリオテーブルの一例を示す図である。
【図６】図４に示すテストケーステーブルの一例を示す図である。
【図７】図４に示すパラメーターテーブルの一例を示す図である。
【図８】図４に示すテスト結果データベースの一例を示す図である。
【図９】ＵＩテストを実行する場合の図４に示すＵＩテストシステムの動作のフローチャートである。
【図１０】監視システムにメッセージを送信するか否かを判断する場合の図４に示すＵＩテストシステムの動作のフローチャートである。
【図１１】ＵＩテストシステムからメッセージを受信した場合の図３に示す監視システムの動作のフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態について、図面を用いて説明する。
【００１７】
まず、本発明の一実施の形態に係るシステムの構成について説明する。
【００１８】
図１は、本実施の形態に係るシステム１０のブロック図である。
【００１９】
図１に示すように、システム１０は、画像形成装置を管理する業者（以下「管理業者」という。）の客のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などのネットワーク２０を備えている。システム１０は、ネットワーク２０以外にも、ネットワーク２０と同様の構成のネットワークを少なくとも１つ備えることが可能である。
【００２０】
ネットワーク２０は、ネットワーク２０の内部と、ネットワーク２０の外部との間の通信を制御するファイアウォール２１と、画像形成装置２２とを備えている。ネットワーク２０は、画像形成装置２２以外にも、画像形成装置２２と同様の構成の画像形成装置を少なくとも１つ備えることが可能である。ネットワーク２０における画像形成装置は、例えば、ＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）、プリンター専用機などによって構成されており、管理業者の客によって使用される。
【００２１】
システム１０は、システム１０における各画像形成装置を遠隔管理する遠隔管理システム３０を備えている。遠隔管理システム３０は、例えば世界中に配置されている、例えば数百万台などの膨大な数の画像形成装置を管理することが可能である。遠隔管理システム３０は、管理業者によって使用される。遠隔管理システム３０は、１台のコンピューターによって構成されても良いし、複数台のコンピューターによって構成されても良い。以下において、遠隔管理システム３０は、パブリッククラウドのクラウドプラットフォーム上で動作するものとして説明する。
【００２２】
遠隔管理システム３０にはインターネットを介して多数の画像形成装置が接続可能であるので、遠隔管理システム３０を構成するサーバーの能力は、遠隔管理システム３０に接続される画像形成装置の増加に伴って、機動的に拡大される。また、遠隔管理システム３０が動作するクラウドプラットフォームは、このクラウドプラットフォームのシステム障害やメンテナンスのために、遠隔管理システム３０が把握していないタイミングで、システムの一部がダウンする場合がある。
【００２３】
システム１０は、遠隔管理システム３０を監視する監視システム４０を備えている。監視システム４０は、管理業者によって使用される。監視システム４０は、１台のコンピューターによって構成されても良いし、複数台のコンピューターによって構成されても良い。
【００２４】
システム１０は、遠隔管理システム３０のＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）からの操作に対する遠隔管理システム３０の正常性のテスト（以下「ＵＩテスト」という。）を実行する異常検知システムとしてのＵＩテストシステム５０を備えている。ＵＩテストシステム５０は、管理業者によって使用される。ＵＩテストシステム５０は、１台のコンピューターによって構成されても良いし、複数台のコンピューターによって構成されても良い。
【００２５】
監視システム４０を構成するコンピューターと、ＵＩテストシステム５０を構成するコンピューターとは、少なくとも一部が同一でも良い。
【００２６】
システム１０における各ネットワークと、遠隔管理システム３０と、監視システム４０と、ＵＩテストシステム５０とは、インターネット１１を介して互いに通信可能である。
【００２７】
図２は、１台のコンピューターによって構成される場合の遠隔管理システム３０のブロック図である。
【００２８】
図２に示す遠隔管理システム３０は、種々の操作が入力される例えばキーボード、マウスなどの操作デバイスである操作部３１と、種々の情報を表示する例えばＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）などの表示デバイスである表示部３２と、ＬＡＮ、インターネットなどのネットワーク経由で、または、ネットワークを介さずに有線または無線によって直接に、外部の装置と通信を行う通信デバイスである通信部３３と、各種の情報を記憶する例えば半導体メモリー、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの不揮発性の記憶デバイスである記憶部３４と、遠隔管理システム３０全体を制御する制御部３５とを備えている。
【００２９】
記憶部３４は、利用者に遠隔管理システム３０を操作させるためのＷｅｂアプリケーションプログラム３４ａを記憶している。記憶部３４は、Ｗｅｂアプリケーションプログラム３４ａと同様なＷｅｂアプリケーションを少なくとも１つ記憶することが可能である。Ｗｅｂアプリケーションプログラムは、例えば、遠隔管理システム３０の製造段階で遠隔管理システム３０にインストールされていても良いし、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリーなどの外部の記憶媒体から監視システム４０に追加でインストールされても良いし、ネットワーク上から遠隔管理システム３０に追加でインストールされても良い。
【００３０】
制御部３５は、例えば、ＣＰＵと、プログラムおよび各種のデータを記憶しているＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）と、制御部３５のＣＰＵの作業領域として用いられるメモリーとしてのＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）とを備えている。制御部３５のＣＰＵは、記憶部３４または制御部３５のＲＯＭに記憶されているプログラムを実行する。
【００３１】
制御部３５は、Ｗｅｂアプリケーションプログラム３４ａを実行することによって、利用者に遠隔管理システム３０を操作させるためのＷｅｂアプリケーション３５ａをＵＩとして実現する。同様に、制御部３５は、Ｗｅｂアプリケーションプログラム３４ａ以外のＷｅｂアプリケーションプログラムに関しても、Ｗｅｂアプリケーションプログラムを実行することによって、利用者に遠隔管理システム３０を操作させるためのＷｅｂアプリケーションをＵＩとして実現する。遠隔管理システム３０のＷｅｂアプリケーションには、それぞれ、アクセスするための固有のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）が付されている。遠隔管理システム３０の利用者は、図示していないコンピューターのＷｅｂブラウザーを介してインターネット１１経由で遠隔管理システム３０のＷｅｂアプリケーションにアクセスすることによって、ＷｅｂブラウザーおよびＷｅｂアプリケーションを介して遠隔管理システム３０を操作することができる。
【００３２】
図３は、１台のコンピューターによって構成される場合の監視システム４０のブロック図である。
【００３３】
図３に示す監視システム４０は、種々の操作が入力される例えばキーボード、マウスなどの操作デバイスである操作部４１と、種々の情報を表示する例えばＬＣＤなどの表示デバイスである表示部４２と、ＬＡＮ、インターネットなどのネットワーク経由で、または、ネットワークを介さずに有線または無線によって直接に、外部の装置と通信を行う通信デバイスである通信部４３と、各種の情報を記憶する例えば半導体メモリー、ＨＤＤなどの不揮発性の記憶デバイスである記憶部４４と、監視システム４０全体を制御する制御部４５とを備えている。
【００３４】
記憶部４４は、遠隔管理システム３０（図２参照。）を監視するための監視プログラム４４ａを記憶している。監視プログラム４４ａは、例えば、監視システム４０の製造段階で監視システム４０にインストールされていても良いし、ＣＤ、ＤＶＤ、ＵＳＢメモリーなどの外部の記憶媒体から監視システム４０に追加でインストールされても良いし、ネットワーク上から監視システム４０に追加でインストールされても良い。
【００３５】
記憶部４４は、各種の情報の連絡先を示す連絡先情報４４ｂを記憶している。連絡先情報４４ｂに示される連絡先は、例えば電子メールアドレスである。連絡先情報４４ｂは、例えば、遠隔管理システム３０の開発者の連絡先や、遠隔管理システム３０の利用者の連絡先など、複数の連絡先を示しても良い。
【００３６】
制御部４５は、例えば、ＣＰＵと、プログラムおよび各種のデータを記憶しているＲＯＭと、制御部４５のＣＰＵの作業領域として用いられるメモリーとしてのＲＡＭとを備えている。制御部４５のＣＰＵは、記憶部４４または制御部４５のＲＯＭに記憶されているプログラムを実行する。
【００３７】
制御部４５は、監視プログラム４４ａを実行することによって、遠隔管理システム３０の各構成要素の負荷量などを監視する構成要素監視部４５ａと、構成要素監視部４５ａによる監視結果が事前に定めた条件を満たす場合に、連絡先情報４４ｂに示す連絡先に対して通知を実行する通知実行部４５ｂとを実現する。
【００３８】
図４は、１台のコンピューターによって構成される場合のＵＩテストシステム５０のブロック図である。
【００３９】
図４に示すＵＩテストシステム５０は、種々の操作が入力される例えばキーボード、マウスなどの操作デバイスである操作部５１と、種々の情報を表示する例えばＬＣＤなどの表示デバイスである表示部５２と、ＬＡＮ、インターネットなどのネットワーク経由で、または、ネットワークを介さずに有線または無線によって直接に、外部の装置と通信を行う通信デバイスである通信部５３と、各種の情報を記憶する例えば半導体メモリー、ＨＤＤなどの不揮発性の記憶デバイスである記憶部５４と、ＵＩテストシステム５０全体を制御する制御部５５とを備えている。
【００４０】
記憶部５４は、ＷｅｂページにアクセスするためのＷｅｂブラウザープログラム５４ａと、ＵＩテストを実行するための異常検知プログラムとしてのＵＩテストプログラム５４ｂとを記憶している。Ｗｅｂブラウザープログラム５４ａおよびＵＩテストプログラム５４ｂは、それぞれ、例えば、ＵＩテストシステム５０の製造段階でＵＩテストシステム５０にインストールされていても良いし、ＣＤ、ＤＶＤ、ＵＳＢメモリーなどの外部の記憶媒体からＵＩテストシステム５０に追加でインストールされても良いし、ネットワーク上からＵＩテストシステム５０に追加でインストールされても良い。
【００４１】
記憶部５４は、ＵＩテストのための各種の設定を示すテスト設定データベース５４ｃを記憶している。テスト設定データベース５４ｃは、ＵＩテストのシナリオを示すテストシナリオテーブル５４ｄと、シナリオの少なくとも一部を構成するテストケースを示すテストケーステーブル５４ｅと、ＵＩテストにおいて使用されるパラメーターを示すパラメーターテーブル５４ｆとを含む。テストシナリオテーブル５４ｄに示される各シナリオは、他のシナリオとの識別用のＩＤ（以下「シナリオＩＤ」という。）が付されている。テストケーステーブル５４ｅに示される各テストケースは、他のテストケースとの識別用のＩＤ（以下「テストケースＩＤ」という。）が付されている。パラメーターテーブル５４ｆに示されるパラメーターの各群は、他の群との識別用のＩＤ（以下「パラメーターＩＤ」という。）が付されている。テスト設定データベース５４ｃにおける各種のデータは、操作部５１または通信部５３を介して設定されることが可能である。
【００４２】
図５は、テストシナリオテーブル５４ｄの一例を示す図である。
【００４３】
図５に示すように、テストシナリオテーブル５４ｄは、シナリオ毎にデータを含む。各シナリオのデータは、シナリオＩＤと、シナリオの名称としてのシナリオ名と、シナリオを自動で繰り返す間隔を分単位で示すテスト間隔（分）と、使用するテストケースのテストケースＩＤを示す使用テストケースＩＤと、使用するパラメーターのパラメーターＩＤを示す使用パラメーターＩＤと、シナリオに応じたＵＩテストにおける正常な出力の内容を示す正常出力内容とを互いに関連付けて含んでいる。なお、図５は、正常出力内容の具体的な値が省略して描かれている。
【００４４】
図６は、テストケーステーブル５４ｅの一例を示す図である。
【００４５】
図６に示すように、テストケーステーブル５４ｅは、テストケース毎にデータを含む。各テストケースのデータは、テストケースＩＤと、テストケースの名称としてのテストケース名と、テストケースにおける後述のＷｅｂブラウザー５５ａに対する具体的な操作内容がＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）など、Ｗｅｂブラウザー５５ａ用のコードで記述されたテスト操作記述コードとを互いに関連付けて含んでいる。
【００４６】
図６においては、テスト操作記述コードの具体的な内容が省略して描かれている。例えば、テストケース名「ログイン」のテスト操作記述コードによって示される操作内容は、次のようなものである。
１．遠隔管理システム３０のＷｅｂアプリケーションのＵＲＬのＷｅｂページの画面を開く。
２．上記１．で開いた画面における、利用者のＩＤ（以下「ユーザーＩＤ」という。）の入力枠をクリックして入力可能にする。
３．上記２．で入力可能にした入力枠にユーザーＩＤをキータイプする。
４．上記１．で開いた画面における、パスワードの入力枠をクリックして入力可能にする。
５．上記４．で入力可能にした入力枠にパスワードをキータイプする。
６．上記１．で開いた画面におけるログインボタンをクリックする。
７．上記６．のクリックによって開いた画面、すなわち、ログイン後の画面の正しい位置に正しいユーザーＩＤが表示されていることを確認する。
【００４７】
図７は、パラメーターテーブル５４ｆの一例を示す図である。
【００４８】
図７に示すように、パラメーターテーブル５４ｆは、パラメーターの群毎にデータを含む。各群のデータは、パラメーターＩＤと、ＵＩテストの対象のＷｅｂアプリケーションのＵＲＬを示す対象ＷｅｂアプリケーションＵＲＬと、ユーザーＩＤと、利用者のパスワードと、電子メールアドレスと、対象の画像形成装置のシリアルナンバーとしてのデバイスシリアルナンバーと、対象の画像形成装置のＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスとしてのデバイスＩＰアドレスと、登録するグループを示す登録グループと、登録グループにアクセスするためのコードを示すグループアクセスコードと、対象の画像形成装置にアクセスするためのＵＲＬを示すデバイスアクセスＵＲＬとを互いに関連付けて含んでいる。対象ＷｅｂアプリケーションＵＲＬと、ユーザーＩＤと、パスワードと、電子メールアドレスと、デバイスシリアルナンバーと、デバイスＩＰアドレスと、登録グループと、グループアクセスコードと、デバイスアクセスＵＲＬとは、それぞれ、ＵＩテストにおいて使用されるパラメーターである。
【００４９】
対象ＷｅｂアプリケーションＵＲＬと、ユーザーＩＤと、パスワードとは、例えば、テストケース名「ログイン」のテストケースにおいて使用される。電子メールアドレスは、例えば、テストケース名「ユーザー作成」のテストケースにおいて使用される。デバイスシリアルナンバーは、例えば、テストケース名「デバイスリスタート」のテストケースにおいて使用される。デバイスＩＰアドレスと、グループアクセスコードと、デバイスアクセスＵＲＬとは、例えば、テストケース名「デバイス接続」のテストケースにおいて使用される。登録グループは、例えば、テストケース名「グループ作成」のテストケースにおいて使用される。
【００５０】
図４に示すように、記憶部５４は、ＵＩテストの結果（以下「テスト結果」という。）を示すテスト結果データベース５４ｇを記憶している。テスト結果データベース５４ｇに示される各テスト結果は、他のテスト結果との識別用のＩＤ（以下「テスト結果ＩＤ」という。）が付されている。
【００５１】
図８は、テスト結果データベース５４ｇの一例を示す図である。
【００５２】
図８に示すように、テスト結果データベース５４ｇは、テスト結果毎にデータを含む。各テスト結果のデータは、テスト結果ＩＤと、ＵＩテストの開始時刻、終了時刻および所要時間と、ＵＩテストにおいて実行したシナリオのシナリオＩＤを示す実行シナリオＩＤと、ＵＩテストにおける出力の内容の正常性を示す出力内容正常性と、ＵＩテストの所要時間の正常性を示す所要時間正常性とを互いに関連付けて含んでいる。ここで、所要時間は、開始時刻から終了時刻までの時間である。
【００５３】
図４に示す制御部５５は、例えば、ＣＰＵと、プログラムおよび各種のデータを記憶しているＲＯＭと、制御部５５のＣＰＵの作業領域として用いられるメモリーとしてのＲＡＭとを備えている。制御部５５のＣＰＵは、記憶部５４または制御部５５のＲＯＭに記憶されているプログラムを実行する。
【００５４】
制御部５５は、Ｗｅｂブラウザープログラム５４ａを実行することによって、ＷｅｂページにアクセスするＷｅｂブラウザー５５ａを実現する。
【００５５】
制御部５５は、ＵＩテストプログラム５４ｂを実行することによって、ＵＩテストを自動で実行するテスト実行部５５ｂと、テスト結果に応じて遠隔管理システム３０の異常を通知する異常通知部５５ｃとを実現する。
【００５６】
次に、システム１０の動作について説明する。
【００５７】
まず、ＵＩテストを実行する場合のＵＩテストシステム５０の動作について説明する。
【００５８】
図９は、ＵＩテストを実行する場合のＵＩテストシステム５０の動作のフローチャートである。
【００５９】
ＵＩテストシステム５０の制御部５５は、テストシナリオテーブル５４ｄにおけるシナリオ毎に、例えば１分毎など、定期的に図９に示す動作を実行する。
【００６０】
図９に示すように、ＵＩテストシステム５０のテスト実行部５５ｂは、対象のシナリオに関して、前回のＵＩテストの実行の時刻から、テストシナリオテーブル５４ｄのテスト間隔（分）で示される時間が経過したか否かをテスト結果データベース５４ｇに示されるデータに基づいて判断する（Ｓ６１）。ここで、テスト実行部５５ｂは、前回のＵＩテストの実行の時刻として、前回のＵＩテストの開始時刻を使用しても良いし、前回のＵＩテストの終了時刻を使用しても良い。
【００６１】
テスト実行部５５ｂは、対象のシナリオに関して、前回のＵＩテストの実行の時刻から、テストシナリオテーブル５４ｄのテスト間隔（分）で示される時間が経過していないとＳ６１において判断すると、図９に示す動作を終了する。
【００６２】
テスト実行部５５ｂは、対象のシナリオに関して、前回のＵＩテストの実行の時刻から、テストシナリオテーブル５４ｄのテスト間隔（分）で示される時間が経過したとＳ６１において判断すると、テストシナリオテーブル５４ｄ、テストケーステーブル５４ｅおよびパラメーターテーブル５４ｆを使用して、対象のシナリオに応じたＵＩテストを実行する（Ｓ６２）。すなわち、テスト実行部５５ｂは、Ｗｅｂブラウザー５５ａを介してインターネット１１経由で遠隔管理システム３０のＷｅｂアプリケーションにアクセスし、Ｗｅｂブラウザー５５ａおよびＷｅｂアプリケーションを介して遠隔管理システム３０を対象のシナリオ通りに操作する。
【００６３】
テスト実行部５５ｂは、Ｓ６２の処理の後、Ｓ６２において実行されたＵＩテスト（以下「今回のＵＩテスト」という。）に関して、開始時刻、終了時刻、所要時間および実行シナリオＩＤをテスト結果データベース５４ｇに記憶する（Ｓ６３）。ここで、テスト実行部５５ｂは、今回のＵＩテストに関して、新たなテスト結果ＩＤを付与する。
【００６４】
テスト実行部５５ｂは、Ｓ６３の処理の後、今回のＵＩテストにおける出力の内容が正常であるか否かを、テストシナリオテーブル５４ｄにおける正常出力内容に基づいて判断する（Ｓ６４）。
【００６５】
テスト実行部５５ｂは、今回のＵＩテストにおける出力の内容が正常であるとＳ６４において判断すると、今回のＵＩテストに関して、テスト結果データベース５４ｇにおける出力内容正常性の値としてＯＫを記憶する（Ｓ６５）。
【００６６】
テスト実行部５５ｂは、今回のＵＩテストにおける出力の内容が正常ではないとＳ６４において判断すると、今回のＵＩテストに関して、テスト結果データベース５４ｇにおける出力内容正常性の値としてＮＧを記憶する（Ｓ６６）。
【００６７】
テスト実行部５５ｂは、Ｓ６５またはＳ６６の処理の後、テスト結果データベース５４ｇにおけるテスト結果のうち、実行シナリオＩＤが今回のＵＩテストと同一であって、今回のＵＩテストではないＵＩテストの所要時間（以下「過去の所要時間」という。）と、今回のＵＩテストの所要時間（以下「今回の所要時間」という。）とに基づいて、今回の所要時間が正常であるか否かを判断する（Ｓ６７）。ここで、テスト実行部５５ｂは、今回の所要時間を過去の所要時間と照らし合わせ、今回の所要時間が過去の所要時間より大幅に長くなっていない場合には、今回の所要時間が正常であると判断し、今回の所要時間が過去の所要時間より大幅に長くなっている場合には、今回の所要時間が正常ではないと判断する。今回の所要時間と、過去の所要時間との照らし合わせの方法としては、様々な方法が採用されることが可能である。例えば、テスト実行部５５ｂは、過去の所要時間の回帰直線を算出し、算出した回帰直線と、今回の所要時間との距離が特定の閾値以下である場合に、今回の所要時間が過去の所要時間より大幅に長くなっていないと判断し、算出した回帰直線と、今回の所要時間との距離がこの閾値超である場合に、今回の所要時間が過去の所要時間より大幅に長くなっていると判断しても良い。
【００６８】
テスト実行部５５ｂは、今回の所要時間が正常であるとＳ６７において判断すると、今回のＵＩテストに関して、テスト結果データベース５４ｇにおける所要時間正常性の値としてＯＫを記憶して（Ｓ６８）、図９に示す動作を終了する。
【００６９】
テスト実行部５５ｂは、今回の所要時間が正常ではないとＳ６７において判断すると、今回のＵＩテストに関して、テスト結果データベース５４ｇにおける所要時間正常性の値としてＮＧを記憶して（Ｓ６９）、図９に示す動作を終了する。
【００７０】
次に、監視システム４０にメッセージを送信するか否かを判断する場合のＵＩテストシステム５０の動作について説明する。
【００７１】
図１０は、監視システム４０にメッセージを送信するか否かを判断する場合のＵＩテストシステム５０の動作のフローチャートである。
【００７２】
ＵＩテストシステム５０の制御部５５は、例えば１時間毎など、定期的に図１０に示す動作を実行する。
【００７３】
図１０に示すように、ＵＩテストシステム５０の異常通知部５５ｃは、テスト結果データベース５４ｇにおいて前回の図１０に示す動作の開始時以降、今回の図１０に示す動作の開始時前に追加されたテスト結果（以下「新規テスト結果」という。）が存在するか否かを判断する（Ｓ７１）。
【００７４】
異常通知部５５ｃは、新規テスト結果が存在しないとＳ７１において判断すると、図１０に示す動作を終了する。
【００７５】
異常通知部５５ｃは、新規テスト結果が存在するとＳ７１において判断すると、出力内容正常性の値がＮＧのテスト結果が新規テスト結果に存在するか否かを判断する（Ｓ７２）。
【００７６】
異常通知部５５ｃは、出力内容正常性の値がＮＧのテスト結果が新規テスト結果に存在するとＳ７２において判断すると、所要時間正常性の値がＮＧのテスト結果が新規テスト結果に存在するか否かを判断する（Ｓ７３）。
【００７７】
異常通知部５５ｃは、出力内容正常性の値がＮＧのテスト結果が新規テスト結果に存在しないとＳ７２において判断すると、所要時間正常性の値がＮＧのテスト結果が新規テスト結果に存在するか否かを判断する（Ｓ７４）。
【００７８】
異常通知部５５ｃは、所要時間正常性の値がＮＧのテスト結果が新規テスト結果に存在するとＳ７３において判断すると、いずれのシナリオＩＤのＵＩテストにおける出力の内容が異常であったかという情報と、いずれのシナリオＩＤのＵＩテストにおける所要時間が異常であったかという情報とを含むメッセージを監視システム４０に送信する（Ｓ７５）。すなわち、Ｓ７５において監視システム４０に送信するメッセージは、いずれのシナリオＩＤのＵＩテストの結果が出力の内容の異常であったかということを通知するとともに、いずれのシナリオＩＤのＵＩテストの結果が所要時間の異常であったかということを通知するためのものである。
【００７９】
異常通知部５５ｃは、所要時間正常性の値がＮＧのテスト結果が新規テスト結果に存在しないとＳ７３において判断すると、いずれのシナリオＩＤのＵＩテストにおける出力の内容が異常であったかという情報を含むメッセージを監視システム４０に送信する（Ｓ７６）。すなわち、Ｓ７６において監視システム４０に送信するメッセージは、いずれのシナリオＩＤのＵＩテストの結果が出力の内容の異常であったかということを通知するためのものである。
【００８０】
異常通知部５５ｃは、所要時間正常性の値がＮＧのテスト結果が新規テスト結果に存在するとＳ７４において判断すると、いずれのシナリオＩＤのＵＩテストにおける所要時間が異常であったかという情報を含むメッセージを監視システム４０に送信する（Ｓ７７）。すなわち、Ｓ７７において監視システム４０に送信するメッセージは、いずれのシナリオＩＤのＵＩテストの結果が所要時間の異常であったかということを通知するためのものである。
【００８１】
異常通知部５５ｃは、所要時間正常性の値がＮＧのテスト結果が新規テスト結果に存在しないとＳ７４において判断するか、Ｓ７５、Ｓ７６またはＳ７７の処理を実行すると、図１０に示す動作を終了する。
【００８２】
次に、ＵＩテストシステム５０からメッセージを受信した場合の監視システム４０の動作について説明する。
【００８３】
図１１は、ＵＩテストシステム５０からメッセージを受信した場合の監視システム４０の動作のフローチャートである。
【００８４】
監視システム４０の通知実行部４５ｂは、ＵＩテストシステム５０からメッセージを受信すると、図１１に示す動作を実行する。
【００８５】
図１１に示すように、通知実行部４５ｂは、ＵＩテストシステム５０から受信したメッセージの内容を含む電子メールを生成する（Ｓ８１）。
【００８６】
次いで、通知実行部４５ｂは、Ｓ８１において生成した電子メールを連絡先情報４４ｂに示す連絡先に対して送信して（Ｓ８２）、図１１に示す動作を終了する。
【００８７】
したがって、Ｓ８２において送信された電子メールの受信者は、この電子メールに含まれる内容に基づいて、遠隔管理システム３０の調査を開始することができる。
【００８８】
以上に説明したように、ＵＩテストシステム５０は、ＵＩテストを自動で実行し（Ｓ６２）、このＵＩテストの結果に応じて遠隔管理システム３０の異常を通知する（Ｓ７５、Ｓ７６またはＳ７７）ので、遠隔管理システム３０のＷｅｂアプリケーションからの操作に対する遠隔管理システム３０の異常を自動で検知することができる。
【００８９】
ＵＩテストシステム５０において、ＵＩテストは、ＵＩテストにおける出力の内容の異常を検知するためのものである。この構成により、ＵＩテストシステム５０は、遠隔管理システム３０のＷｅｂアプリケーションからの操作に対する遠隔管理システム３０の出力の内容の異常を自動で検知することができる。したがって、ＵＩテストシステム５０は、遠隔管理システム３０のＷｅｂアプリケーションからの操作に対する遠隔管理システム３０の機能が実際に使用可能であるか否かを例えば遠隔管理システム３０の開発者に認識させることができる。
【００９０】
ＵＩテストシステム５０において、ＵＩテストは、ＵＩテストの所要時間の異常を検知するためのものである。この構成により、ＵＩテストシステム５０は、遠隔管理システム３０のＷｅｂアプリケーションからの操作に対する遠隔管理システム３０の出力までの所要時間の異常を自動で検知することができる。したがって、ＵＩテストシステム５０は、遠隔管理システム３０のＷｅｂアプリケーションからの操作に対する遠隔管理システム３０の反応速度が正常に保たれているか否か、すなわち、遠隔管理システム３０のＷｅｂアプリケーションからの操作性が正常であるか否かを例えば遠隔管理システム３０の開発者に認識させることができる。
【００９１】
遠隔管理システム３０のＵＩは、本実施の形態において、遠隔管理システム３０のＷｅｂアプリケーションである。しかしながら、遠隔管理システム３０のＵＩは、Ｗｅｂアプリケーション以外の遠隔管理システム３０のＵＩでも良い。例えば、遠隔管理システム３０のＵＩは、画像形成装置から遠隔管理システム３０への操作をシミュレートするために遠隔管理システム３０にインストールされている、画像形成装置のシミュレーターのＵＩなど、遠隔管理システム３０にインストールされているいずれかのソフトウェアのＵＩでも良い。
【００９２】
監視システム４０と、ＵＩテストシステム５０とは、本実施の形態において別々に備えられているが、同一のシステムとして実現されても良い。
【符号の説明】
【００９３】
３０  遠隔管理システム（システム）
３５ａ  Ｗｅｂアプリケーション（ＵＩ）
５０  ＵＩテストシステム（異常検知システム、コンピューター）
５４ｂ  ＵＩテストプログラム（異常検知プログラム）
５５ｂ  テスト実行部
５５ｃ  異常通知部
【図１】
2020201640.tif 000003
【図２】
2020201640.tif 000004
【図３】
2020201640.tif 000005
【図４】
2020201640.tif 000006
【図５】
2020201640.tif 000007
【図６】
2020201640.tif 000008
【図７】
2020201640.tif 000009
【図８】
2020201640.tif 000010
【図９】
2020201640.tif 000011
【図１０】
2020201640.tif 000012
【図１１】
2020201640.tif 000013