JP2019105910A - 表示検証装置、表示検証方法および表示検証プログラム - Google Patents

表示検証装置、表示検証方法および表示検証プログラム Download PDF

Info

Publication number
JP2019105910A
JP2019105910A JP2017236718A JP2017236718A JP2019105910A JP 2019105910 A JP2019105910 A JP 2019105910A JP 2017236718 A JP2017236718 A JP 2017236718A JP 2017236718 A JP2017236718 A JP 2017236718A JP 2019105910 A JP2019105910 A JP 2019105910A
Authority
JP
Japan
Prior art keywords
display
character string
information
design
component
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
Application number
JP2017236718A
Other languages
English (en)
Inventor
忠隆 浅川
Tadataka Asakawa
忠隆 浅川
宙祥 平松
Michiyasu Hiramatsu
宙祥 平松
哲志 升野
Satoshi Masuno
哲志 升野
堅登 西辻
Kento Nishitsuji
堅登 西辻
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
Priority to JP2017236718A priority Critical patent/JP2019105910A/ja
Publication of JP2019105910A publication Critical patent/JP2019105910A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Digital Computer Display Output (AREA)
  • Image Analysis (AREA)

Abstract

【課題】正解画像を用いることなく表示崩れの検証を可能とし、正解画像を作成する工数を削減することを目的とする。【解決手段】設計情報抽出部120が、表示画面20の設計情報21から、表示画面20に表示される文字列を表す設計文字列情報121を抽出する。表示部品抽出部140が、表示画面20のキャプチャ画像22から、表示画面20に表示されている表示部品を表す表示部品情報141を抽出する。表示文字抽出部150が、キャプチャ画像22から、設計文字列情報121を用いて表示画面20に表示されている表示文字列を表す表示文字列情報151を抽出する。領域判定部160は、表示部品情報141と表示文字列情報151とを用いて、表示部品と表示文字列が重なっているかを判定し、判定結果に基づいて表示文字列のはみ出しを検出する。【選択図】図1

Description

本発明は、表示検証装置、表示検証方法および表示検証プログラムに関する。特に、画面に表示される文字列の表示崩れを自動で検証する表示検証装置、表示検証方法および表示検証プログラムに関する。
UI(User Interface)を検証するUI検証装置は、正解画像と検証対象のUIキャプチャ画像とを比較することで、文字のはみ出しあるいは文字切れといった表示崩れの検証を行う。正解画像とは、検証対象の文字列が正常に表示されている状態の画像である。従来のUI検証装置では、正解画像を事前に用意する必要がある。
特開平06−035641号公報 特開平08−153161号公報 特開2011−227725号公報
従来のUI検証装置では、文字のはみ出しあるいは文字切れといった表示崩れの検証のために、上述した正解画像を作成する必要がある。正解画像は、検証対象の文字列の全てについて作成する必要がある。また、検証対象の文字列に変更が生じた場合、正解画像を更新する必要がある。また、複数言語に対応するUI検証装置では、検証対象の文字列の全てについて、対応する言語分の正解画像を作成する必要がある。よって、従来のUI検証装置では、正解画像の準備および更新に多くの時間が必要であるという課題があった。
本発明の目的は、正解画像を用いることなく文字のはみ出しあるいは文字切れといった表示崩れの検証を可能とし、正解画像を作成する工数を削減することである。
本発明に係る表示検証装置は、
表示画面の画面設計を表す設計情報から、前記表示画面に表示される文字列を表す設計文字列情報を抽出する設計情報抽出部と、
前記表示画面をキャプチャして得られたキャプチャ画像から、前記表示画面に表示されている表示部品を表す表示部品情報を抽出する表示部品抽出部と、
前記キャプチャ画像から、前記設計文字列情報を用いて前記表示画面に表示されている表示文字列を表す表示文字列情報を抽出する表示文字抽出部と、
前記表示部品情報と前記表示文字列情報とを用いて、前記表示部品と前記表示文字列が重なっているかを判定し、判定結果に基づいて前記表示文字列のはみ出しを検出する領域判定部とを備えた。
本発明に係る表示検証装置によれば、正解画像を用いることなく文字のはみ出しを検出することができるので、正解画像を作成する工数を削減することができる。
実施の形態1に係る表示検証装置100の構成図。 実施の形態1に係る表示検証装置100による表示検証処理S100のフロー図。 実施の形態1に係る表示画面20における表示崩れを表す図。 実施の形態1に係るキャプチャ読込部130の処理の例を示す図。 実施の形態1に係る表示部品情報141の例を示す図。 実施の形態1に係る表示部品抽出部140によるエッジ検出処理を用いた表示部検出例。 実施の形態1に係る表示文字列情報151の例を示す図。 文字列誤検出の例とその対策を説明するための図。 文字列はみ出し検出漏れの例を示す図。 誤検出した文字列に対する対策の例を説明する図。 文字列の見た目が異なることによる表示崩れを検出する例を説明する図。 実施の形態1の変形例に係る表示検証装置100の構成図。
以下、本発明の実施の形態について、図を用いて説明する。なお、各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。
実施の形態1.
***構成の説明***
図1を用いて、本実施の形態に係る表示検証装置100の構成を説明する。
本実施の形態に係る表示検証装置100は、UI(User Interface)に用いられる表示画面20について、文字のはみ出しあるいは文字切れといった表示崩れを検証する。表示画面20とは、具体的には、UIアプリケーションにより表示されるUI画面である。
表示検証装置100は、コンピュータである。表示検証装置100は、プロセッサ910を備えるとともに、メモリ921、補助記憶装置922、入力インタフェース930、および出力インタフェース940といった他のハードウェアを備える。プロセッサ910は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
表示検証装置100は、機能要素として、設計情報読込部110と、設計情報抽出部120と、キャプチャ読込部130と、表示部品抽出部140と、表示文字抽出部150と、領域判定部160と、文字判定部170と、記憶部180を備える。記憶部180には、はみ出し判定結果31と文字切れ判定結果32とが記憶されている。
設計情報読込部110と設計情報抽出部120とキャプチャ読込部130と表示部品抽出部140と表示文字抽出部150と領域判定部160と文字判定部170の機能は、ソフトウェアにより実現される。
記憶部180は、メモリ921に備えられる。
プロセッサ910は、表示検証プログラムを実行する装置である。表示検証プログラムは、設計情報読込部110と設計情報抽出部120とキャプチャ読込部130と表示部品抽出部140と表示文字抽出部150と領域判定部160と文字判定部170の機能を実現するプログラムである。
プロセッサ910は、演算処理を行うIC(Integrated Circuit)である。プロセッサ910の具体例は、CPU、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)である。
メモリ921は、データを一時的に記憶する記憶装置である。メモリ921の具体例は、SRAM(Static Random Access Memory)、あるいはDRAM(Dynamic Random Access Memory)である。
補助記憶装置922は、データを保管する記憶装置である。補助記憶装置922の具体例は、HDDである。また、補助記憶装置922は、SD(登録商標)メモリカード、CF、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVDといった可搬記憶媒体であってもよい。なお、HDDは、Hard Disk Driveの略語である。SD(登録商標)は、Secure Digitalの略語である。CFは、CompactFlash(登録商標)の略語である。DVDは、Digital Versatile Diskの略語である。
入力インタフェース930は、マウス、キーボード、あるいはタッチパネルといった入力装置と接続されるポートである。入力インタフェース930は、具体的には、USB(Universal Serial Bus)端子である。なお、入力インタフェース930は、LAN(Local Area Network)と接続されるポートであってもよい。表示検証装置100は、入力インタフェース930を介して、設計情報21およびキャプチャ画像22を取得する。
出力インタフェース940は、ディスプレイといった出力機器のケーブルが接続されるポートである。出力インタフェース940は、具体的には、USB端子またはHDMI(登録商標)(High Definition Multimedia Interface)端子である。ディスプレイは、具体的には、LCD(Liquid Crystal Display)である。表示検証装置100は、出力インタフェース940を介して、記憶部180に記憶されているはみ出し判定結果31および文字切れ判定結果32をディスプレイといった出力装置に出力する。
表示検証プログラムは、プロセッサ910に読み込まれ、プロセッサ910によって実行される。メモリ921には、表示検証プログラムだけでなく、OS(Operating System)も記憶されている。プロセッサ910は、OSを実行しながら、表示検証プログラムを実行する。表示検証プログラムおよびOSは、補助記憶装置922に記憶されていてもよい。補助記憶装置922に記憶されている表示検証プログラムおよびOSは、メモリ921にロードされ、プロセッサ910によって実行される。なお、表示検証プログラムの一部または全部がOSに組み込まれていてもよい。
表示検証装置100は、プロセッサ910を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、表示検証プログラムの実行を分担する。それぞれのプロセッサは、プロセッサ910と同じように、表示検証プログラムを実行する装置である。
表示検証プログラムにより利用、処理または出力されるデータ、情報、信号値および変数値は、メモリ921、補助記憶装置922、または、プロセッサ910内のレジスタあるいはキャッシュメモリに記憶される。
設計情報読込部110と設計情報抽出部120とキャプチャ読込部130と表示部品抽出部140と表示文字抽出部150と領域判定部160と文字判定部170の各部の「部」を「処理」、「手順」あるいは「工程」に読み替えてもよい。
表示検証プログラムは、上記の各部の「部」を「処理」、「手順」あるいは「工程」に読み替えた各処理、各手順あるいは各工程を、コンピュータに実行させる。また、表示検証方法は、表示検証装置100が表示検証プログラムを実行することにより行われる方法である。
表示検証プログラムは、コンピュータ読取可能な記録媒体に格納されて提供されてもよい。また、表示検証プログラムは、プログラムプロダクトとして提供されてもよい。
***動作の説明***
図2を用いて、本実施の形態に係る表示検証装置100による表示検証処理S100について説明する。
図3は、本実施の形態に係る表示画面20における表示崩れを表す図である。
多言語に対応したUIアプリケーションのように、UI画面に表示する文字列を動的に変更できるアプリケーションがある。このようなアプリケーションでは、文字列の表示領域が、その文字列を表示するためのUI部品の表示領域を超えてしまい、表示が崩れることがある。UI部品とは、文字列を表示する表示画面20上の部品であり、たとえば、ウィンドウ、ボタン、テキストボックス、あるいはラベルである。
表示崩れのパターンとしては、文字列がUI部品からはみ出す「文字のはみ出し」、および、文字列の一部が表示されない「文字切れ」の2パターンがある。図3では、表示画面20に表示されているUI部品であるボタンに、「キャンセル」という文字列が表示されている例を示している。図3の(a)では、「キャンセル」という文字列がボタンの領域からはみ出している。また、図3の(b)では、「キャンセル」のルの文字が切れている。表示検証装置100は、このような文字のはみ出しあるいは文字切れといった表示崩れを検証する。
<設計情報読込処理>
ステップS110において、設計情報読込部110は、設計情報21を読み込む。設計情報21は、表示画面20の画面設計を表す情報である。設計情報21は、表示画面20のHTML(HyperText Markup Language)ファイル、あるいは、表示画面20の画面設計書である。設計情報21は、UI設計情報ともいう。
設計情報21には、少なくともUI画面である表示画面20に表示される全ての文字列が含まれている必要がある。しかし、設計情報21には、UI部品のサイズといった文字列以外の情報は必ずしも必要ではない。設計情報読込部110には、入力インタフェース930を介して設計情報21が入力される。あるいは、設計情報21は予めメモリ921に記憶されており、設計情報読込部110はメモリ921から設計情報21を読み込んでもよい。
なお、本実施の形態において表示画面に表示される文字には、通常の文字コードにより表される文字および記号の他に、特殊記号あるいは外字も含まれる。例えば、UnicodeあるいはEUCなど、表示画面に表示されるものであれば文字の種類は問わない。
<設計情報抽出処理>
ステップS111において、設計情報抽出部120は、設計情報21から、表示画面20に表示される文字列を表す設計文字列情報121を抽出する。また、設計情報抽出部120は、設計情報21から、表示画面20に表示される部品を表す設計部品情報122を抽出する。なお、設計情報21にUI部品に関する情報が含まれていない場合は、設計情報抽出部120は、設計部品情報122を抽出しない。
ここで、設計文字列情報121には、表示画面20に表示される可能性がある全ての文字例が含まれる。また、設計部品情報122には、ウィンドウ、ボタン、テキストボックス、あるいはラベルといったUI部品の種別、UI部品の表示座標、UI部品のサイズ、およびUI部品の色といった情報が含まれる。
また、設計情報抽出部120が設計部品情報122を抽出した場合には、表示部品抽出部140に対して設計部品情報122を出力する。
<キャプチャ読込処理>
ステップS120において、キャプチャ読込部130は、入力インタフェース930を介して、キャプチャ画像22を読み込む。キャプチャ画像22は、表示検証装置100の検証対象となる表示画面20をキャプチャして得られる情報である。あるいは、キャプチャ画像22は、表示画面20をカメラで撮影した写真データでもよい。表示検証装置100で検証することができれば、キャプチャ画像22の情報形態は問わない。キャプチャ画像22は、UIキャプチャともいう。
図4は、本実施の形態に係るキャプチャ読込部130の処理の例を示す図である。
キャプチャ画像22は、複数のキャプチャ画像から構成されていてもよい。キャプチャ読込部130は、表示画面20が自表示画面を表示する領域よりも大きい場合、表示画面20の全領域を複数に分割してキャプチャすることにより得られた複数のキャプチャ画像を取得する。キャプチャ読込部130は、複数のキャプチャ画像のうち隣接するキャプチャ画像同士の重複部分を結合することにより表示画面20の全領域を表すキャプチャ画像22を生成する。
具体的には、図4のように、スクロールバーが表示される表示画面は、自表示画面を表示する領域に、UI部品の全てを表示することはできない。このような表示画面に関しては、キャプチャ読込部130は、表示画面のうち表示する範囲を分割してキャプチャしたキャプチャ画像を複数読み込むことができる。
図4では、キャプチャ読込部130には、キャプチャ画像1とキャプチャ画像2とが入力される。キャプチャ読込部130は、複数のキャプチャ画像を入力した場合、各キャプチャ画像で重複している箇所を結合し、1つのキャプチャ画像22として再構築する。そして、キャプチャ読込部130は、このように結合したキャプチャ画像22に対して表示崩れの検証を実施する。複数のキャプチャ画像のキャプチャ画像ごとに表示崩れの検証を実施した場合は、各キャプチャ画像に存在する重複箇所に対して表示崩れの検証を複数回実施することになる。しかし、再構築した1つのキャプチャ画像22に対して表示崩れの検証を実施すれば、各キャプチャ画像に存在する重複箇所に対して表示崩れの検証を複数回実施する必要が無くなる。
<表示部品抽出処理>
ステップS121において、表示部品抽出部140は、表示画面20をキャプチャして得られたキャプチャ画像22から、表示画面20に表示されているUI部品である表示部品を表す表示部品情報141を抽出する。表示部品情報141は、表示部品の表示範囲を表す座標を含む。以下では、表示画面20に表示されているUI部品を表示部品として説明する。
図5は、本実施の形態に係る表示部品情報141を示す図である。図5に示すように、表示部品抽出部140は、表示画像に表示されている表示部品の表示範囲を(x1,y1)、(x2,y2)の形式で取得する。表示部品抽出部140は、キャプチャ読込部130からキャプチャ画像22を取得する。表示部品抽出部140は、キャプチャ画像22から、ウィンドウ、ボタン、テキストボックス、あるいはラベルといった表示部品の抽出を行う。表示部品抽出部140は、表示部品の表示範囲を(x1,y1)、(x2,y2)の形式で取得し、表示部品情報141に含める。表示部品の表示範囲は、(x1,y1)、(x2,y2)の形式で表される矩形領域である。
このとき、表示部品抽出部140は、設計情報抽出部120から設計部品情報122を取得できるかどうかで表示部品の表示範囲の検出処理を切り替える。
図6は、本実施の形態に係る表示部品抽出部140によるエッジ検出処理を用いた表示部検出例である。
表示部品抽出部140は、キャプチャ画像22に対してエッジ検出処理を行い、検出されたエッジが閉回路を形成していると判定された場合に、エッジを含む矩形領域を表示部品の表示範囲として表示部品情報141を抽出する。
具体的には、表示部品抽出部140は、設計情報抽出部120から設計部品情報122が取得できなかった場合に、エッジ検出処理を用いた表示部品の表示範囲の検出処理を行う。表示部品抽出部140では、キャプチャ画像22に対してエッジ検出処理を行い、エッジが閉回路となっているものを表示部品として検出する。破線で囲われた表示部品のようにエッジが完全に閉じていない表示部品に対しては、キャプチャ画像22の中の最少文字サイズより破線の間隔が小さい場合は閉回路とみなし、その破線で囲われた閉回路を表示部品とみなす。
また、上述したように、設計情報抽出部120にて設計部品情報122が抽出された場合は、この設計部品情報122を用いて表示部品の検出を行う。設計部品情報122には、UI部品の種別、UI部品の表示座標、UI部品のサイズ、あるいはUI部品の色といった情報が含まれる。表示部品抽出部140は、このような設計部品情報122を用いて、キャプチャ画像22から表示部品を表す表示部品情報141を抽出する。表示部品抽出部140は、設計部品情報122を利用できる場合、エッジ検出による表示部品の検出処理では抽出できなかった表示部品の抽出が可能となる。
このように、本実施の形態に係る表示部品抽出処理では、表示された結果からUI部品の表示範囲を特定することができ、UIアプリケーションの内部データを見ることができない状態でもUI部品の表示範囲を特定することが可能である。
<表示文字抽出処理>
ステップS122において、表示文字抽出部150は、キャプチャ画像22から、設計文字列情報121を用いて表示画面20に表示されている表示文字列を表す表示文字列情報151を抽出する。表示文字列情報151には、表示文字列の表示範囲を表す座標が含まれる。
図7は、本実施の形態に係る表示文字列情報151を示す図である。
表示文字列は、キャプチャ画像22により表される表示画面20に表示されている文字列である。表示文字抽出部150は、文字認識手法を用いて、キャプチャ画像22から表示文字列を抽出する。
図7では、キャプチャ画像22により表される表示画面20に表示されている表示文字列「ボタン」を抽出し、表示文字列の表示範囲を(x1’、y1’)、(x2’、y2’)の形式で取得している。表示文字抽出部150は、表示文字列の表示範囲(x1’、y1’)、(x2’、y2’)を表示文字列情報151に含める。表示文字列の表示範囲は、(x1’、y1’)、(x2’、y2’)の形式で表される矩形領域である。
表示文字抽出部150では、キャプチャ読込部130からキャプチャ画像22を取得するとともに、設計情報抽出部120から設計文字列情報121を取得する。表示文字抽出部150は、キャプチャ画像22から抽出した表示文字列が設計文字列情報121に含まれる文字列と一致するかを確認してもよい。
図8は、文字列誤検出の例とその対策を説明するための図である。
表示文字列の表示範囲を検出する際、表示文字列が隣り合って表示されていると、本来は2つの表示文字列とすべきところを1つの表示文字列と認識してしまう可能性がある。このような誤検出に対する対策として、表示文字抽出部150は、キャプチャ画像22から文字列認識で抽出された文字列に対して、設計情報抽出部120から取得した設計文字列情報121に含まれる文字列とのマッチングをとる。そして、表示文字抽出部150は、設計文字列情報121に含まれる文字列と完全一致している範囲を表示文字列の表示範囲として特定する。
また、キャプチャ画像22から表示文字列として検出できたが、設計文字列情報121に含まれる文字列とマッチングが取れなかった表示文字列に関しては、文字列の誤検出もしくは文字切れのどちらかであると考えられる。文字列の誤検出とは、具体的には、記号の+(プラス)と漢字の十(じゅう)を誤って判定してしまうといった検出である。文字列の誤検出が発生した場合、以降の処理において文字のはみ出し検出あるいは文字切れ検出が正しく行われない可能性がある。このような誤検出の対策として、マッチングが取れなかった表示文字列に対して、表示文字抽出部150は、この処理対象の表示文字列のビットマップデータと、設計文字列情報121に含まれる文字列をビットマップ化したものとを比較する。このような処理を行うことにより、認識精度の向上が可能となる。それぞれのビットマップが一致した場合、表示文字抽出部150は、処理対象の表示文字列のデータを、設計文字列情報121に含まれる文字列のデータで上書きし、誤検出した表示文字列のデータを補正する。このような処理を実施してもなお、処理対象の表示文字列と設計文字列情報121に含まれる文字列が一致しない場合は、この表示文字列を文字切れの可能性が高い表示文字列として領域判定部160および文字判定部170の入力として与える。
<領域判定処理>
ステップS130において、領域判定部160は、表示部品情報141と表示文字列情報151とを用いて、表示部品と表示文字列が重なっているかを判定し、判定結果に基づいて表示文字列のはみ出しを検出する。領域判定部160は、表示部品の表示範囲と表示文字列の表示範囲とが重なる場合に、表示部品と表示文字列が重なっていると判定する。
領域判定部160は、表示部品抽出部140から表示部品情報141を取得する。また、領域判定部160は、表示文字抽出部150から表示文字列情報151を取得する。具体的には、領域判定部160は、表示部品の表示範囲(x1,y1)、(x2,y2)と、表示文字列の表示範囲(x1’,y1’)、(x2’,y2’)を取得する。領域判定部160は、それぞれの表示範囲が重なっているか判定を行う。
領域判定部160は、表示範囲が重なっていると判定された表示部品と表示文字列の組み合わせに対して、さらに文字列はみ出しの検証処理を行う。
文字列はみ出しの検証処理は、表示部品のエッジ部分と表示文字列との交差の有無を検証することによって実現する。このとき、領域判定部160は、表示部品の表示範囲(x1,y1)、(x2,y2)と、表示文字列の表示範囲(x1’,y1’)、(x2’,y2’)から交差判定を行うのではない。領域判定部160は、表示部品のエッジ部分と表示文字列のビットマップが重なっているかを検証することで交差判定を行う。
図9は、文字列はみ出し検出漏れの例を示す図である。
図9では、一点鎖線が表示部品の表示範囲として抽出された矩形領域、点線が表示文字列の表示範囲として抽出された矩形領域である。また、実線が実際のUI部品のエッジである。
図9では、実際の表示部品から表示文字列がはみ出している。しかし、単に表示部品の表示範囲と表示文字列の表示範囲との重なりを判定するだけでは、表示部品の表示範囲の内部に表示文字列の表示範囲が重なっているので、文字のはみ出しを検出することはできない。すなわち、文字列はみ出し検出漏れが生じる。
しかしながら、領域判定部160は、表示部品のエッジ部分と表示文字列のビットマップが重なっているかを判定条件として交差判定を行うことで、図9の表示文字列のはみ出しを検出することができる。
以上のように、領域判定部160は、表示部品の表示範囲と表示文字列の表示範囲とが重なると判定された場合、表示部品のエッジと表示文字列が交差するか否かを判定する。そして、領域判定部160は、表示部品のエッジと表示文字列が交差すると判定されると、表示文字列のはみ出しとして検出する。
領域判定部160は、交差判定の判定結果をはみ出し判定結果31として記憶部180に記憶する。具体的には、図9の場合、表示部品と表示文字列について「はみ出し有」とのはみ出し判定結果31を生成し、記憶部180に記憶する。
<文字判定処理>
ステップS140において、文字判定部170は、設計文字列情報121と表示文字列情報151とに基づいて、表示文字列を設計文字列情報121に含まれる文字列と比較する。文字判定部170は、表示文字列が設計文字列情報121に含まれる文字列とマッチングしない場合に表示文字列が文字切れしていると判定する。
文字判定部170は、表示文字抽出部150から表示文字列情報151を取得するとともに、設計情報抽出部120から設計文字列情報121を取得する。文字判定部170は、表示文字列と設計文字列情報121に含まれる文字列とを比較する。文字判定部170は、設計文字列情報121に含まれる文字列と完全一致すれば、その表示文字列を「文字切れ無」と判定する。文字判定部170は、設計文字列情報121に含まれる文字列と完全一致しなければ、その表示文字列を「文字切れ有」と判定する。文字判定部170は、表示文字列について「文字切れ無」または「文字切れ有」の判定結果を、文字切れ判定結果32として記憶部180に記憶する。
図10は、表示文字抽出部150が誤検出した文字列に対する対策の例を説明する図である。
上述したように、文字判定部170には、文字切れが起きていない文字列、文字切れが起きている文字列、あるいは表示文字抽出部150が誤検出した文字列の3種類が入力される。表示文字抽出部150が誤検出した文字列に関しては、完全一致しない場合でも文字切れではない。よって、表示文字抽出部150が誤検出した文字列に関しては、文字切れ判定結果から除外する必要がある。図10に示すように、文字判定部170は、表示文字列と、設計文字列情報121に含まれる文字列とを比較する際に、以下のように判定する。表示文字列と設計文字列情報121に含まれる文字列が部分一致している場合は、文字切れ有と判定する。表示文字列と設計文字列情報121に含まれる文字列が全く一致しなかった場合、文字切れ判定の対象外とする。このように処理することにより、文字切れ判定の誤検出を防止することができる。
図11は、文字列の見た目が異なることによる表示崩れを検出する例を説明する図である。
図11において、表示例1および表示例2は、表示部品の表示範囲内であるが、表示文字列に改行が入り、見た目が仕様例とは異なる例である。表示例1は文字のサイズが大きくなっている例であり、表示例2は文字が全角になっている例である。
このとき、本実施の形態によれば、表示例1において表示文字列の表示範囲としてR1とR2が検出される。R1およびR2は、表示部品の表示範囲内であるため文字のはみ出しとしては検出されない。しかし、R1の表示文字列は設計文字列情報121とマッチングしない。また、R2の表示文字列も設計文字列情報121とマッチングしない。よって、表示例1は表示崩れとして検出される。表示例2において表示文字列の表示範囲としてR3とR4が検出されるが、表示例1と同様に、表示例2も表示崩れとして検出される。
本実施の形態では、図11の例は文字切れとして検出される。しかし、例えば、同一表示部品内に複数の表示文字列が検出され、かつ、設計文字列情報121とマッチングしない場合は、その他の表示崩れとして検出してもよい。
なお、上述した図11の例は一例であり、マッチング方式により、サイズ違い、フォント違い、あるいは全角半角の違いを検出してもよい。
***他の構成***
<変形例1>
表示検証装置100がネットワークを介して他の装置と通信する通信装置を備えていてもよい。通信装置は、レシーバとトランスミッタを有する。通信装置は、有線または無線で、LAN、インターネット、あるいは電話回線といった通信網に接続している。通信装置は、具体的には、通信チップまたはNIC(Network Interface Card)である。表示検証装置100は、通信装置を介して、外部の装置から設計情報21あるいはキャプチャ画像22を受信してもよい。あるいは、表示検証装置100は、通信装置を介して、はみ出し判定結果31あるいは文字切れ判定結果32を外部の装置に送信してもよい。
<変形例2>
本実施の形態では、設計情報読込部110と設計情報抽出部120とキャプチャ読込部130と表示部品抽出部140と表示文字抽出部150と領域判定部160と文字判定部170の機能がソフトウェアで実現される。変形例として、設計情報読込部110と設計情報抽出部120とキャプチャ読込部130と表示部品抽出部140と表示文字抽出部150と領域判定部160と文字判定部170の機能がハードウェアで実現されてもよい。
図12は、本実施の形態の変形例に係る表示検証装置100の構成を示す図である。
表示検証装置100は、電子回路909、メモリ921、補助記憶装置922、入力インタフェース930、および出力インタフェース940を備える。
電子回路909は、設計情報読込部110と設計情報抽出部120とキャプチャ読込部130と表示部品抽出部140と表示文字抽出部150と領域判定部160と文字判定部170の機能を実現する専用の電子回路である。
電子回路909は、具体的には、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、ASIC、または、FPGAである。GAは、Gate Arrayの略語である。ASICは、Application Specific Integrated Circuitの略語である。FPGAは、Field−Programmable Gate Arrayの略語である。
設計情報読込部110と設計情報抽出部120とキャプチャ読込部130と表示部品抽出部140と表示文字抽出部150と領域判定部160と文字判定部170の機能は、1つの電子回路で実現されてもよいし、複数の電子回路に分散して実現されてもよい。
別の変形例として、設計情報読込部110と設計情報抽出部120とキャプチャ読込部130と表示部品抽出部140と表示文字抽出部150と領域判定部160と文字判定部170の一部の機能が電子回路で実現され、残りの機能がソフトウェアで実現されてもよい。
プロセッサと電子回路の各々は、プロセッシングサーキットリとも呼ばれる。つまり、表示検証装置100において、設計情報読込部110と設計情報抽出部120とキャプチャ読込部130と表示部品抽出部140と表示文字抽出部150と領域判定部160と文字判定部170の機能は、プロセッシングサーキットリにより実現される。
表示検証装置100において、設計情報読込部、設計情報抽出部、キャプチャ読込部、表示部品抽出部、表示文字抽出部、領域判定部、および文字判定部の「部」を「工程」あるいは「処理」に読み替えてもよい。また、設計情報読込処理、設計情報抽出処理、キャプチャ読込処理、表示部品抽出処理、表示文字抽出処理、領域判定処理、および文字判定処理の「処理」を「プログラム」、「プログラムプロダクト」または「プログラムを記録したコンピュータ読取可能な記憶媒体」に読み替えてもよい。
***本実施の形態の効果の説明***
本実施の形態に係る表示検証装置100は、検証対象のキャプチャ画像から表示されている表示部品の配置情報および範囲情報を抽出する表示部品抽出部と、設計情報を用いて表示文字列を抽出する表示文字抽出部とを備える。そして、表示検証装置100は、抽出されたUI部品と文字列が重なっていないかを確認することで文字のはみ出しを検出する領域判定部を備える。よって、本実施の形態に係る表示検証装置100によれば、正解画像を用いることなく文字はみ出しを検出することができる。よって、本実施の形態に係る表示検証装置100によれば、正解画像の準備が不要となるので、検証開始に必要となる工数が削減可能となる。
また、本実施の形態に係る表示検証装置100は、表示文字列と、設計文字列情報の文字列とを比較することで文字切れを検出する文字判定部を備える。よって、本実施の形態に係る表示検証装置100によれば、正解画像を用いることなく文字切れを検出することができる。よって、本実施の形態に係る表示検証装置100によれば、正解画像の準備が不要となるので、検証開始に必要となる工数が削減可能となる。
また、本実施の形態に係る表示検証装置100は、複数のキャプチャ画像が入力され、重複部分を結合するキャプチャ読込部を備える。このようなキャプチャ読込部を備えているので、1つのキャプチャ画像では、画面表示領域からはみ出してしまい表示されていないUI部品についても検証対象とすることが可能となる。さらに、重複部分を結合することで、複数のキャプチャ画像の各キャプチャ画像に存在する重複箇所に対して文字のはみ出しおよび文字切れの検証を複数回実行する必要がなくなり、検証時間を短縮することが可能となる。
また、本実施の形態に係る表示検証装置100は、画面表示時のUIアプリケーションの内部データからUI部品の表示範囲の特定を行うのではなく、表示された結果からUI部品および表示文字列の表示範囲を特定することができる。よって、UIアプリケーションの内部データを見ることができない状態であっても、表示された結果からUI部品および表示文字列の表示範囲を特定することができる。
以上のように、本実施の形態に係る表示検証装置100によれば、正解画像を用いることなく文字のはみ出しあるいは文字切れといった表示崩れの検証を可能とし、正解画像を作成する工数を削減することができる。また、表示検証装置100によれば、表示仕様の変更時における正解画像の更新に要する工数も削減することができる。
本実施の形態では、表示検証装置の各部を独立した機能ブロックとして説明した。しかし、表示検証装置の構成は、上述した実施の形態のような構成でなくてもよい。表示検証装置の機能ブロックは、上述した実施の形態で説明した機能を実現することができれば、どのような構成でもよい。
本実施の形態のうち、複数の部分を組み合わせて実施しても構わない。あるいは、この実施の形態のうち、1つの部分を実施しても構わない。その他、この実施の形態を、全体としてあるいは部分的に、どのように組み合わせて実施しても構わない。
なお、上述した実施の形態は、本質的に好ましい例示であって、本発明の範囲、本発明の適用物の範囲、および本発明の用途の範囲を制限することを意図するものではない。上述した実施の形態は、必要に応じて種々の変更が可能である。
20 表示画面、21 設計情報、22 キャプチャ画像、31 はみ出し判定結果、32 文字切れ判定結果、100 表示検証装置、110 設計情報読込部、120 設計情報抽出部、121 設計文字列情報、122 設計部品情報、130 キャプチャ読込部、140 表示部品抽出部、141 表示部品情報、150 表示文字抽出部、151 表示文字列情報、160 領域判定部、170 文字判定部、180 記憶部、909 電子回路、910 プロセッサ、921 メモリ、922 補助記憶装置、930 入力インタフェース、940 出力インタフェース、S100 表示検証処理。

Claims (9)

  1. 表示画面の画面設計を表す設計情報から、前記表示画面に表示される文字列を表す設計文字列情報を抽出する設計情報抽出部と、
    前記表示画面をキャプチャして得られたキャプチャ画像から、前記表示画面に表示されている表示部品を表す表示部品情報を抽出する表示部品抽出部と、
    前記キャプチャ画像から、前記設計文字列情報を用いて前記表示画面に表示されている表示文字列を表す表示文字列情報を抽出する表示文字抽出部と、
    前記表示部品情報と前記表示文字列情報とを用いて、前記表示部品と前記表示文字列が重なっているかを判定し、判定結果に基づいて前記表示文字列のはみ出しを検出する領域判定部と
    を備えた表示検証装置。
  2. 前記表示検証装置は、
    前記設計文字列情報と前記表示文字列情報とに基づいて、前記表示文字列を前記設計文字列情報に含まれる文字列と比較し、前記表示文字列が前記設計文字列情報に含まれる文字列とマッチングしない場合に前記表示文字列が文字切れしていると判定する文字判定部を備えた請求項1に記載の表示検証装置。
  3. 前記表示検証装置は、
    前記表示画面が前記表示画面を表示する領域よりも大きい場合、前記表示画面の全領域を複数に分割してキャプチャすることにより得られた複数のキャプチャ画像を取得し、前記複数のキャプチャ画像のうち隣接するキャプチャ画像同士の重複部分を結合することにより前記表示画面の全領域を表す前記キャプチャ画像を生成するキャプチャ読込部を備えた請求項1または2に記載の表示検証装置。
  4. 前記表示部品情報は、前記表示部品の表示範囲を表す座標を含み、
    前記表示文字列情報は、前記表示文字列の表示範囲を表す座標を含み、
    前記領域判定部は、
    前記表示部品の表示範囲と前記表示文字列の表示範囲とが重なる場合に、前記表示部品と前記表示文字列が重なっていると判定する請求項1から3のいずれか1項に記載の表示検証装置。
  5. 前記領域判定部は、
    前記表示部品の表示範囲と前記表示文字列の表示範囲とが重なると判定された場合、前記表示部品のエッジと前記表示文字列が交差するか否かを判定し、前記表示部品のエッジと前記表示文字列が交差すると判定されると、前記表示文字列のはみ出しとして検出する請求項4に記載の表示検証装置。
  6. 前記表示部品抽出部は、
    前記キャプチャ画像に対してエッジ検出処理を行い、検出されたエッジが閉回路を形成していると判定された場合に、前記エッジを含む矩形領域を前記表示部品の表示範囲として前記表示部品情報を抽出する請求項1から5のいずれか1項に記載の表示検証装置。
  7. 前記設計情報抽出部は、
    前記設計情報から、前記表示画面に表示される部品を表す設計部品情報を抽出し、
    前記表示部品抽出部は、
    前記設計部品情報を用いて、前記キャプチャ画像から前記表示部品情報を抽出する請求項1から6のいずれか1項に記載の表示検証装置。
  8. 設計情報抽出部が、表示画面の画面設計を表す設計情報から、前記表示画面に表示される文字列を表す設計文字列情報を抽出し、
    表示部品抽出部が、前記表示画面をキャプチャして得られたキャプチャ画像から、前記表示画面に表示されている表示部品を表す表示部品情報を抽出し、
    表示文字抽出部が、前記キャプチャ画像から、前記設計文字列情報を用いて前記表示画面に表示されている表示文字列を表す表示文字列情報を抽出し、
    領域判定部が、前記表示部品情報と前記表示文字列情報とを用いて、前記表示部品と前記表示文字列が重なっているかを判定し、判定結果に基づいて前記表示文字列のはみ出しを検出する表示検証方法。
  9. 表示画面の画面設計を表す設計情報から、前記表示画面に表示される文字列を表す設計文字列情報を抽出する設計情報抽出処理と、
    前記表示画面をキャプチャして得られたキャプチャ画像から、前記表示画面に表示されている表示部品を表す表示部品情報を抽出する表示部品抽出処理と、
    前記キャプチャ画像から、前記設計文字列情報を用いて前記表示画面に表示されている表示文字列を表す表示文字列情報を抽出する表示文字抽出処理と、
    前記表示部品情報と前記表示文字列情報とを用いて、前記表示部品と前記表示文字列が重なっているかを判定し、判定結果に基づいて前記表示文字列のはみ出しを検出する領域判定処理と
    をコンピュータに実行させる表示検証プログラム。
JP2017236718A 2017-12-11 2017-12-11 表示検証装置、表示検証方法および表示検証プログラム Pending JP2019105910A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017236718A JP2019105910A (ja) 2017-12-11 2017-12-11 表示検証装置、表示検証方法および表示検証プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017236718A JP2019105910A (ja) 2017-12-11 2017-12-11 表示検証装置、表示検証方法および表示検証プログラム

Publications (1)

Publication Number Publication Date
JP2019105910A true JP2019105910A (ja) 2019-06-27

Family

ID=67061291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017236718A Pending JP2019105910A (ja) 2017-12-11 2017-12-11 表示検証装置、表示検証方法および表示検証プログラム

Country Status (1)

Country Link
JP (1) JP2019105910A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020198916A (ja) * 2019-06-06 2020-12-17 株式会社三共 遊技機
JP2020198917A (ja) * 2019-06-06 2020-12-17 株式会社三共 遊技機
JP2021064303A (ja) * 2019-10-17 2021-04-22 富士ゼロックス株式会社 情報処理装置、情報処理システムおよびプログラム
WO2023037455A1 (ja) * 2021-09-08 2023-03-16 日本電信電話株式会社 画面データ処理装置、方法およびプログラム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003058357A (ja) * 2001-08-20 2003-02-28 Canon Inc 情報処理装置およびリソースファイル作成方法および記憶媒体およびプログラム
JP2006078206A (ja) * 2004-09-07 2006-03-23 I-Pulse Co Ltd 実装基板の検査方法及び検査装置
JP2007011485A (ja) * 2005-06-28 2007-01-18 Chugoku Electric Power Co Inc:The 画像データの取得方法、画像データ取得装置、およびプログラム
JP2008158643A (ja) * 2006-12-21 2008-07-10 Brother Ind Ltd 表示検査方法、表示検査装置および表示検査プログラム
JP2013020444A (ja) * 2011-07-11 2013-01-31 Hitachi Aloka Medical Ltd 画像処理装置
JP2013214178A (ja) * 2012-04-02 2013-10-17 Visetec Co Ltd 画像検査装置、画像検査方法、及びプログラム
JP2017072895A (ja) * 2015-10-05 2017-04-13 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003058357A (ja) * 2001-08-20 2003-02-28 Canon Inc 情報処理装置およびリソースファイル作成方法および記憶媒体およびプログラム
JP2006078206A (ja) * 2004-09-07 2006-03-23 I-Pulse Co Ltd 実装基板の検査方法及び検査装置
JP2007011485A (ja) * 2005-06-28 2007-01-18 Chugoku Electric Power Co Inc:The 画像データの取得方法、画像データ取得装置、およびプログラム
JP2008158643A (ja) * 2006-12-21 2008-07-10 Brother Ind Ltd 表示検査方法、表示検査装置および表示検査プログラム
JP2013020444A (ja) * 2011-07-11 2013-01-31 Hitachi Aloka Medical Ltd 画像処理装置
JP2013214178A (ja) * 2012-04-02 2013-10-17 Visetec Co Ltd 画像検査装置、画像検査方法、及びプログラム
JP2017072895A (ja) * 2015-10-05 2017-04-13 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020198916A (ja) * 2019-06-06 2020-12-17 株式会社三共 遊技機
JP2020198917A (ja) * 2019-06-06 2020-12-17 株式会社三共 遊技機
JP2021064303A (ja) * 2019-10-17 2021-04-22 富士ゼロックス株式会社 情報処理装置、情報処理システムおよびプログラム
JP7367451B2 (ja) 2019-10-17 2023-10-24 富士フイルムビジネスイノベーション株式会社 情報処理装置、情報処理システムおよびプログラム
WO2023037455A1 (ja) * 2021-09-08 2023-03-16 日本電信電話株式会社 画面データ処理装置、方法およびプログラム

Similar Documents

Publication Publication Date Title
JP2019105910A (ja) 表示検証装置、表示検証方法および表示検証プログラム
US9135151B2 (en) Automatic verification by comparing user interface images
US20160260194A1 (en) Techniques for rotating language preferred orientation on a mobile device
US10242277B1 (en) Validating digital content rendering
US20170249526A1 (en) Information processing apparatus, information processing method, and storage medium
US10706581B2 (en) Image processing apparatus for clipping and sorting images from read image according to cards and control method therefor
EP3847626B1 (en) Rendering oversized glyphs to a monospace grid
US20150332482A1 (en) Detecting conformance of graphical output data from an application to a convention
US9529489B2 (en) Method and apparatus of testing a computer program
US20080181504A1 (en) Apparatus, method, and program for detecting garbled characters
US9824086B2 (en) Translation device that determines whether two consecutive lines in an image should be translated together or separately
WO2018211546A1 (ja) 画面試験装置および画面試験プログラム
CN112784825A (zh) 图片中文字的识别方法、关键字检索方法、装置及设备
WO2015079790A1 (ja) 文字列認識装置および文字列認識方法
US20210042555A1 (en) Information Processing Apparatus and Table Recognition Method
WO2017072865A1 (ja) 検査装置、検査方法、記録媒体、及び、プログラム
JP6608569B1 (ja) セキュリティ設計装置、セキュリティ設計方法およびセキュリティ設計プログラム
CN111913873A (zh) 图片校验方法、装置、系统和计算机可读存储介质
US10726363B2 (en) Ticket event modification for a problem tracking system ticket
US11449703B2 (en) Electronic apparatus, and non-transitory computer readable recording medium that stores image determination program
US20220383023A1 (en) Information processing apparatus, non-transitory computer readable medium storing program, and information processing method
JP6187307B2 (ja) 画像処理装置及び画像処理プログラム
CN108535899B (zh) Tft-lcd数据流检测方法、电子装置及计算机可读存储介质
US12019975B1 (en) Automatic webpage layout checker: 5D deep learning based on unique rules for coloring web component borders and non-space
JP6599053B1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211005

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220405