JP6214824B2 - 自動試験装置 - Google Patents

自動試験装置 Download PDF

Info

Publication number
JP6214824B2
JP6214824B2 JP2017513881A JP2017513881A JP6214824B2 JP 6214824 B2 JP6214824 B2 JP 6214824B2 JP 2017513881 A JP2017513881 A JP 2017513881A JP 2017513881 A JP2017513881 A JP 2017513881A JP 6214824 B2 JP6214824 B2 JP 6214824B2
Authority
JP
Japan
Prior art keywords
unit
test
learning
pass
screen
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.)
Active
Application number
JP2017513881A
Other languages
English (en)
Other versions
JPWO2016170618A1 (ja
Inventor
亮治 土手
亮治 土手
水口 武尚
武尚 水口
昌弘 出口
昌弘 出口
下谷 光生
光生 下谷
明 豊岡
明 豊岡
夏実 石黒
夏実 石黒
努 元濱
努 元濱
寿和 加藤
寿和 加藤
勝弘 廣瀬
勝弘 廣瀬
昌行 桐村
昌行 桐村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2016170618A1 publication Critical patent/JPWO2016170618A1/ja
Application granted granted Critical
Publication of JP6214824B2 publication Critical patent/JP6214824B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、画面を表示するソフトウェアの試験を行う自動試験装置に関する。
近年、携帯電話機、タブレット端末、車載機器、また、これらの機器で使用するウェブアプリケーションなどでGUI(Graphical User Interface)が用いられている。製品の品質を保つため、UI(User Interface)画面に対しても十分な試験を行う必要があるが、UI画面は複雑かつ多量となり、UI画面の表示パターンは増加傾向にある。
従来、UI画面の試験は人による操作と人による判断に基づき判定が行われていたが、UI画面の表示パターン増加に伴い、UI画面の試験に必要な時間とコストが増加しており、メーカーや開発者から効率化が求められている。
また、近年では、パーソナルコンピュータ上での自動試験ソフトウェアや自動試験ロボットなどの技術を用いて試験を効率化する方法が提案、実現されている。一般的には、UI画面の試験を行う場合は予めUI画面に表示されることが期待される内容を画像データとした正解画面画像を用意し、試験対象の実動作時のUI画面表示を対象画面画像として取得し、正解画面画像と対象画面画像を比較して差分の有無や類似度を判定することでUI画面の表示を試験する方法が行われている。
しかし、試験対象によっては、試験対象の実行環境や実行タイミングの違いにより、アニメーションなどのUI画面の特定の表示領域が変化してしまうものがあり、準備した正解画面画像と試験対象のUI画面の表示に差異が発生する場合がある。
このような場合、全ての画面に対する正解画面画像が必要となるが、UI画面の複雑化により、全ての画面に対する正解画面画像の準備が困難な場合がある。
この問題に対して、例えば特許文献1では、予め変化領域をマスク領域として準備し、対象画面画像と正解画面画像を比較する際にマスク領域を除く領域を比較する方法が提示されている。
また、変化領域を正解画面画像と対象画面画像から削除して比較する方法がある。しかし、この方法では変化領域が複雑な形状の場合、除外する変化領域の輪郭を準備する工数が増加し、また、削除時に未削除領域が残り比較時に差分が発生する恐れがあった。
この問題に対して、例えば特許文献2では、UI画面内のオブジェクト毎にオブジェクト本体と形状を保持し、比較対象外である背景領域を透過処理したオブジェクト正解画像を準備し、比較前にサイズなどを調整した上で対象画面に合成し、合成結果画像と正解画像を比較する方法が提示されている。
さらに、例えば特許文献3では、ウェブアプリケーションに対して実行するウェブブラウザ環境による差分を学習し、試験実施時に環境に依存して発生する画面表示差分を試験の不合格判定から除外するものが提示されている。
特開2009−134406号公報 特開2012−043062号公報 特開2013−077301号公報
従来のUI画面の試験方法では、正解画面画像やマスクデータの準備が必要であった。しかし、近年ではGUIにアニメーションを用いることが多く、試験実施の条件やタイミングによりUI画面の表示が変化する場合がある。
このため、従来の試験方法では、正解画面画像やマスクデータを準備していたが、動的に変化するUI画面に対応した正解画面画像やマスクデータを準備することは、試験実施の条件やタイミングに対応して準備する必要があり、また、UI画面が複雑化しているため、多数準備する必要があり、さらに、形状が複雑になった場合には、試験に十分なデータを準備することが極めて困難となる。
また、試験実施時の試験対象の環境への負荷状況や試験条件、タイミングによって、UI画面が変化する場合がある。例えば、試験環境の負荷状況によって処理速度が変化し、処理状況を示すプログレスバーの表示が若干ずれる、試験実施時刻によって時計部分の表示文字列が変化するなどである。しかし、これらの変化に対して、処理速度による若干の表示ずれや変化して当然である時刻表示やアニメーションの変化などは試験での不合格判定が不要な場合がある。
しかし、従来のUI画面の試験方法では、UI画面画像の微細な差分を検出して不合格判定となっていた。また、マスク処理により変化領域を完全に除外することで試験対象からその領域を完全に除外してしまい、後で人による判断が必要となる問題がある。
この発明は上記のような問題点を解決するためになされたもので、正解画面画像やマスクデータを自動生成することで試験準備に必要な時間やコストを削減することを目的とする。また、試験実施の環境やタイミングによって発生する差分の傾向を学習して試験時に用いることで、通常発生し得るUI画面表示のばらつきを許容することが可能となる。さらに、従来のマスク処理や単純な画面画像の比較と比べて、変化領域を画面比較から除外せず、また、微細な変化も含めた比較を行うことができるため後で人による判断が必要となる状態を削減できる。
この発明は、上記のような問題点を解決するためになされたもので、試験対象装置の入力機器の操作を行う操作部と、前記試験対象装置の出力画面表示内容を取得する取得部と、前記操作部に対する予め設定された1以上の操作と前記操作に対応する出力画面表示内容を前記取得部から取得するか否かの指示を含む試験手順群を繰り返し実行させ、各操作に対応する複数の出力画面表示内容のばらつきの範囲およびばらつきの傾向を学習し、前記試験対象装置に対する試験の合否判定のための学習データを生成する学習部と、前記学習データを表示する表示部と、前記操作部に対し、予め試験手順に設定された操作を実行し、前記取得部で取得した出力画面表示内容と、前記学習データとの比較を行い、前記試験対象装置に対する試験の合否判定を行う判定部とを有することを特徴とする自動試験装置を提供する。
本発明によれば、試験用データを自動生成するのに必要な時間やコストを削減することが可能となる。
本発明の本実施の形態1に係る自動試験装置のハードウェア構成の一例を示すブロック図である。 本実施の形態1に係る自動試験装置の機能構成の一例を示すブロック図である。 本実施の形態1に係る自動試験装置を用いたシステムの機能構成の一例を示すブロック図である。 本実施の形態1に係る自動試験装置の学習モード時の処理を示すフローチャートである。 本実施の形態1に係る自動試験装置の学習モードの動作イメージである。 本実施の形態1に係る自動試験装置の合否判定基準学習の動作イメージである。 本実施の形態1に係る自動試験装置の合否判定基準再学習の動作イメージである。 本実施の形態1に係る自動試験装置の試験モード時の処理を示すフローチャートである。 本実施の形態1に係る自動試験装置の合否判定方法の一例を示す動作イメージである。 基準画面画像が複数あった場合に、学習モードで取得した画面画像群の一例である。 差分パターンが冗長となってしまった合否判定基準学習データ302の一例である。 基準画面画像と差分パターンを複数持つ場合の合否判定基準学習データ 02の一例である。 本実施の形態2に係る自動試験装置を用いたシステムの機能構成の一例を示すブロック図である。 本実施の形態2に係る自動試験装置の学習モード時の処理を示すフローチャートである。 本実施の形態3に係る自動試験装置を用いたシステムの機能構成の一例を示すブロック図である。 本実施の形態3に係る自動試験装置を製品に組込んで使用する場合の動作について説明するフローチャートである。 本実施の形態3に係る自動試験装置を用いたエラー検出設定とUI画面画像比較の動作イメージである。 本実施の形態4に係る自動試験装置を用いたシステムの機能構成の一例を示すブロック図である。 本実施の形態4に係る自動試験装置を用いたパラメータ補正の処理を示すフローチャートである。
実施の形態1.
図1は、本発明の実施の形態1に係る自動試験装置100のハードウェア構成の具体例を概略的に示すブロック図である。図1に示されるように、実施の形態1に係る自動試験装置100は、当該装置全体の制御を行うプロセッサ1と、記憶装置2と、試験操作インタフェース3と、画像取得インタフェース4と、入力装置5と、出力装置6とを有する。
記憶装置2は、ROM(Read Only Memory)やRAM(Random Access Memory)などのメモリや、ハードディスクなどの外部記憶装置の総称であり、プロセッサ1によってプログラムやデータの読み書きが行われ、また、一時データの格納先としても使用される。
試験対象操作インタフェース3は、試験対象装置の入力機器の操作を行う装置であり、USBケーブル、LANケーブル、赤外線、Bluetooth(登録商標)などの有線や無線の通信機器、ロボット、音声制御装置などである。試験対象操作インタフェース3には、試験対象装置の入力機器を操作するためのプログラムやデータ、通信経路を含んでもよいし、必要な情報を記憶装置2から読み出しプロセッサ1による指示を受けて動作するものであってもよい。
画像取得インタフェース4は、試験対象装置の出力画面表示内容(UI画面画像)を取得するための装置であり、カメラなどのキャプチャ装置である。画像取得インタフェース4は、試験対象装置のUI画面画像を取得するためのプログラムやデータ、通信経路を含んでもよいし、必要な情報を記憶装置2から読み出しプロセッサ1による指示を受けて動作するものであってもよい。
入力装置5は、キーボードやマウス、タッチパッド、有線や無線の通信インタフェース、音声認識、各種センサなどの入力機器とそれらの制御プログラムや通信経路などである。
表示装置6は、自動試験装置100で使用する設定データや出力データなどをユーザへ通知するための装置であり、外部の表示機器(図示せず)へデータ出力を行う通信経路とそれらの制御プログラムや通信経路である。
図2は本実施の形態1に係る自動試験装置100の機能ブロック図である。図2において、制御部102は、自動試験装置100の製品としての機能を特徴づけるプログラムであり、普段はこの制御部102が、自動試験装置100の制御を行っている。
記録部101は、自動試験装置100を動作させるためのプログラムやデータ、一時データなどを記憶装置2に保持する。なお、記憶装置2を記録部101とし、記録部101に対する読み出しおよび書き込み処理を制御部102で行うようにしても良い。
制御部102は、自動試験装置100の各機能の制御や各機能間のデータのやり取りを行う。
試験対象操作部(操作部)103は、試験対象操作インタフェース3を介して試験対象装置200に対する操作やデータの入力を行うための通信経路や赤外線などの送信モジュール、音声出力デバイス、ロボット駆動用のコマンド送信ケーブルやモータなどの駆動装置への信号線などである。また、試験対象操作部103には、試験対象操作部103を構成する機器の制御または制御を行うための信号変換などを行うプログラムやデータを含んでもよい。
試験対象操作部103から試験対象操作インタフェース3を介した試験対象装置200の操作やデータ入力は、入力機器操作用のコマンド文字列データの送信や赤外線などの波形出力、操作ロボットの制御コマンド送信、音声出力デバイスへの音声出力パターン設定、予め製品に用意された操作用コマンド送信などを行い、試験対象装置200に対して本来は人が行う操作やデータ入力を代替して行うものである。なお、試験対象操作インタフェース3を試験対象操作部103とし、試験対象操作部103に対する制御を制御部102で行うようにしても良い。
画面画像取得部(取得部)104は、画像取得インタフェース4を介して試験対象装置200からUI画面の表示内容をビットマップ画像やJPEG(Joint Photographic Experts Group)方式などの静止画像データとして取得する。画像取得インタフェース4を介した画面画像取得部104による試験対象装置200からのUI画面表示内容取得では、試験対象装置200が生成部20から表示部205へ送信した静止画像データを通信経路上から取得する、または、生成部20から表示部205へ送信した映像データから任意のタイミングで取り込み、画像取得インタフェース4または画面画像取得部104において静止画像データに変換してもよい。さらに、試験対象装置200の表示部205に表示された内容を画像取得インタフェース4においてカメラなどから静止画像データとして取得してもよい。画像取得インタフェース4を画面画像取得部104とし、画面画像取得部104に対する制御を制御部102で行うようにしても良い。
画像比較部(比較部)105は、任意の2つの画像データを比較し、一致や差分を検出する。画像データの比較では、任意の2つの画像データの各画素のRGB成分などの色情報または配色パターンなどを比較し、色情報や配色パターンが異なる画素の位置や範囲とRGB成分などの値の違いなどを差分として検出する。
合否判定基準学習部(学習部)106は、試験対象装置200に対し、試験手順301に含まれる操作を繰り返し実施し、各UI画面の表示のばらつきの範囲や傾向を学習し、試験時に合否判定の基準として使用するための合否判定基準学習データ(学習データ)302を生成する。なお、この合否判定基準学習部(学習部)106の動作を、学習モードと呼ぶ。
ユーザフィードバック部(反映部)107は、合否判定基準学習部106で学習した合否判定基準学習データ302に対し、ユーザによる妥当性の確認結果の反映を行い、学習モードを再度行うことによる合否判定基準の再学習や、試験結果303の修正を行う。
妥当性の確認では、例えば、ユーザに対して合否判定基準学習データ302の内容を操作毎に基準画面画像、差分パターン、学習時に取得したUI画面画像群、UI画面画像群の中で合否判定において合格となるものと不合格となるもの、つまり、基準画面画像に対し差分パターンを適用したばらつき範囲に含まれるものと含まれないものの分類とそれぞれの発生割合などを表示する。
ユーザフィードバック部107はUI画面画像群の各UI画面画像に対してユーザが合否の状態を変更できる表示部110を経由したインタフェースを提供する。ユーザは、各UI画面画像に対して合否の状態を確認することで合否判定基準の妥当性を判断し、誤りがあると判断した場合にはユーザフィードバック部107が提供するインタフェースに対し入力部109を経由してUI画面画像の合否の状態の変更を指示する。合否の状態の変更指示を受けたユーザフィードバック部107は、合否判定基準学習部106に対し合否の状態の変更を含んだ合否判定基準学習データ302を渡し、再学習の指示を行う。
合否判定部(判定部)108は、試験実施時に試験対象装置200のUI画面画像に対して合否判定基準学習データ302との比較を行い、試験の合否判定を行う。
入力部109は、自動試験装置100に対するユーザの操作やデータ入力などの要求を受け付ける。
表示部110は、ユーザの要求に応じて変更された自動試験装置100の設定データ(設定情報)や実行した試験の結果を表示装置6に表示する。
なお、記録部101、制御部102、試験対象操作部103、画面画像取得部104、画像比較部105、合否判定基準学習部106、ユーザフィードバック部107、合否判定部108、入力部109、表示部110は、プロセッサ1が記憶装置2に記憶されたプログラムを実行することにより、実現される。また、複数のプロセッサおよび複数のメモリが連携して上記機能を実行してもよい。
図3は本実施の形態1に係る自動試験装置を用いたシステム構成の一例である。
試験対象装置200は、試験対象となるソフトウェア、または、ソフトウェアを含む携帯電話機、タブレット端末、車載機器、パーソナルコンピュータなどの情報機器などである。試験対象装置200は、記録部201、制御部202、生成部203、入力部204、表示部205を有する。
記録部201は、試験対象装置200を動作させるためのプログラムやデータをメモリやハードディスクなどの記録媒体である。
制御部202は、試験対象装置200の記録部201からプログラムやデータを読み出し、読み出した内容と入力部204からの入力内容に応じて、試験対象装置200の各機能を制御するプロセッサや通信経路である。また、制御部202は、記録部201から読み出したプログラムやデータと、入力部204からの入力内容に応じて、UI画面の表示内容をUI画面生成部203にて生成し、表示部205への出力を指示する。また、各機能や機器の間のデータのやり取りを行う。
UI画面生成部(生成部)203は、制御部202の指示により、記録部201から読み出したプログラムやデータに従い、入力部204からの入力内容に応じて、UI画面への表示内容を生成するプログラムやプロセッサ、通信経路などである。
入力部204は、試験対象装置200に対しての操作やデータ入力を受け付ける、キーボードやマウス、タッチパッド、有線や無線の通信インタフェース、音声認識、各種センサなどの入力機器とそれらの制御プログラムや通信経路などである。
表示部205は、試験対象装置200からUI画面表示を行うためのディスプレイなどの表示機器や、外部の表示機器へデータ出力を行う通信経路と、それらの制御プログラムや通信経路である。
データベース部300は、自動試験装置100を動作させる際に使用するデータを保持するハードディスクやメモリなどの記憶媒体である。なお、データベース部300は、ネットワークを経由したサーバ上のハードディスクやメモリなどの記憶装置であってもよい。また、データベース部300は、自動試験装置100の記憶装置2に内蔵してもよい。
試験手順301は、自動試験装置100が試験対象装置200に対して行う操作の内容や手順、待ち時間、入力データ、UI画面画像確認の有無、手順の一部または全体とその繰り返し回数などを示すデータである。なお、試験手順301は、試験対象装置200に対し、実施したい試験の内容に応じて複数用意しても良い。また、試験の実行環境や実行タイミングに影響を受けやすくUI画面表示が変化しやすい場合、または、以前に低確率で発生するUI画面表示のばらつきによる不具合が発生したことがあるなどの理由で、特定の操作に対するUI画面画像のサンプリング量を増やしたいなど重点的に確認を行いたいUI画面や操作手順があれば、それらの繰り返し回数を増加させて強化試験とするなどの指定を試験手順301で行ってもよい。なお、操作タイミングや待ち時間によるUI画面表示の変化の試験を行う場合は、試験手順301内に待ち時間とUI画面画像確認の有無を組み合わせて設定することで実現できる。
合否判定基準学習データ(学習データ)302は、自動試験装置100の合否判定基準学習部106により生成された、各UI画面の表示のばらつきの範囲や傾向を示すデータである。
試験結果303は、自動試験装置100による試験の実施で得た結果を示すデータである。試験結果303は、試験手順301の各操作における試験の合否判定結果とUI画面画像などの動作結果を記録したデータである。
次に動作について説明する。本発明の大きな動作の流れとして、まず、学習モード実施により試験対象装置100のUI画面表示のばらつきの範囲や傾向を学習し、次に試験モード実施により試験対象装置100の試験を実施し、学習モードで学習したUI画面表示のばらつきの範囲や傾向を用いて試験の合否判定を行う。
最初に学習モードの動作を説明する。学習モードの動作の流れを図4に示す。なお、本実施の形態では、試験対象装置200に対する操作やデータ入力をx回実行する試験手順群(群)を有する試験手順301をn回繰り返し実施する例について、説明を行う。
自動試験装置100の制御部102は、データベース部300から試験手順301を読み出し、学習部106を呼び出す(S101)。
学習部106は、読み出した試験手順301に従い、試験対象操作部103から試験対象装置200の入力部204に対し、操作やデータ入力を行う(S102)。なお、学習部106が、試験手順301に従い、試験対象装置200の操作を続ける中で、試験手順301に試験対象装置200からのUI画面画像取得の手順を、試験手順301を構成する試験用コマンド群などの中からUI画面画像取得コマンドなどとして検出した場合、画面画像取得部104は、試験対象装置200からその時の試験対象装置200のUI画面画像を画像データとして取得する(S103)。
学習部106は、試験手順301を完了するまで、上記の試験対象装置200の操作と必要に応じて試験対象装置200からUI画面画像の取得を繰り返す(S104)。
学習部106は、試験手順301の群を全て終了すると、試験手順301を試験した回数が、予め設定された繰り返し回数nとの比較を行い、試験した回数がnよりもまだ少ない場合は、再度試験手順301の試験実行を行う(S105)。
学習モードのここまでの動作のイメージを図5に示す。
学習部106は、操作部103を介して、群に含まれる各操作やデータ入力を順次実施し、UI画面画像取得指示がある場合は取得部104を介して、そのときのUI画面画像を取得する。
学習部106は、群を繰り返し実施することで群の各操作と手順に対応したUI画面画像を繰り返しの数だけ取得する。なお、群における同じ操作手順に対する繰り返し毎のUI画面画像の集まり(図5の点線で囲ったUI画面画像の集まり)を、UI画面画像群と呼ぶ。
図4のフローチャートの説明に戻る。
合否判定基準学習部106は、試験手順301で得られたUI画面画像をもとに、合否判定基準学習データ302を生成する(S106)。なお、本実施の形態では、合否判定基準学習データ302の一例として、基準画面画像と差分パターンを用いる方法について説明する。
図6は、合否判定基準学習部106が、合否判定基準を学習する実施例である。
まず、合否判定基準学習部106は、基準画面画像501を生成する。なお、基準画面画像501は、合否判定基準学習部106が試験手順301を繰り返し回数分、実施して得られた、各操作に対応したUI画面画像群の平均的な情報とする。ここでは基準画面画像をUI画面画像群に含まれる各UI画面画像の各画素のRGB成分の平均値とし、図6の基準画面画像501の画面1、画面2、画面xのように各操作に対応したUI画面画像群から基準画面画像を生成する。図6の基準画面画像501では、基準画面画像を画像イメージとして表現した例を示している。
次に合否判定基準学習部106は、差分パターン502を生成する。
差分パターン502は、先程生成した試験手順301の各操作に対応した基準画面画像に対して、試験手順301の各操作に対応したUI画面画像群の各UI画面画像が持つ、差分の範囲と傾向を示したデータとする。本実施の形態では、差分の範囲として各操作に対応したUI画面画像群の基準画面画像に対して、UI画面画像群に含まれる各UI画面画像の各画素のRGB成分が最も小さい場合の差分(図6の503)と最も大きい場合の差分(図6の504)を抽出したものとする。
また、合否判定基準学習部106は、UI画面画像群の各UI画面画像の基準画面画像に対する差分の発生傾向を算出する。本実施の形態では、差分の傾向としてUI画面画像群に含まれる各UI画面画像の各画素のRGB成分が基準画面画像に対して、小さい場合は図6の503の傾向、大きい場合は図6の504の傾向として、どちらに分布するかをUI画面画像群に含まれるUI画面画像の数に対する割合として算出している。
なお、図6の例では、画面1の場合は、UI画面画像群の各UI画面画像が全て一定している場合を示しており、基準画面画像に対する差分は無いため、差分の範囲に差はなく、発生傾向は100%である。画面2の場合は、基準画面画像に対してUI画面画像内の斜線の矩形部分505が、UI画面に表示されない場合があり、UI画面画像内の矩形部分506が、UI画面に表示される場合があることを示している。画面xの場合も、画面2の場合と同様に、UI画面画像内の斜線の矩形部分505がUI画面に表示されない場合があり、UI画面画像の矩形部分506がUI画面に表示される場合があることを示している。
なお、本実施の形態では、試験手順301の操作を繰り返し回数分、実施した後に合否判定基準学習(S106)を実施したが、試験手順301の各操作を実施し試験対象装置200からUI画面画像を取得するタイミングで随時、合否判定基準学習(S106)を実施してもよい。
次に制御部102は、表示部110を呼出し、合否判定基準学習の結果を、ユーザに通知する。ユーザは、学習結果の確認を行い、妥当なないようであるかの判定を行う(S107)。ここで、ユーザによる学習結果の確認が必要な理由について説明する。合否判定基準学習部106が、合否判定基準学習(S106)において、UI画面表示のばらつきの範囲と傾向を学習している最中に、偶発的な問題により、UI画面表示に異常が発生した場合や不具合が含まれている場合がある。このような場合、そのまま学習データとして試験を行うと合否判定に影響を及ぼす恐れがあるため、ユーザによる学習データの確認を行うことで異常なUI画面表示の情報を学習データから取り除き、試験モード時に使用する合否判定基準学習データ302の妥当性を保証する。
ユーザによる学習結果の確認の例として、合否判定基準学習(S106)で生成した基準画面画像と差分パターン、対応する試験手順301内の操作をユーザへ通知する方法が考えられる。合否判定基準学習(S106)で得た学習データをユーザへ通知する際は、ユーザが差分を認識しやすいよう、3Dグラフやヒートマップのようにグラフィカルに表示してもよい。
ユーザは、通知された内容を確認し(S107)、合否判定基準学習(S106)の結果が妥当であるかを判断し(S108)、もしユーザが学習結果に問題があると判断した場合には、前記の妥当性の確認で例を挙げたように合否判定基準学習データ302に対する各UI画面画像の合否状態に対するフィードバックが必要とする内容を自動試験装置100の入力部109に入力する。
フィードバックを必要とする内容は、例えば「X番目の操作によるUI画面表示は現在の学習結果では合格に分類されているが、UI画面表示内容が異常であるため基準画面画像、差分パターンに含めないよう再学習する」や「Y番目の操作によるUI画面表示は現在の学習結果では合格と分類されているが、UI画面表示内容が異常であるためユーザが合格と判断し選んだ別の繰り返し時のY番目の操作によるUI画面表示と同じ画像を使い基準画面画像、差分パターンの再学習を行う」などである。
入力部109は、ユーザから受け付けたフィードバックを必要とする情報を、ユーザフィードバック部107に渡す。ユーザフィードバック部107は、ユーザから受け付けたフィードバックの内容を反映した合否判定基準の再学習を行う(S109)。
図5を用いて、再学習の例について説明する。図5では、試験手順301の群の繰り返しn回目において、操作xに対する画面xの表示が繰り返し1回目、繰り返し2回目と比べて、画面中央部への矩形の表示(白抜き文字XXX)が行われるという差異がある。この差異の発生が繰り返し回数nのうちの1回のみであった場合、図6の合否判定基準学習結果507の発生傾向は1/nとなる。ユーザは、この発生傾向の値を見ることにより、他の発生傾向と比べて明らかに発生頻度が低く特異な傾向と判断できる。
また、ユーザが、予めUI画面画像の正しい表示結果を知っていた場合には、UI画面画像群の中で507の表示内容が異常であることを目視で判断できる。
学習データが異常と判断したユーザは、上記の例の場合だと、試験手順301の群の繰り返しn回目における画面xが異常であることを入力部109に入力する。 ユーザフィードバック部107は、入力部109に入力された内容をもとに、合否判定基準の再学習を実施する。
ユーザフィードバック部107は、合否判定基準の再学習において、図5における各UI画面画像の取得結果から、ユーザから異常であると指定された試験手順301の群の繰り返しn回目における画像xを除いた、残りの全ての繰り返し毎の各操作に対するUI画面画像に対し、合否判定基準学習(S106)と同様の手順で合否判定基準の再学習を行う。再学習の結果、合否判定基準の学習結果、図7に示すようになったとする。図7では、画面xにおける画面中央部への矩形の表示(白抜き文字XXX)が基準画面画像に対する差分パターンから除外される。つまり、試験モード時の合格基準から除外される。
上記の手順S107〜S109は、ユーザがフィードバック不要と判断するまで繰り返し実施される(S108)。
ユーザがフィードバック不要と判断した場合、記録部101は、学習モードで得た試験手順301の群における各操作に対応したUI画面画像群、基準画面画像、差分パターンをデータベース部300の合否判定基準学習データ302として記録する(S110)。
なお、本実施の形態と、別の方法で合否判定基準の学習を行った場合には、その別の方法が必要とする合否判定基準学習データ302を記録部101は、記録する。
以上が基準画面画像と差分パターンを用いた学習モードの動作の例である。
次に試験モードの動作を説明する。試験モードの動作の流れを図8に示す。
最初に制御部102は、データベース部300から試験手順301を読み出し、学習部106を呼び出す(S201)。
学習部106は、読み出した試験手順301に従い、試験対象操作部103から試験対象装置200の入力部204に対し、操作やデータ入力を行う(S202)。
学習部106が、試験手順301に従い、試験対象装置200の操作を続ける中で、試験手順301に試験対象装置200からのUI画面画像取得の手順を検出した場合、画面画像取得部104は、試験対象装置200からその時の試験対象装置200のUI画面画像を画像データとして取得する(S203)。
学習部106は、試験手順301を完了するまで、上記の試験対象装置200の操作と必要に応じて試験対象装置200からUI画面画像の取得を繰り返す(S204)。
学習モードでは、試験手順301の群を繰り返し回数分だけ繰り返し実行してUI画面画像を収集していたが、試験モードでは、試験手順301の群を一回だけ実行してUI画面画像を収集する。
学習モードが、試験手順301の手順を全て終了後(S204)、合否判定部108は、学習モードで生成した合否判定基準学習データ302を用いて、試験対象装置200のUI画面画像に対する試験の合否判定を実施する(S205)。
図9を用いて合否判定の例について説明する。本実施の形態では、合否判定の方法の一例として、学習モードで生成した基準画面画像と差分パターンを用いた合否判定方法について説明する。
合否判定は合否判定部108によって行われる。合否判定部108は、画像比較部105を用いて、試験モード(図8:S201〜S204)で得た試験手順301の各操作に対応するUI画面画像と、学習モード(図1:S101〜S110)で得た試験手順301の各操作に対応する基準画面画像の比較を行う。
合否判定部108は、試験モードで得た各操作に対応したUI画面画像と、対応した基準画面画像との比較を行い、発生した差分が各操作に対応した差分パターンの範囲に収まる場合に合否判定を合格とし、そうでない場合は不合格と判断する。
例えば、試験モードで得た試験手順301の操作2に対するUI画面画像は、学習モードで得た試験手順301の操作2に対する基準画面画像と比較した場合、差分は合否判定基準学習データ302の範囲内に収まるため、操作2の試験合否判定は合格となる。
また、試験モードで得た試験手順301の操作xに対するUI画面画像は、学習モードで得た試験手順301の操作xに対する基準画面画像と比較した場合、画面中央部の矩形部分が差分として検出される。この差分は合否判定基準学習データの差分パターンにも含まれていないため、試験手順301の操作xに対する試験合否判定は不合格となる。
合否判定部108は、試験手順301の全ての操作に対して上記のように合否判定を行う。
なお、本実施の形態では、試験手順301の操作を全て実施完了後に試験合否判定(S205)を実施するよう説明を行ったが、試験手順301の各操作を実施し、試験対象装置200からUI画面画像を取得するタイミングで随時、試験合否判定(S205)を実施してもよい。
次に合否判定部108は、試験の合否判定の結果が妥当な内容であるかの確認をユーザへ通知する(S206)。ユーザへの通知には、表示部110が用いられる。
合否判定部108は、併せて、自動試験装置100による試験合否判定が妥当であるかを確認することもユーザへ通知する。
なお、本実施の形態では、試験の合否判定の結果が得られた後に合否判定部がユーザに対し通知を行う例について説明したが、このユーザへの通知を行う手順は、試験モードの完了後、ユーザ側から自動試験装置100に対して要求があった時点で行ってもよい。
表示部110は、試験合否判定(S205)の結果として試験手順301の各操作に対する合否判定結果と試験モードで得たUI画面画像、基準画面画像とこれに対する差分、差分パターンなどをユーザへ通知する。通知の方法は学習モード時のユーザへの確認と同様にグラフィカルな表示を用いて認識しやすくしてもよい。
ユーザは、通知された合否判定結果と試験モードで得たUI画面画像、基準画面画像に対する差分、差分パターンなどを確認し、合否判定結果に問題があると判断した場合は、フィードバックが必要とする内容を自動試験装置100の入力部109に入力する(S207)。
入力部109は、ユーザから受け付けたフィードバックを必要とする情報を、ユーザフィードバック部107に渡し。ユーザフィードバック部107は、ユーザから受け付けたフィードバックの内容にした内容を反映した合否判定基準の再学習と試験の合否判定結果の修正を行う(S208)。
図9では、試験手順301の操作xのUI画面画像がユーザの確認結果により合格とする場合、学習モード時の例で図6から図7へ再学習を行った場合と同様に、UI画面画像群に試験モードで得た試験手順301の操作xに対するUI画面画像を含めて合否判定基準の再学習を行い、合否判定基準学習データ302を更新する。
この場合の合否判定基準の再学習の結果は図6のようになる。また、ユーザにより合格と判断された試験手順301の操作xの合否判定結果を不合格から合格に修正する。 判定部108は、ユーザがフィードバック不要と判断するまで、上記の手順S206〜S208を繰り返し実施する(S207)。
記録部101は、試験モードで得た試験手順301の各操作に対応したUI画面画像と試験の合否判定結果を試験結果303としてデータベース部300に記録する。また、記録部101は、更新された合否判定基準学習データ302をデータベース部300に記録する。
以上が基準画面画像と差分パターンを用いた試験モードの動作の例である。
なお、学習モード、試験モードにおいて生成したデータや試験対象装置200から得られたUI画面画像は、ユーザが自動試験装置100の入力部109に対して要求操作を入力することで、表示部110を用いて随時確認することができる。
以上のように、試験対象装置200を自動的に操作しUI画面画像を取得することにより、従来の正解画面画像やマスクデータにあたる情報を合否判定基準学習データ302として自動的に生成でき、試験準備に必要な時間やコストを削減することが可能となる。
また、試験手順30を用いて同様の操作手順を複数回実施し、同じ操作手順に対するUI画面画像のばらつきの範囲や傾向を合否判定基準として学習し試験の合否判定に用いることにより、通常の動作で発生し得る試験で許容可能なUI画面表示のばらつきを許容することを可能とし、従来だと試験対象領域としてマスク処理などの準備が困難であった領域も自動試験の対象となり、ユーザの判断がひつようとなる作業を削減することが可能となる。
本実施の形態では、合否判定基準学習データ302に含む基準画面画像と差分パターンを試験手順301の各操作に対して1つとしたが、合否判定基準学習データ302に含む基準画面画像と差分パターンを各操作に対して複数持ってもよい。
図10、図11、図12を用いて、合否判定基準学習データ302の基準画面画像と差分パターンを試験手順301の任意の操作に対して複数持つ場合の例について説明する。
試験手順301の任意の操作に対し繰り返し実施した結果得られたUI画面画像群を図10に示す。
合否判定基準学習の結果、UI画面画像の正常ケースを基準画面画像と差分パターンで表現すると、図11に示すように冗長な合否判定基準学習データ302となり、合否判定基準の精度を低下させる可能性がある。このような場合、前記図4の学習結果確認(S107)での学習結果の妥当性確認を行い、その結果、ユーザフィードバック部107によりユーザが合否判定基準学習データ302からUI画面画像一覧をチェックし、特定のUI画面画像を別の正常ケースとして選択できるように選択肢をユーザフィードバック部107からユーザへ提供する。
ユーザフィードバックのように、ユーザにより別の正常ケースとして特定のUI画面画像が選択された場合、再学習を行い、図12に示すように特定の操作に対するUI画面表示に対して複数の基準画面画像と差分パターンを合否判定基準学習データ302に保持できる。
合否判定基準学習データ302に1つの試験手順301の操作に対して複数の基準画面画像と差分パターンを持つ場合、図8に示す試験モードにおける試験合否判定(S205)では、図12のように複数の基準画面画像と差分パターンの全てのケースと試験で得たUI画面画像を比較し、いずれかの基準画面画像と差分パターンに一致する場合に合格と判定する。
この方法により、操作手順や入力データの内容によりUI画面表示が大きく変化する場合への対応が可能となる。
実施の形態2.
本実施の形態では、実施の形態1にエラー推定機能を加えた場合について説明する。
図13は、エラー推定機能を加えた場合の自動試験装置100を用いたシステム構成の一例である。図13において、図3と同一符号である、記録部101、制御部102、操作部103、取得部104、比較部105、学習部106、反映部107、判定部108、入力部109、表示部110、記録部201、制御部202、生成部203、入力部204、表示部205、試験手順301、学習データ302、試験結果303は、同一または相当する部分を表しており、図3で説明したものと同じである。
自動試験装置100のエラー推定部(推定部)111は、データベース部300から読み出したエラー推定設定(推定設定)304をもとに、学習モードでの合否判定基準学習(S106)や試験モードでの合否判定基準学習データ302による試験合否判定(S205)に加えて試験対象装置200のUI画面画像のばらつきの範囲や傾向から特定の偏りを持つものをエラーと推定する。
データベース部300のエラー推定設定(推定設定)304は、エラー推定部111でエラー推定に用いるデータであり、エラー推定の基準となるばらつきの範囲や傾向を示すものでありユーザが設定する。
なお、エラー推定部111は、プロセッサ1が記憶装置2に記憶されたプログラムを実行することにより、実現される。また、複数のプロセッサおよび複数のメモリが連携して上記機能を実行してもよい。
エラー推定を用いた動作について説明する。エラー推定を用いた学習モードの動作の流れを図14に示す。なお、本実施の形態では、実施の形態1で用いた、合否判定基準学習データ302の基準画面画像、差分パターンを例として用いる。
まず、制御部102は、データベース部300からエラー推定設定304を読み出す。エラー推定設定304は、図13に示すように外部(ネットワークを経由したサーバもしくは外部記憶装置)から取得してもよいし自動試験装置100の記録部101のように自動試験装置100に内蔵した記録媒体に記録し必要に応じて読み出してもよい。また、エラー推定設定304の内容はユーザが希望する任意のエラー推定基準に変更してもよいし、過去に取得した合否判定基準学習データ302からエラー推定設定304の形式として抽出するよう改良して抽出した結果を使用してもよい。
次に推定部111は、読み出したエラー推定設定304と合否判定基準学習データ302を用いてエラー推定を行う(S301)。
エラー推定設定の例として、図6における合否判定基準学習データ302の差分パターンの発生傾向が一定の割合e/n以下の場合エラーと判断するよう設定する。
実施の形態1では、合否判定基準学習(S106)の後、ユーザへ基準画面画像や差分パターンなどの合否判定基準学習データ302と学習モードで得た試験対象装置200のUI画面画像群を通知することにより、ユーザによる学習結果の妥当性の確認を行った。 これに対し、エラー推定を用いた、本実施の形態の場合では、エラー推定実施(S301)において、合否判定基準学習(S106)で得た差分パターンに対してエラー推定設定304で設定された差分パターンの発生傾向がe/n以下の場合にエラーとして検出する。例えば、図6の507の発生傾向d/nがエラー推定設定304の発生傾向e/n以下の場合、図6の507に分類された各UI画面画像に異常の可能性があるとして検出する。
実施の形態1の説明で、図4の合否判定基準学習(S106)の結果に対して行ったのと同様に、エラー推定部111で検出した結果は、S107〜S109においてユーザへ通知され、ユーザによる確認とフィードバックの要否判断が行われる。
例えば、エラー推定部111でエラー推定した通り、ユーザへ通知したUI画面画像が異常であるとユーザが判断した場合は、ユーザによるその内容が入力部109へ入力され、ユーザフィードバック部107により(S108)実施の形態1と同様に合否判定基準の再学習(S109)を実施する。
このように、エラー推定部111が、エラー推定設定304で設定された条件に合った内容を自動的に判断し、ユーザへ通知することにより、ユーザによる合否判定基準学習データ302の妥当性の確認と異常の検出判断に必要な負荷を軽減することが可能となり、試験用データを自動生成するのに必要な時間やコストを削減することが可能となる。
なお、本実施の形態では、エラー推定(S301)の実施を試験手順301の手順を完了し合否判定基準学習(S106)の後に行ったが、処理の順序は必要に応じて変更してもよい。
実施の形態3.
本実施の形態では、実施の形態1に加えて、発明の対象である自動試験装置100を製品や試験環境に内蔵した場合について説明する。自動試験装置100を製品や試験環境に内蔵することで、既に市場に出回った製品動作中のUI画面表示で検出可能な異常や、開発段階や市場不具合発生後のUI画面表示で検出可能な異常の再現試験での検出に使用する。
図15は、本発明の本実施の形態3に係る自動試験装置を用いたシステム構成の一例である。なお、本実施の形態では、試験対象装置200を製品や試験環境として説明を行う図15において、図3と同一の符号である、記録部101、制御部102、操作部103、取得部104、比較部105、学習部106、反映部107、判定部108、入力部109、表示部110、記録部201、制御部202、生成部203、入力部204、表示部205、試験手順301、学習データ302、試験結果303は、同一または相当する部分を表しており、図3で説明したものと同じである。
データベース部300のエラー検出設定(検出設定)305は、異常の検出に必要な情報を保持するデータである。
エラー検出設定305は、UI画面画像を異常と判別するための基準である。ここではエラー検出設定305は、製品出荷前に予め用意された操作と操作に対応する基準画面画像と差分パターンを記録したものとする。エラー検出設定305とUI画面画像を比較した結果、エラー検出設定305に含まれない場合はUI画面表示が異常であると判断することができる。なお、エラー検出設定305は、ユーザにより基準画面画像と差分パターンと同様の情報を作成してもよいし、基準画面画像と差分パターンに含まれる内容を正常ではなく異常と判断するように設定する方法を取ってもよい。
自動試験装置100のログ出力部(出力部)112は、試験対象操作部103と類似の構成であり、異常検出時に試験対象装置200に対して異常発生を通知し、ログ出力やメモリダンプなどの後の異常解析作業に用いるデータの記録を指示する。なお、ログ出力部112は、プロセッサ1が記憶装置2に記憶されたプログラムを実行することにより、実現される。また、複数のプロセッサおよび複数のメモリが連携して上記機能を実行してもよい。
試験対象装置200のログ出力部(出力部)206は、自動試験装置100から異常発生の通知を受け、ログ出力やメモリダンプなどの情報を記録する。記録先は、試験対象装置200の記録部201でもよいし、自動試験装置100へ通知して自動試験装置100の記録部101へ記録してもよい。また、データベース部300など外部の記録媒体へ通知し記録を行ってもよい。
次に図16を用いて、自動試験装置を製品に組込んで使用する場合の動作について説明する。
自動試験装置100の制御部102は、試験対象装置200起動時にデータベース部300のエラー検出設定305を読み込む(S401)。
本実施の形態では、エラー検出設定305のデータとして実施の形態1の図6で用いた画面2のUI画面画像群の基準画面画像と差分パターンを示すものとするが、エラー検出設定305のデータの内容は、任意の画像データなどに変更してもよい。
取得部104は、取得部104の内部または制御部102などに持つタイマで時間を計測し、予め設定された時間が経過すると(S402)試験対象装置200からUI画面画像を取得すると、画像比較部105を呼び出す。
試験対象装置200が稼働する中で自動試験装置100は、試験対象装置200のUI画面表示内容をUI画面生成部203から画面画像取得部104により取得する(S403)。ここでは、試験対象装置200からのUI画面表示内容の取得の一例として、UI画面表示内容を短時間の間隔で定期的に取得するものとする。
試験対象装置200からUI画面画像を取得する時間の間隔や画面の大きさ、位置などの条件は、エラー検出設定305で設定してもよい。なお、これらの設定は制御部102がエラー検出設定305を読み込んだ際に設定を行う。
画像比較部105は、取得したUI画面画像とエラー検出設定305の内容の比較を行う。
合否判定部108は、画像比較部105の結果を受け取り、試験対象装置200から取得したUI画面画像がエラー検出設定305の条件に含まれるかを判断する。なお、本実施の形態では、エラー検出設定305に基準画面画像と差分パターンを使用しているため、合否判定部108を用いて、試験対象装置200から取得したUI画面画像とエラー検出設定305を比較する(S404)。
製品組込みの場合、製品の操作はユーザが行い、自動試験装置100から操作を行わないためエラー検出設定305に含まれる基準画面画像と差分パターンをユーザの操作手順とを完全に対応付けることができない。このため、本実施の形態では、試験対象装置200から取得したUI画面画像をエラー検出設定305に含まれる全ての基準画面画像と差分パターンに対し総当たりで比較を行うものとする。その例を図17に示す。また、エラー検出設定305には製品出荷前に予め全ての操作に対する基準画面画像と差分パターンを取得し記録されているものとする。
合否判定部108は、試験対象装置200から取得したUI画面画像とエラー検出設定305を比較し、エラー検出設定305に含まれない場合は、異常と判断する(S404)。
上記において合否判定部108が異常と判断した場合、合否判定部108は制御部102を経由してログ出力部112へ異常を通知し、ログ出力部112は試験対象装置200に対し、異常発生の通知を行う(S405)。
異常発生の通知を受けた試験対象装置200はログ出力部206により、記録部201などの記録媒体へ動作ログやメモリダンプなどの動作情報の記録を行う(S406)。
このように、試験対象装置200の通常動作時のUI画面表示を常時受け取り、エラー検出設定305に予め用意した基準画面画像、差分パターンなどの異常判別情報と比較をすることにより、異常が発生したことを自動的に検出し、ログ出力やメモリダンプなどの動作情報を記録することができるようになり、後の解析作業を効率的に行うことが可能となる。
特に異常の発生頻度が特に低い場合においては、人によるログやメモリダンプの解析作業だと手間と時間がかかるため、非効率的である。
本発明によりUI画面表示に影響する異常を自動検出し、必要な情報のみを自動的に記録することで人による解析作業の負荷を軽減することが可能となる。メモリの不正アクセスなどのようにシステムに明確な異常を示す不具合はプログラム上発見し易いが、市場での動作環境に起因する問題やプログラム上のエラー検出処理では発見できない設計や実装の不具合流出による極めて低い頻度での不正なUI画面表示が発生する場合は、特に本発明での効果を得られると考える。
本実施の形態で説明した、製品組込みの例では、実施の形態1の構成に加えて異常の検出と動作情報の記録に必要な機能を追加したが、不要であれば市場での製品組込み時に自動試験装置100の合否判定基準学習部106やユーザフィードバック部107などの機能やデータベース部300の学習データ302、試験結果303などの情報を除外してもよい。
また、自動試験装置100の機能は、試験対象装置200に含んでもよいし、独立させてもよい。さらに、ログ出力などの動作情報の記録の指示と実施を行う機能は、自動試験装置100や試験対象装置200にまとめてもよいし、または、各装置に分散させてもよく、外部へ通信などにより通知を行ってもよい。
実施の形態4.
本実施の形態は、実施の形態1に加えて、自動試験装置100のプロセッサ1などの処理速度や試験操作インタフェース3、画像取得インタフェース4、制御部102の処理速度や通信速度、または、試験対象装置200の処理速度などの影響により、自動試験装置100や試験対象装置200の処理タイミングの変化に対応するためパラメータによる補正機能を持たせたものである。
図18は、パラメータによる補正機能を持たせた場合の自動試験装置100を用いたシステム構成の一例である。図18において、図3と同一符号である、記録部101、制御部102、操作部103、取得部104、比較部105、学習部106、反映部107、判定部108、入力部109、表示部110、記録部201、制御部202、生成部203、入力部204、表示部205、試験手順301、学習データ302、試験結果303は、同一または相当する部分を表しており、図3で説明したものと同じである。
自動試験装置100のパラメータ補正部(補正部)113は、データベース部300から読み出した補正パラメータ(パラメータ)306をもとに、学習モードや試験モードにおける試験手順301に含まれた各操作やデータ入力、UI画面画像取得のタイミングを早く、または、遅くするものである。
データベース部300の補正パラメータ306は、補正部113で試験手順301に含まれる操作やデータ入力、UI画面画像取得に対し、予め設定された待ち時間の短縮、待ち時間の追加に用いるデータであり、試験手順301に含まれる操作やデータ入力、UI画面画像取得のタイミングを補正するためにユーザが設定するものである。
なお、補正部113は、プロセッサ1が記憶装置2に記憶させたプログラムを実行することにより、実現される。また、複数のプロセッサおよび複数のメモリが連携して上記機能を実行してもよい。
パラメータ補正を用いた動作について説明する。パラメータ補正を用いた試験手順301の実施の流れを図19に示す。なお、本実施の形態では、実施の形態1で用いた、試験モードにおける試験手順301の実施を例として用いる。
まず、自動試験装置100の制御部102は、データベース部300から試験手順301と補正パラメータ306を読み出し、学習部106を呼び出す(S201)。
学習部106は、読み出した試験手順301に含まれる操作やデータ入力を試験対象装置200に対して行う前に、読み出した補正パラメータ306と試験手順301をパラメータ補正部113へ渡し補正を指示する(S601)。
パラメータ補正の例として、図5の学習モードにおける操作1の操作、データ入力S102の中にUI画面画像取得S103を実施するまでの待ち時間が1秒として定義されているとする。また、補正パラメータ306には試験手順301の繰り返し毎の操作1に対しUI画面画像取得へ移るまでの待ち時間を1秒追加する内容を含んでいるものとする。
ここでは学習モードの試験手順301を例としているが、試験手順301の内容は試験モードでも同等のため問題ない。
パラメータ補正部113は、試験手順301から読み出した操作1に対応する補正情報を補正パラメータ306から検索し、待ち時間を1秒追加する内容を見つける。パラメータ補正部113は、試験手順301から読み出した操作1の操作、データ入力S102の中から待ち時間を1秒とする情報を見つけ、補正パラメータ306から見つけた待ち時間を1秒追加する内容を反映し、待ち時間を2秒として学習部106へ返す。
学習部106は、パラメータ補正部113から受け取った情報をもとに、待ち以外の操作やデータ入力の実施後、UI画面画像取得までに2秒の待ちを行う(S202)。
UI画面画像取得(S203)以降の流れは実施の形態1と同様である。
以上のように、既に用意された試験手順301に対しパラメータ補正を行うことで、自動試験装置100や試験対象装置200の処理性能などにより、一部の試験手順301の操作やUI画面画像取得のタイミングを調整することができる。自動試験装置100や試験対象装置200を構成する各要素の処理性能が変化した場合、UI画面表示が次のUI画面表示へ遷移する早さなどの変化が想定されるが、パラメータ補正を行うことで既に使用した試験手順301や合否判定基準学習データ302を変更することなく、補正パラメータ113を追加するのみで異なる処理性能の自動試験装置100や試験対象装置200での学習モードや試験モードの実施が可能となり、資源の有効活用や作業の効率化を行うことができる。
1 プロセッサ、2 記憶装置、3 試験操作インタフェース、4 画像取得インタフェース、5 入力装置、6 表示装置、100 自動試験装置、101 記録部、102 制御部、103 操作部、104 取得部、105 比較部、106 学習部、107 反映部、108 判定部、109 入力部、110 表示部、111 推定部、112 出力部、補正部113、200 試験対象装置、201 記録部、202 制御部、203 生成部、204 入力部、205 表示部、300 データベース部、301 試験手順、302 学習データ、303 試験結果、304 推定設定、305 検出設定、306 パラメータ。

Claims (5)

  1. 試験対象装置の入力機器の操作を行う操作部と、
    前記試験対象装置の出力画面表示内容を取得する取得部と、
    前記操作部に対する予め設定された1以上の操作と前記操作に対応する出力画面表示内容を前記取得部から取得するか否かの指示を含む試験手順群を繰り返し実行させ、各操作に対応する複数の出力画面表示内容のばらつきの範囲およびばらつきの傾向を学習し、前記試験対象装置に対する試験の合否判定のための学習データを生成する学習部と、
    前記学習データを表示する表示部と、
    前記操作部に対し、予め試験手順に設定された操作を実行し、前記取得部で取得した出力画面表示内容と、前記学習データとの比較を行い、前記試験対象装置に対する試験の合否判定を行う判定部と
    を有することを特徴とする自動試験装置。
  2. 前記学習データに対する妥当性が入力される入力部と、
    前記学習データに対し、前記妥当性を反映した再学習を行い、再学習データを生成する反映部とを有し、
    前記判定部は、前記操作部に対し、予め試験手順に設定された操作を実行し、前記取得部で取得した出力画面表示内容と、前記再学習データとの比較を行い、前記試験対象装置に対する試験の合否判定を行うことを特徴とする請求項1に記載の自動試験装置。
  3. 前記学習部が生成した学習データに対し、取得した出力画面表示内容のばらつきの範囲およびばらつきの傾向がエラーであると推定する推定部を有することを特徴とする請求項1または2に記載の自動試験装置。
  4. 前記判定部は、検出設定に基づき、前記出力画面表示内容に異常があるか否かを判断し、
    前記判定部が異常があると判断した場合、前記試験対象装置に対して異常検出によるログ出力またはメモリダンプの動作情報の記録を指示する出力部を有することを特徴とする請求項1から3のいずれか一項に記載の自動試験装置。
  5. 前記試験手順群に設定された各操作の待ち時間を補正する補正部を有することを特徴とする請求項1から4のいずれか一項に記載の自動試験装置。
JP2017513881A 2015-04-22 2015-04-22 自動試験装置 Active JP6214824B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/062240 WO2016170618A1 (ja) 2015-04-22 2015-04-22 自動試験装置

Publications (2)

Publication Number Publication Date
JPWO2016170618A1 JPWO2016170618A1 (ja) 2017-06-29
JP6214824B2 true JP6214824B2 (ja) 2017-10-18

Family

ID=57142946

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017513881A Active JP6214824B2 (ja) 2015-04-22 2015-04-22 自動試験装置

Country Status (3)

Country Link
JP (1) JP6214824B2 (ja)
TW (1) TW201638784A (ja)
WO (1) WO2016170618A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10838699B2 (en) 2017-01-18 2020-11-17 Oracle International Corporation Generating data mappings for user interface screens and screen components for an application
WO2018211546A1 (ja) * 2017-05-15 2018-11-22 三菱電機インフォメーションシステムズ株式会社 画面試験装置および画面試験プログラム
US10489126B2 (en) * 2018-02-12 2019-11-26 Oracle International Corporation Automated code generation
US11200820B2 (en) 2019-01-31 2021-12-14 Micware Co., Ltd. Information processor, method of controlling information processor, and storage medium
JP2020148620A (ja) * 2019-03-13 2020-09-17 株式会社ナベル 卵分類装置、卵分類方法及びコンピュータプログラム
JP6802320B2 (ja) * 2019-05-16 2020-12-16 メタウォーター株式会社 情報処理システム、情報処理装置、プログラム、及び情報処理方法
WO2021240824A1 (ja) * 2020-05-29 2021-12-02 日本電信電話株式会社 マスキング装置、マスキング方法およびマスキングプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7644368B2 (en) * 2005-06-29 2010-01-05 Sap Ag System and method for regression tests of user interfaces
JP2012038162A (ja) * 2010-08-09 2012-02-23 Ricoh Co Ltd 自動テストツール・プログラム及び自動テスト方法

Also Published As

Publication number Publication date
JPWO2016170618A1 (ja) 2017-06-29
WO2016170618A1 (ja) 2016-10-27
TW201638784A (zh) 2016-11-01

Similar Documents

Publication Publication Date Title
JP6214824B2 (ja) 自動試験装置
TWI622877B (zh) System and method for recording and replaying mouse behavior, recording media and program products
US9280451B2 (en) Testing device
JP2012103786A (ja) テスト支援装置、制御方法、及びプログラム
US9912846B2 (en) Obtaining calibration data of a camera
CN108509797A (zh) 基于模糊测试的工控系统漏洞挖掘方法、装置及修复方法
US20190122341A1 (en) Image processing apparatus and recording medium
KR101460860B1 (ko) 상태 기반의 테스트 시나리오 모델을 이용한 gui 테스트 장치 및 방법
JP4896909B2 (ja) シナリオ生成装置及びプログラム
JP6130011B1 (ja) ソフトウェアの動作検証装置、ソフトウェアの動作検証方法
CN110659193B (zh) 测试系统
KR101753314B1 (ko) 이미지 매칭 학습을 이용한 어플리케이션 테스트 방법 및 이를 수행하기 위한 장치
EP4054173A1 (en) Image capturing apparatus, method for controlling image capturing apparatus
KR20150035151A (ko) 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체
US9524544B2 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
CN112422951A (zh) 一种故障注入的方法、装置、存储介质及电子设备
JP6603178B2 (ja) 表示制御システム、表示制御方法、および表示制御プログラム
JP7390070B1 (ja) ウェブサイトを検査するためのシステム、方法、及びプログラム
US20190392206A1 (en) Image processing apparatus and image processing method
JP6802320B2 (ja) 情報処理システム、情報処理装置、プログラム、及び情報処理方法
WO2023139760A1 (ja) データ拡張装置、データ拡張方法、及び非一時的なコンピュータ可読媒体
JP2010170459A (ja) テストシステム、テスト方法およびテストプログラム
JP6686093B2 (ja) 画面対応付け方法、情報処理装置、操作再現システム及び画面対応付けプログラム
US20070094433A1 (en) Access priority order setting apparatus and method
JP2022036210A (ja) プログラムの検査装置、プログラムの検査方法及びプログラムの検査プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170328

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170328

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170328

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170718

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170822

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170919

R150 Certificate of patent or registration of utility model

Ref document number: 6214824

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250