JP2013145473A - Information processing apparatus and control method thereof, image forming apparatus and control method thereof, system and program - Google Patents
Information processing apparatus and control method thereof, image forming apparatus and control method thereof, system and program Download PDFInfo
- Publication number
- JP2013145473A JP2013145473A JP2012005665A JP2012005665A JP2013145473A JP 2013145473 A JP2013145473 A JP 2013145473A JP 2012005665 A JP2012005665 A JP 2012005665A JP 2012005665 A JP2012005665 A JP 2012005665A JP 2013145473 A JP2013145473 A JP 2013145473A
- Authority
- JP
- Japan
- Prior art keywords
- application
- test
- image forming
- forming apparatus
- test case
- 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.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
Description
本発明は、アプリケーションをインストール可能な画像形成装置におけるアプリケーションに対するテストを実行するためのシステム、情報処理装置およびその制御方法、画像形成装置およびその制御方法、並びにプログラムに関する。 The present invention relates to a system for executing a test for an application in an image forming apparatus capable of installing an application, an information processing apparatus and a control method thereof, an image forming apparatus and a control method thereof, and a program.
従来、画像形成装置及びその制御において、リアルタイムOS上にさらに別の組み込みシステム向けの実行環境(例えばJava(登録商標)など)を構築することを可能にしている。更に、画像形成装置の制御を行うことのできるアプリケーションを外部からダウンロードして追加できるアプリケーション・プラットフォームが搭載されるようになった。 Conventionally, in an image forming apparatus and its control, it is possible to construct an execution environment (for example, Java (registered trademark)) for another embedded system on a real-time OS. Furthermore, an application platform that can download and add an application that can control the image forming apparatus from the outside has been installed.
このようなアプリケーション・プラットフォーム上でアプリケーションを開発する際の開発環境を提供されている。例えば、ビルドからテスト結果の取得まで自動的に行い、アプリケーション・プラットフォームの状態を記憶し、デバッグ作業を容易にするような仕組みが特許文献1に開示されている。
A development environment for developing an application on such an application platform is provided. For example,
一方、開発したアプリケーションの動作を確認するための別のテスト用アプリケーションを作成する。そして、そのアプリケーションから、開発したアプリケーションのAPI(Application Program Interface)を呼び出し、動作確認を行う手法がある。この場合、アプリケーションが動作するプラットフォームのフレームワークが提供する機能を利用して、テストされるアプリケーションは、他のアプリケーション(外部)からAPIをコールされるように予め外部公開を許可する実装を行う必要がある。 Meanwhile, another test application for confirming the operation of the developed application is created. Then, there is a method of checking the operation by calling an API (Application Program Interface) of the developed application from the application. In this case, the application to be tested using functions provided by the framework of the platform on which the application operates needs to be implemented in advance to permit external publication so that the API can be called from another application (external). There is.
具体的には、アプリケーション内に実装する設定ファイルにおいて、外部公開用にエクスポート宣言する必要がある。一方、テストを行うアプリケーション側では、外部公開されているAPIを利用できるように実装を行う必要がある。具体的には、APIの設定ファイルであるマニフェストファイルにエクスポート宣言がされている前提で、アプリケーション側で当該APIをインポート宣言する必要がある。このように、2つのアプリケーションを利用して、開発したアプリケーションの動作を確認するためには、双方のアプリケーションにテストを実行するための実装を行う必要があった。 Specifically, it is necessary to declare export for external publication in the configuration file implemented in the application. On the other hand, the application side to be tested needs to be implemented so that an externally published API can be used. Specifically, on the premise that an export declaration is made in a manifest file that is an API setting file, the application side needs to declare the API to be imported. As described above, in order to check the operation of the developed application using the two applications, it is necessary to perform mounting for executing tests on both applications.
テスト用のアプリケーションを利用してアプリケーションの動作を確認する手法は、アプリケーション開発中のデバッグ作業に対しては効果のある手法である。しかしながら、一般販売されるアプリケーションでは、セキュリティの観点から、外部からAPIをコールされないように構成されている。例えば、エクスポート宣言が不要なAPIについては、マニフェストファイルにてエクスポート宣言をしないように構成されている。 The method of checking the operation of an application using a test application is an effective method for debugging work during application development. However, generally sold applications are configured so that APIs are not called from the outside from the viewpoint of security. For example, an API that does not require an export declaration is configured not to make an export declaration in the manifest file.
また、アプリケーション開発時に、デバッグ目的でマニフェストファイルに一時的にエクスポート宣言した場合、その変更を元に戻すことを忘れてしまうこともある。この場合、外部からアプリケーションが呼び出せる状態となり、開発者が意図せずにこのまま市場に販売された場合、悪意のあるユーザからアプリケーションに対し攻撃される可能性もある。よって、セキュリティの観点で課題である。 Also, if you temporarily declare export to a manifest file for debugging purposes during application development, you may forget to revert the changes. In this case, the application can be called from the outside, and if the developer is sold to the market unintentionally, the application may be attacked by a malicious user. Therefore, it is a problem from the viewpoint of security.
上記課題を解決するために、本願発明は以下の構成を有する。すなわち、提供されたアプリケーションをインストールして実行可能な画像形成装置と、前記画像形成装置にて実行するアプリケーションの開発環境を提供する情報処理装置とを含むシステムであって、前記情報処理装置は、ユーザの指示に従って、前記画像形成装置において実行されるアプリケーションと、前記アプリケーションに対するテストケースを含むテスト用アプリケーションとを作成する作成手段と、前記作成手段にて作成した前記アプリケーションと、前記テスト用アプリケーションとを前記画像形成装置へ送信する送信手段と、を有し、前記作成手段は、前記アプリケーションおよび前記テスト用アプリケーションを作成する際に、前記テストケースを実行する際に用いられる前記アプリケーションおよび前記テスト用アプリケーションそれぞれが有する設定ファイルにおいて、前記テスト用アプリケーションが前記アプリケーションを呼び出すための設定を含めて作成し、前記画像形成装置は、前記情報処理装置から受信したテストの対象であるアプリケーションと、当該アプリケーションに対するテストケースを含むテスト用アプリケーションとをインストールするインストール手段と、前記アプリケーションに対して、前記テスト用アプリケーションによるテストケースを実行する実行手段と、前記テストケースの実行が完了した後、前記アプリケーションと、前記テスト用アプリケーションとをアンインストールするアンインストール手段とを有する。 In order to solve the above problems, the present invention has the following configuration. That is, a system including an image forming apparatus that can install and execute a provided application, and an information processing apparatus that provides a development environment for an application that is executed by the image forming apparatus. In accordance with a user instruction, an application executed in the image forming apparatus, a creation unit that creates a test application including a test case for the application, the application created by the creation unit, and the test application Transmitting means to the image forming apparatus, and the creating means creates the application and the test application and uses the application and the test for executing the test case. App In the setting file of each application, the test application includes a setting for calling the application, and the image forming apparatus receives the application to be tested from the information processing apparatus and the application Installation means for installing a test application including a test case, execution means for executing a test case by the test application for the application, the application after the execution of the test case is completed, Uninstalling means for uninstalling the test application.
本願発明の別の構成として、アプリケーションをインストールして実行可能な画像形成装置で実行されるアプリケーションの開発環境を提供する情報処理装置であって、ユーザの指示に従って、前記画像形成装置において実行されるアプリケーションと、前記アプリケーションに対するテストケースを含むテスト用アプリケーションとを作成する作成手段と、前記作成手段にて作成した前記アプリケーションと、前記テスト用アプリケーションとを前記画像形成装置へ送信する送信手段とを有し、前記作成手段は、前記アプリケーションおよび前記テスト用アプリケーションを作成する際に、前記テストケースを実行する際に用いられる前記アプリケーションおよび前記テスト用アプリケーションそれぞれが有する設定ファイルにおいて、前記テスト用アプリケーションが前記アプリケーションを呼び出すための設定を含めて作成する。 Another configuration of the present invention is an information processing apparatus that provides an application development environment that is executed by an image forming apparatus capable of installing and executing an application, and is executed in the image forming apparatus according to a user instruction A creation unit that creates an application, a test application including a test case for the application, a transmission unit that sends the application created by the creation unit and the test application to the image forming apparatus. Then, the creation means, in creating the application and the test application, in the setting file of each of the application and the test application used when executing the test case, Test application creates, including the settings for calling the application.
本発明によれば、アプリケーションの作成時において用いられた設定が、意図しない状態で継続されることを防止し、アプリケーションの作成におけるセキュリティ面の向上を可能とする。 ADVANTAGE OF THE INVENTION According to this invention, the setting used at the time of creation of an application is prevented from continuing in an unintended state, and the security aspect in creation of an application is enabled.
以下、図面を参照して本発明の実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. The following embodiments do not limit the invention according to the scope of claims, and all combinations of features described in the embodiments are not necessarily essential to the solution means of the invention.
(第1の実施形態)
[画像形成装置のハードウェア構成]
以下、本発明の実施の形態について図面を参照して詳細に説明する。図1は、本発明の実施形態に係る画像形成装置の内部構成の一例を示すブロック図である。
(First embodiment)
[Hardware configuration of image forming apparatus]
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram illustrating an example of an internal configuration of an image forming apparatus according to an embodiment of the present invention.
図1に示す画像形成装置1は、基本的な構成として、画像形成装置1内の各部を制御するコントローラユニット100と、操作部112と、スキャナ部123と、プリンタ部125とを備える。操作部112は、例えば、数字を入力するためのテンキーや処理の実行を行うためのスタートキーなどのハードキーや液晶タッチパネルで構成され、ユーザが画像形成装置1を操作するためのユーザインタフェースを提供する。操作部112のタッチパネルに表示される各設定項目を表すアイコンやボタン(もしくはハードキー)をタッチ(押下)することで、画像形成装置1に設定や情報の入力を行うことが可能である。
The
スキャナ部123は、原稿等の画像を画像データとして読み取る。プリンタ部125は、記録用紙を搬送し、その記録用紙に画像データを可視画像として印刷する。
The
コントローラユニット100は、バス122を介してスキャナ部123に接続され、またバス124を介してプリンタ部125に接続される。また、コントローラユニット100は、LAN113や公衆回線(WAN)114や無線115を介して他の機器に接続して、画像情報やデバイス情報の入出力制御を行う。
The
CPU101は、システム全体を制御するコントローラである。RAM102は、CPU101が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ROM103はブートROMである。ROM103には、システムのブートプログラムが格納されている。HDD104は、ハードディスクドライブであり、システムソフトウェアや画像データ、後述する通信部111が有するすべての無線通信に関する情報(無線通信の仕様)を格納する。
The
画像形成装置1では、使用したい機能を実装したアプリケーション(以下、「アプリ」と呼ぶ)をインストールすることで機能を増やすことができる。アプリのインストールにより、画像形成装置1上で各種機能を動かすためのアプリケーションプログラムがRAM102やHDD104に記憶される。
In the
操作部I/F106は、ユーザインタフェース(UI)である操作部112との間のインタフェース部であり、操作部112に表示すべきデータを操作部112に対して出力する。また、操作部112からユーザが入力した情報を、CPU101に伝える役割を行う。Network部109は、LAN113に接続され、情報の入出力を行う。MODEM110は、公衆回線114に接続され、情報の入出力を行う。
The operation unit I /
通信部111は、不図示のアンテナを介して無線(WIRELESS)115に接続され、情報の入出力を行う。また、通信部111は、複数種類の無線通信を行うことが可能である。上記各デバイスがシステムバス107上に配置される。
The
イメージバス(ImageBus)I/F105は、システムバス107と、画像データを高速で転送する画像バス108とを接続し、データ構造を変換するバスブリッジである。画像バス108は、PCIバスまたはIEEE1394等で規定されるバスである。
An image bus I /
画像バス108上に配置される各デバイスにおいて、ラスターイメージプロセッサ(RIP)116は、PDLコードをビットマップイメージに展開する。デバイスI/F部117は、スキャナ部123またはプリンタ部125をコントローラユニット100に接続し、画像データの同期系/非同期系の変換を行う。
In each device placed on the
スキャナ画像処理部118は、入力画像データに対して補正、加工、または編集を行う。プリンタ画像処理部119は、プリント出力画像データに対して、プリンタ部125に合った補正、解像度変換等を行う。画像回転部120は、画像データの回転を行う。画像処理部121は、画像データに対する、JPEG、JBIG、MMR、MH等の圧縮伸張処理や、PDF、TIFF、OCR、暗号化等のフォーマット変換処理を行う。
The scanner
[画像形成装置のソフトウェア構成]
図2は、本発明に係る画像形成装置の一例である画像形成装置1のHDD104に記憶されたソフトウェア構造図である。CPU101によりこれらのプログラムが実行されることにより、各種機能が実現される。
[Software configuration of image forming apparatus]
FIG. 2 is a software structure diagram stored in the
OS(オペレーティングシステム)201は、一般的にはリアルタイムOSが使用される。またOSとして、Linux(登録商標)等の汎用OSが使用されてもかまわない。JavaVM202は、Java(登録商標)に代表される仮想マシンであり、アプリの実行環境を提供する。なお、仮想マシンは、これに限定するものではない。アプリフレームワーク203は、アプリのライフサイクルを管理する機能を提供する。ここでのライフルサイクルとしては、例えば、アプリのインストール、開始、テストケース実行、停止、アンインストールなど、アプリが画像形成装置にインストールされてからアンインストールするまでの一連の流れを管理している。インストーラサービス204は、アプリA205、アプリB206など複数のアプリを、アプリフレームワーク203に登録することでインストール処理を行う。また、開発者の指示等に従って、インストーラサービス204は、不要なアプリのアンインストールを行う。
As the OS (operating system) 201, a real-time OS is generally used. A general-purpose OS such as Linux (registered trademark) may be used as the OS. The
アプリA205、およびアプリB206は、インストーラサービス204によってインストールされたアプリであり、画像形成装置1上で様々な機能を提供する。アプリA205およびアプリB206は、不図示のI/Fを使用して、操作部112を介してユーザとやり取りを行うことが可能である。また、アプリA205およびアプリB206は、Network部109を介して、PCなどからデータを受信し、プリンタ部125を使って印刷することも可能である。なお、インストーラサービス204は、PCからブラウザ(不図示)を使用してアクセスされ、所定のアプリファイルを受信するものとする。
An
[PCのハードウェア構成]
図3は、画像形成装置1とネットワークで接続された情報処理装置としての開発用PC300のハードウェア構成を示す図である。画像形成装置用アプリの開発を行う場合、通常、開発用PC300にて統合開発環境を動作させてプログラム作成・テスト・デバッグなどを行う。また、アプリのテストを行う場合は、開発用PC300から画像形成装置1にNetwork部109経由でアプリをインストールして画像形成装置1上でアプリを動作させてテストを行う。
[PC hardware configuration]
FIG. 3 is a diagram illustrating a hardware configuration of the
CPU301は、開発用PC300上の各処理を司る中央演算装置である。ROM302は、開発用PC300の各処理に関わるプログラムやデータを記憶する。RAM303は、開発用PC300の各処理に関わる一時的なデータを記憶する。HDD304は、開発用PC300の各処理に関わるプログラムやデータ、および一時的なデータ、本発明に関わるプログラムモジュールが格納される。入力装置305は、開発用PC300への指示入力を受け付けるキーボードやポインティングデバイスである。表示部306は、開発用PC300の動作状況や、開発用PC300上で動作する各プログラムが出力する情報を表示する。ネットワークI/F307は、ネットワーク経由でLANおよびインターネットに接続され、外部と情報交換を行う。USBH I/F308はUSBホストインタフェースであり、さまざまなUSBデバイスを接続する。上述した開発用PC300内の構成要素がシステムバス309により結び付き、データをやりとりしている。
The
[統合開発システムにおけるソフトウェア構成]
図4は、本発明の統合開発システムの一例である統合開発環境システム400のソフトウェア構成図である。本実施形態において、この統合開発環境システム400および外部ツール404は、開発用PC300上で構成される。統合開発環境システム400は、統合開発基盤401と、統合開発基盤401に利用される内部ツールA402、並びに外部ツール404と連携する内部ツールB403を有する。さらには、これら内部ツールと同様の位置づけで組み込みアプリ開発支援ツール405を有する。
[Software configuration in integrated development system]
FIG. 4 is a software configuration diagram of an integrated
統合開発環境システム400は、例えば、Eclipse(登録商標)が利用できるが、これに限定されない。なお、Eclipseとは、オープンソースの統合ソフトウェア開発環境であり、ソフトウェア開発の共通プラットフォームである。Eclipseは、2種類のツールを利用することで様々な機能を提供する。ここでの2種類のツールとは、Eclipseにプラグインとして登録・提供されている内部ツールと、Windows(登録商標)、UNIX(登録商標)などが提供するデバッガやコンパイラといったEclipse内には存在しない外部ツールである。
For example, Eclipse (registered trademark) can be used as the integrated
統合開発基盤401は、開発しているアプリの管理や各ツールを連携させるためのインタフェースなどを含んでいる。外部ツールの例としては、Java(登録商標)のコンパイルやデバッグを行うために用いられるJDK(Java Development kit)がある。
The integrated
内部ツールは、統合開発基盤401が提供するインタフェースを介して、外部ツールの機能を利用することもできる。なお、本実施形態においては、開発者によって統合開発環境システム400に外部ツールとしてJDKが既に設定済みであり、内部ツールから統合開発基盤401を介して利用できる。なお、図4で示している統合開発環境システム400が持つ内部ツールや外部ツールの構成などは、1つの例にすぎず、これに限定されない。
The internal tool can also use the function of the external tool via the interface provided by the integrated
ここで、組み込みアプリ開発支援ツール405は、例えば、画像形成装置のような組み込み機器で動作可能なアプリの生成やテスト支援の機能を有する。操作部406は、開発しているアプリを組み込み機器もしくは対応するシミュレータへインストールする機能を有する。その他、組み込み機器および組み込み機器向けシミュレータで動作しているアプリケーションの開始、停止、デバッグ機能を有する。生成部407は、アプリを生成する機能を有する。
Here, the embedded application
[画像形成装置のソフトウェア構成(テスト時)]
図5は、統合開発環境システム400を利用してテストを行う場合の画像形成装置1のソフトウェアブロック図である。なお、各ソフトウェア構成は、画像形成装置1のROM302に記憶されている各プログラムがRAM303にロードされ、ロードされたプログラムをCPU301により実行させることで実現するものである。図2の状態の画像形成装置1に対してアプリケーション開発者がインストーラサービス204経由でテストブローカ501をインストールすることで統合開発環境を利用したテストを行うことができるようになる。
[Software configuration of image forming device (during testing)]
FIG. 5 is a software block diagram of the
テストブローカ501は、開発用PC300から、テスト実行アプリ502やテスト実行アプリ502からテストを実行されるターゲットアプリ503を受信する。そして、テストブローカ501は、インストーラサービス204経由で各アプリを画像形成装置1にインストールする。これにより、各アプリは画像形成装置1上において、実行可能な状態となる。さらに、テストブローカ501は、テストを実行したり、テスト結果を開発用PC300に送信したり、テスト完了後にテスト実行アプリ502およびターゲットアプリ503をインストーラサービス204経由でアンインストールしたりするためのモジュールである。
The
図5における、ターゲットアプリ503とは、具体的には、アプリ開発者が統合開発環境システム400を利用して開発したアプリケーションのことであり、画像形成装置1上での動作検証を行う対象となるアプリである。また、テスト実行アプリ502とは、ターゲットアプリ503をテストするためのテスト用アプリケーションであり、ターゲットアプリ503に実装されている機能を実行するためのテスト実行命令が記述されている。
The
また、図5には示されていないが、ターゲットアプリ503およびテスト実行アプリ502はそれぞれ、マニフェストファイルと呼ばれる設定ファイルを有する。
Although not shown in FIG. 5, each of the
[生成部]
図6は、統合開発環境システム400を利用してテストを行う場合の組み込みアプリ開発支援ツール405に含まれる生成部407のより詳細なソフトウェアブロック図である。ソース管理部601は、ターゲットアプリ503のソースコード(以下、ソース)やテストケースのソースの管理を行う。アプリ作成部602は、ソース管理部601で管理されているソースをコンパイルして画像形成装置1にインストール可能なアプリファイルまたはテスト実行アプリファイルを生成する。テスト制御部603は、通信制御部604を介して、テストブローカ501を経由し、画像形成装置1にインストールされたテスト実行アプリ502の実行指示や結果の受信を行う。通信制御部604は、テスト制御部603の指示に従って、他のアプリとのデータのやり取りなどに関する通信制御を行う。
[Generator]
FIG. 6 is a more detailed software block diagram of the
[テストブローカ]
図7は、図5におけるテストブローカ501のソフトウェアブロック図である。テスト制御部701は、テスト用アプリのインストール・開始・停止・アンインストール・テストケース実行などの制御を行ったり、テスト結果を統合開発環境システム400に送信したりする。接続先管理部702は、テスト用アプリと開発用PC300との対応の管理を行う。通信制御部703は、開発用PC300と各種データの送受信を行う。
[Test broker]
FIG. 7 is a software block diagram of the
また、テストブローカ501は、上述したインストーラサービス204を介して、画像形成装置1に各種アプリをインストール/アンインストールする。
The
[UIの構成]
図9は、統合開発環境システム400の統合開発基盤401が提供するUIの一例を示す図である。図9(a)は、統合開発環境システム400におけるプログラム作成画面の一例である。
[UI configuration]
FIG. 9 is a diagram illustrating an example of a UI provided by the integrated
プロジェクト表示領域901は、統合開発環境上で開発を行っているプロジェクトについての情報を表示する領域であり、開発するアプリに含まれるクラスやファイルのリストが階層構造で表示される。ここでプロジェクトとは、統合開発環境システム400上で開発を行っているアプリを構成するために必要なソースコード一式を表す。ソース表示領域902は、プロジェクト表示領域で選択したクラスのソースが表示される。アプリ作成者は、ソース表示領域902に示すソースコードを編集して、所望のアプリのソースコードを作成する。
The
一方、テストケースのプロジェクト903は、プロジェクト表示領域901にて表示したプログラムに対応したテストケースである。テストケースのプロジェクト903を選択して右クリックして表示されるメニュー904から「ターゲットアプリとテスト実行アプリ作成およびテスト実行」を選択する。この選択によりターゲットアプリ503とテスト実行アプリ502を作成した後、ターゲットデバイス上でのテスト実行が可能である。「ターゲットアプリとテスト実行アプリ作成およびテスト実行」が選択されると図9(b)のダイアログが表示される。
On the other hand, the
図9(b)において、テキストフィールド911はテストを実行する画像形成装置のホスト名もしくはIPアドレスを入力するためのフィールドである。OKボタン912は、テストの実行を指示するためのボタンである。キャンセルボタン913は、テストの実行を取り消すためのボタンである。ユーザによりOKボタン912が押されると、テストが開始され、図9(c)のダイアログが表示される。図9(c)のダイアログは、全てのテストケースが実行完了すると自動的にダイアログが閉じる。実行中のテストを中断したい場合は、ユーザは終了ボタン921を押下することでテストを終了させることができる。
In FIG. 9B, a
図9(d)は、テスト終了時もしくは中断時に表示される画面の例である。この画面は、画像形成装置にて実行されたテストの結果が通知された後、表示される。テスト結果概要表示領域931には実行されたテストケース数およびテスト失敗数、エラー数およびテスト成功率が表示される。パッケージ情報表示領域932にはアプリのパッケージ毎のテスト結果の一覧が表示される。パッケージ名933をクリックすることでテストケースごとの細かい結果も表示可能である。ここで「パッケージ」とは、統合開発環境システム400上で開発を行っているアプリを構成し、主に関連もしくは類似した機能(プログラム)をまとめたプログラムの集合である。
FIG. 9D shows an example of a screen displayed when the test is completed or interrupted. This screen is displayed after the result of the test executed in the image forming apparatus is notified. The test result
[ターゲットアプリとテスト実行アプリの生成処理]
図10を用いて、ターゲットアプリ503とテスト実行アプリ502を作成およびテスト実行指示を受け付けた時の処理を、フローチャートを用いて説明する。具体的には、統合開発環境システム400が、ターゲットアプリ503とテスト実行アプリ502を生成し、テストブローカ501に送信する。そして、テストブローカ501がターゲットアプリ503とテスト実行アプリ502を受信して、インストーラサービス204によりインストールする処理である。さらにテストが実行された後、テスト結果を統合開発環境システム400に送信するまでの処理までを含む。
[Generation process of target application and test execution application]
The processing when the
S1001にて、統合開発環境システム400は、ターゲットアプリ503とテスト実行アプリ502の作成とテストの実行指示を受け付ける。S1002にて、統合開発環境システム400は、ターゲットアプリ503の全パッケージの一覧を取得する。統合開発環境システム400は、S1002で取得したパッケージと同一のパッケージが、テスト実行アプリ502のコード内に存在するかを判断する(S1003)。つまり、テスト実行アプリ502により指定されたテスト対象のパッケージを、ターゲットアプリ503を構成するパッケージの中から特定する。
In step S1001, the integrated
同一のパッケージが存在しない場合には(S1003にてNO)、S1008に進む。同一のパッケージが存在する場合には(S1004にてYES)、S1004に進み、統合開発環境システム400は、ターゲットアプリ503およびテスト実行アプリ502のマニフェストファイルの複製が存在するかを確認する。マニフェストファイルの複製が存在しない場合には(S1004にてNO)、統合開発環境システム400は、マニフェストファイルの複製が存在しないアプリのマニフェストファイルの複製を作成する(S1005)。
If the same package does not exist (NO in S1003), the process proceeds to S1008. If the same package exists (YES in S1004), the process advances to S1004, and the integrated
S1006では、統合開発環境システム400は、ターゲットアプリ503の複製したマニフェストファイルのExport−PackageにS1003で該当したパッケージ名を追記する。同様にS1007では、統合開発環境システム400は、テスト実行アプリ502の複製したマニフェストファイルのImport−PackageにS1003で該当したパッケージ名を追記する。ここで、Export−Packageにパッケージ名を追記することにより、追加されたパッケージに対するエクスポート宣言がなされたことを意味する。また、インポート宣言についても、マニフェストファイルにパッケージ名が記載されることで行われる。
In S1006, the integrated
S1008では統合開発環境システム400は、各アプリを生成する。なお、ここで用いられるマニフェストファイルは、複製されたマニフェストファイルを用いる。つまり、各アプリに対して、テスト用にインポート宣言およびエクスポート宣言がなされたマニフェストファイルが用いられることとなる。S1009では、統合開発環境システム400は、S1008で作成した各アプリを通信制御部703からテストブローカ501の通信制御部703に対して送信する。ここで送信される各アプリのマニフェストファイルは、テスト用に複製されたマニフェストファイルとなる。
In S1008, the integrated
S1010では、テストブローカ501は、受信した各アプリをインストーラサービス204を介して画像形成装置1にインストールする。S1011ではテストブローカ501は、インストールした各アプリを開始状態にする。続いてS1012にて、テストブローカ501は、テスト実行アプリ502のテストケースを実行する。S1013で、テストブローカ501は、テストケースの実行が終了し、テストの実行結果が出力されたかの判断を行う。まだ出力されていない場合には(S1013にてNO)、テストブローカ501は、テスト結果の終了を待つ(S1014)。テスト結果が出力されたと判断された場合は(S1013にてYES)、S1015に進む。S1015では、テストブローカ501は、出力されたテスト結果を統合開発環境システム400の通信制御部703に送信する。
In step S <b> 1010, the
S1016にて、統合開発環境システム400は、テストブローカ501から受信したテスト結果を表示する。S1017では、テストブローカ501は、テスト実行用にインストールしたテスト実行アプリ502を停止する。そして、テストブローカ501は、ターゲットアプリ503およびテスト実行アプリ502をインストーラサービス204を介してアンインストールして処理を終了する。なお、ターゲットアプリ503およびテスト実行アプリ502がアンインストールされる際に、各アプリが有するマニフェストファイルも併せて削除される。
In S1016, integrated
ここで、テストブローカ501から統合開発環境システム400に対してのテスト結果の出力が完了した後にアプリケーションをアンインストールしている。これは、例えば、開発者がS1016にて表示されたテスト結果を確認した際などに、再度同じテストを実行する指示を行う場合が考えられる。このとき、同じアプリを再インストールする処理が発生しないように、テスト実行後のアプリのアンインストールは、統合開発環境システム400にて表示された後が望ましい。
Here, the application is uninstalled after the output of the test result from the
また、アプリのアンインストールは、テスト結果が出力された後、所定の期間が経過した際に削除するように構成してもよい。 Further, the uninstallation of the application may be configured to be deleted when a predetermined period elapses after the test result is output.
[プロジェクト作成処理]
図8を用いて、統合開発環境システム400内に設けられたアプリ作成部602が、テストケースのプロジェクト903を作成するフローチャートを説明する。
[Project creation process]
A flowchart in which the
図8(b)は、テストケースのプロジェクトを新規作成する際に表示されるダイアログ805である。ダイアログ805には、テストケースプロジェクトのプロジェクト名806を指定する入力フィールドと、テストケースの対象となるプロジェクトを指定するフィールド807とを備える。各フィールドに対して入力終了後、完了ボタン808が押下されることにより、ダイアログの表示を終了する。
FIG. 8B shows a
図8(a)を用いて、テストケースのプロジェクトを作成するフローチャートを説明する。例えば、ユーザにより統合開発環境システム400のメニュー(不図示)から、「プロジェクトの新規作成」−「テストケースプロジェクト」を選択されると、S801にて、アプリ作成部602は、図8(b)のダイアログ805を開発用PC300に表示する。ここで統合開発環境システム400のメニューは、例えば、図9(a)に示す画面において、表示するようにしても構わない。S802にて、アプリ作成部602は、ダイアログ805を介して入力されたプロジェクト名およびテスト対象となるプロジェクト名を受信する。S803において、アプリ作成部602は、S802で受信したプロジェクト名に従い、テストケースプロジェクトのテンプレートを作成して処理を終了する。
A flowchart for creating a test case project will be described with reference to FIG. For example, when “New Project Creation”-“Test Case Project” is selected from the menu (not shown) of the integrated
なお、テストケースを作成する際に、アプリ作成部602は、ターゲットアプリ503をインストールする画像形成装置の情報を取得し、この画像形成装置の機能に応じてテストケースを作成するようにしても構わない。ここで画像形成装置を特定する際には、例えば、各画像形成装置の機能とIDとが対応付けられた情報を用いて識別するようにしても構わない。これにより、アプリケーションをインストールする画像形成装置に対応したテストケースを含むテスト実行アプリ502を作成することができ、不要なテストケースを含めることを避けることができる。
When creating a test case, the
また、開発者がアプリの作成中において、そのアプリにて用いられるパッケージをソースの中から適時探索し、その探索の中で特定されたパッケージをテスト実行アプリの作成時にマニフェストファイルに追記するようにしてもよい。これにより、アプリの中で用いられない不要なパッケージをマニフェストファイルに記載することが無くなる。 In addition, during the creation of an application, the developer searches for the package used in the application from the source in a timely manner, and adds the package specified in the search to the manifest file when creating the test execution application. May be. As a result, unnecessary packages that are not used in the application are not described in the manifest file.
以上、本発明によれば、アプリケーションの作成時において用いられた設定が、意図しない状態で継続されることを防止し、作成したアプリケーションに対するセキュリティ面の向上を可能とする。 As described above, according to the present invention, it is possible to prevent the settings used at the time of creating an application from being continued in an unintended state, and to improve the security of the created application.
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
<Other embodiments>
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.
Claims (13)
開発環境を備える情報処理装置からアプリケーションのテスト実行の指示を受けたことに応じて、テストの対象であるアプリケーションと、当該アプリケーションに対するテストケースを含むテスト用アプリケーションとをインストールするインストール手段と、
前記アプリケーションに対して、前記テスト用アプリケーションによるテストケースを実行する実行手段と、
前記テストケースの実行が完了した後、前記アプリケーションと、前記テスト用アプリケーションとをアンインストールするアンインストール手段と
を有し、
前記アプリケーションが有する設定ファイルには、前記テストケースを実行する際に前記テスト用アプリケーションが前記アプリケーションを呼び出すための設定が含まれることを特徴とする画像形成装置。 An image forming apparatus having an execution environment capable of installing and executing an application,
An installation unit that installs an application to be tested and a test application including a test case for the application in response to receiving an instruction to perform an application test from an information processing apparatus having a development environment;
Execution means for executing a test case by the test application for the application;
After the execution of the test case is completed, the application and an uninstall unit that uninstalls the test application,
The image forming apparatus, wherein the setting file included in the application includes a setting for the test application to call the application when the test case is executed.
前記アンインストール手段は、前記テストケースの実行結果が前記開発環境により出力された後にアンインストールを行うことを特徴とする請求項1に記載の画像形成装置。 A means for transmitting the execution result of the test case to the development environment;
The image forming apparatus according to claim 1, wherein the uninstallation unit performs uninstallation after an execution result of the test case is output by the development environment.
ユーザの指示に従って、前記画像形成装置において実行されるアプリケーションと、前記アプリケーションに対するテストケースを含むテスト用アプリケーションとを作成する作成手段と、
前記作成手段にて作成した前記アプリケーションと、前記テスト用アプリケーションとを前記画像形成装置へ送信する送信手段と
を有し、
前記作成手段は、前記アプリケーションおよび前記テスト用アプリケーションを作成する際に、前記テストケースを実行する際に用いられる前記アプリケーションおよび前記テスト用アプリケーションそれぞれが有する設定ファイルにおいて、前記テスト用アプリケーションが前記アプリケーションを呼び出すための設定を含めて作成することを特徴とする情報処理装置。 An information processing apparatus that provides a development environment for an application that is executed by an image forming apparatus capable of installing and executing an application,
Creating means for creating an application to be executed in the image forming apparatus and a test application including a test case for the application according to a user instruction;
A transmission unit that transmits the application created by the creation unit and the test application to the image forming apparatus;
The creation means includes the application used for executing the test case when the application and the test application are created. An information processing apparatus characterized by being created including settings for calling.
前記テスト用アプリケーションを作成する指示を受け付けた際に、前記特定手段にて特定されたパッケージを呼び出すための設定を前記設定ファイルに含めることを特徴とする請求項3または4に記載の情報処理装置。 The creating means further includes a specifying means for specifying a package used in a test from the source code of the application before creating the test application,
5. The information processing apparatus according to claim 3, wherein, when an instruction to create the test application is received, a setting for calling the package specified by the specifying unit is included in the setting file. 6. .
前記情報処理装置は、
ユーザの指示に従って、前記画像形成装置において実行されるアプリケーションと、前記アプリケーションに対するテストケースを含むテスト用アプリケーションとを作成する作成手段と、
前記作成手段にて作成した前記アプリケーションと、前記テスト用アプリケーションとを前記画像形成装置へ送信する送信手段と、
を有し、
前記作成手段は、前記アプリケーションおよび前記テスト用アプリケーションを作成する際に、前記テストケースを実行する際に用いられる前記アプリケーションおよび前記テスト用アプリケーションそれぞれが有する設定ファイルにおいて、前記テスト用アプリケーションが前記アプリケーションを呼び出すための設定を含めて作成し、
前記画像形成装置は、
前記情報処理装置から受信したテストの対象であるアプリケーションと、当該アプリケーションに対するテストケースを含むテスト用アプリケーションとをインストールするインストール手段と、
前記アプリケーションに対して、前記テスト用アプリケーションによるテストケースを実行する実行手段と、
前記テストケースの実行が完了した後、前記アプリケーションと、前記テスト用アプリケーションとをアンインストールするアンインストール手段と
を有することを特徴とするシステム。 A system including an image forming apparatus capable of installing and executing a provided application, and an information processing apparatus for providing a development environment for an application executed by the image forming apparatus;
The information processing apparatus includes:
Creating means for creating an application to be executed in the image forming apparatus and a test application including a test case for the application according to a user instruction;
Transmitting means for transmitting the application created by the creating means and the test application to the image forming apparatus;
Have
The creation means includes the application used for executing the test case when the application and the test application are created. Create it with settings to recall,
The image forming apparatus includes:
Installation means for installing an application to be tested received from the information processing apparatus and a test application including a test case for the application;
Execution means for executing a test case by the test application for the application;
A system, comprising: an uninstaller configured to uninstall the application and the test application after execution of the test case is completed.
前記情報処理装置は、前記画像形成装置から前記テストケースの実行結果を受信し、表示する手段を更に有することを特徴とする請求項8に記載のシステム。 The image forming apparatus further includes means for transmitting an execution result of the test case to the information processing apparatus,
The system according to claim 8, wherein the information processing apparatus further includes means for receiving and displaying the execution result of the test case from the image forming apparatus.
開発環境を備える情報処理装置からアプリケーションのテスト実行の指示を受けたことに応じて、テストの対象であるアプリケーションと、当該アプリケーションに対するテストケースを含むテスト用アプリケーションとをインストールするインストール工程と、
前記アプリケーションに対して、前記テスト用アプリケーションによるテストケースを実行する実行工程と、
前記テストケースの実行が完了した後、前記アプリケーションと、前記テスト用アプリケーションとをアンインストールするアンインストール工程と
を有し、
前記アプリケーションが有する設定ファイルには、前記テストケースを実行する際に前記テスト用アプリケーションが前記アプリケーションを呼び出すための設定が含まれることを特徴とする制御方法。 A method for controlling an image forming apparatus having an execution environment capable of installing and executing an application,
In response to receiving an application test execution instruction from an information processing apparatus equipped with a development environment, an installation process for installing an application to be tested and a test application including a test case for the application;
An execution step of executing a test case by the test application for the application;
After the execution of the test case is completed, an uninstall process for uninstalling the application and the test application,
A control method characterized in that a setting file included in the application includes a setting for the test application to call the application when the test case is executed.
ユーザの指示に従って、前記画像形成装置において実行されるアプリケーションと、前記アプリケーションに対するテストケースを含むテスト用アプリケーションとを作成する作成工程と、
前記作成工程にて作成した前記アプリケーションと、前記テスト用アプリケーションとを前記画像形成装置へ送信する送信工程と
を有し、
前記作成工程において、前記アプリケーションおよび前記テスト用アプリケーションを作成する際に、前記テストケースを実行する際に用いられる前記アプリケーションおよび前記テスト用アプリケーションそれぞれが有する設定ファイルにおいて、前記テスト用アプリケーションが前記アプリケーションを呼び出すための設定を含めて作成することを特徴とする制御方法。 An information processing apparatus control method that provides an application development environment to be executed by an image forming apparatus capable of installing and executing an application,
A creation step of creating an application executed in the image forming apparatus according to a user instruction and a test application including a test case for the application;
The transmission step of transmitting the application created in the creation step and the test application to the image forming apparatus,
In the creation step, when creating the application and the test application, in the setting files of the application and the test application used when executing the test case, the test application uses the application. A control method characterized by creating including settings for calling.
開発環境を備える情報処理装置からアプリケーションのテスト実行の指示を受けたことに応じて、テストの対象であるアプリケーションと、当該アプリケーションに対するテストケースを含むテスト用アプリケーションとをインストールするインストール手段、
前記アプリケーションに対して、前記テスト用アプリケーションによるテストケースを実行する実行手段、
前記テストケースの実行が完了した後、前記アプリケーションと、前記テスト用アプリケーションとをアンインストールするアンインストール手段
として機能させ、
前記アプリケーションが有する設定ファイルには、前記テストケースを実行する際に前記テスト用アプリケーションが前記アプリケーションを呼び出すための設定が含まれることを特徴とするプログラム。 Computer
An installation unit that installs an application to be tested and a test application including a test case for the application in response to receiving an instruction to execute an application test from an information processing apparatus having a development environment;
Execution means for executing a test case by the test application for the application;
After the execution of the test case is completed, the application and the test application function as an uninstall unit that uninstalls,
The setting file of the application includes a setting for the test application to call the application when the test case is executed.
ユーザの指示に従って、画像形成装置において実行されるアプリケーションと、前記アプリケーションに対するテストケースを含むテスト用アプリケーションとを作成する作成手段、
前記作成手段にて作成した前記アプリケーションと、前記テスト用アプリケーションとを前記画像形成装置へ送信する送信手段
として機能させ、
前記作成手段は、前記アプリケーションおよび前記テスト用アプリケーションを作成する際に、前記テストケースを実行する際に用いられる前記アプリケーションおよび前記テスト用アプリケーションそれぞれが有する設定ファイルにおいて、前記テスト用アプリケーションが前記アプリケーションを呼び出すための設定を含めて作成することを特徴とするプログラム。 Computer
Creating means for creating an application to be executed in the image forming apparatus and a test application including a test case for the application according to a user instruction;
Causing the application created by the creating means and the test application to function as transmitting means for transmitting to the image forming apparatus;
The creation means includes the application used for executing the test case when the application and the test application are created. A program that is created with settings for calling.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012005665A JP2013145473A (en) | 2012-01-13 | 2012-01-13 | Information processing apparatus and control method thereof, image forming apparatus and control method thereof, system and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012005665A JP2013145473A (en) | 2012-01-13 | 2012-01-13 | Information processing apparatus and control method thereof, image forming apparatus and control method thereof, system and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013145473A true JP2013145473A (en) | 2013-07-25 |
Family
ID=49041234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012005665A Pending JP2013145473A (en) | 2012-01-13 | 2012-01-13 | Information processing apparatus and control method thereof, image forming apparatus and control method thereof, system and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013145473A (en) |
-
2012
- 2012-01-13 JP JP2012005665A patent/JP2013145473A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2013069077A (en) | System, information processing device and control method thereof, image formation device and control method thereof and program | |
US9830135B2 (en) | Declarative and pluggable business logic for systems management | |
US20080250385A1 (en) | Automating the deployment of applications | |
US10656971B2 (en) | Agile framework for vertical application development and delivery | |
US20080178143A1 (en) | System, Method and Computer Program Product for Developing, Configuring, Installing and Testing Software | |
US20100058321A1 (en) | Approach for deploying software to network devices | |
US20060122962A1 (en) | Management method for managing software module and information processor | |
JP2004312711A (en) | Image forming apparatus and method for operating image forming apparatus by using remote application | |
CN107577609B (en) | Embedded system dynamic module debugging system based on host end dynamic link | |
US9626251B2 (en) | Undo configuration transactional compensation | |
JP2011257833A (en) | Information processor, information processing method, and program | |
JP2004185595A (en) | Information processor and program therefor | |
JP2004185593A (en) | Image forming apparatus and application execution method | |
JP2004185594A (en) | Image forming apparatus and program execution method | |
JP2009205262A (en) | Application program installation device, application program installation method, program, and recording medium | |
JP2011107834A (en) | Image processing apparatus, method and program for controlling operation module execution between virtual machines | |
JP2013145473A (en) | Information processing apparatus and control method thereof, image forming apparatus and control method thereof, system and program | |
US9940334B2 (en) | Image forming apparatus and control method thereof | |
JP2013149026A (en) | Information processing apparatus, control method, and program thereof | |
JP2011053729A (en) | Program development support device and system | |
JP2009223577A (en) | User interface emulation device and user interface emulation program | |
JP5144624B2 (en) | Image forming apparatus | |
JP2011060236A (en) | Information processor, development support program, and software integrated development environment | |
JP2019133509A (en) | Container accommodation apparatus, system, container accommodation method and program | |
JP2014142824A (en) | Image forming apparatus, information processing method, and program |