JP2021174096A - テスト支援装置、テスト支援プログラムおよび、テスト支援方法 - Google Patents

テスト支援装置、テスト支援プログラムおよび、テスト支援方法 Download PDF

Info

Publication number
JP2021174096A
JP2021174096A JP2020075365A JP2020075365A JP2021174096A JP 2021174096 A JP2021174096 A JP 2021174096A JP 2020075365 A JP2020075365 A JP 2020075365A JP 2020075365 A JP2020075365 A JP 2020075365A JP 2021174096 A JP2021174096 A JP 2021174096A
Authority
JP
Japan
Prior art keywords
screen
operation content
command
test
test support
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.)
Granted
Application number
JP2020075365A
Other languages
English (en)
Other versions
JP6830701B1 (ja
Inventor
則春 石
Noriharu Ishi
慶慶 高
Qingqing Gao
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.)
Rgs Information System Co Ltd
Original Assignee
Rgs Information System Co Ltd
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 Rgs Information System Co Ltd filed Critical Rgs Information System Co Ltd
Priority to JP2020075365A priority Critical patent/JP6830701B1/ja
Application granted granted Critical
Publication of JP6830701B1 publication Critical patent/JP6830701B1/ja
Publication of JP2021174096A publication Critical patent/JP2021174096A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】画面を構成する画面要素に対する操作を定義したコマンドを用いて正確かつ効率的にテストスクリプトを生成するテスト支援装置、テスト支援プログラム及び、テスト支援方法を提供する。【解決手段】テスト支援装置1は、要素情報取得手段101、表示処理手段102、操作内容入力手段103、識別要素入力手段104、コマンド生成手段105、重複検出手段106、画面決定手段107及び記憶部108を備える。要素情報取得手段は、画面要素に関する要素情報を取得する。表示処理手段は、要素情報の分類に基づいて、操作対象とする画面要素に対して実行可能な操作内容を一覧に表示処理する。操作内容入力手段は、表示処理手段により一覧に表示処理された操作内容から任意の操作内容の選択を受け付ける。コマンド生成手段は、操作内容入力手段により選択を受け付けた操作内容に基づいてコマンドの操作内容部を生成する。【選択図】図2

Description

本発明は、画面を構成する画面要素に対する操作を定義したコマンドを用いてテストスクリプトを生成し、前記テストスクリプトの再生により画面の動作テストを自動化するテスト支援装置、テスト支援プログラム及び、テスト支援方法に関する。
ウェブページのテストにおいて、ウェブページに対する操作内容をテストスクリプトとして記録しておき、記録されたテストスクリプトを再生することにより動作テストを自動化するRPA(Robotic Process Automation)技術が知られている。
また、対象となる画面におけるユーザの操作を記録することで、RPAにおけるテストスクリプトを自動生成する技術が知られている。従来、画面座標を用いることで、操作対象となる画面に配置される画面部品を特定し、テストスクリプトを自動的に生成していた。
しかしながら、画面座標は、ウェブページの表示サイズや、ディスプレイのサイズによって変化するため、テスト毎に新規のテストスクリプトを作成する必要があり手間が生じていた。
上述したような事情に鑑みて、特許文献1に記載のWebページテスト自動化装置は、操作部品の部品情報を用いて操作対象の部品を決定することが開示されている。また、部品情報が重複する場合、重複部品に対して一意となる部品IDを追加し、部品IDを用いて重複部品の識別を行い、操作対象となる部品を決定することが開示されている。
特開2007−102654号公報
特許文献1に記載のWebページテスト自動化装置では、ユーザの実行した部品操作を直接的にコマンドとして変換し、スクリプトファイルに記録していた。しかしながら、ユーザが誤った部品操作を行った場合もコマンドがスクリプトファイルに記録されてしまい、スクリプトファイルの修正などの手間が生じていた。
また、特許文献1に記載のWebページテスト自動化装置では、重複部品に一意となる部品IDを追加し、重複部品を識別可能としている。しかしながら、Webページにおける部品数を増減する修正が生じた場合、全ての部品IDにも変更が生じ、新たなスクリプトファイルを一から記録し直さなければならなかった。
また、Webページなどの画面についてコーディングする際、画面部品として複数の識別属性の中から任意のものが選択され、定義される。識別属性は、コードの可読性及びデザイン変更への耐性などの観点から、統一された方針にしたがって選択されることが好ましいとされている。自動テストに用いるスクリプトについても上記と同様の観点から統一された方針にしたがって、任意の識別属性を選択してスクリプトを生成することが好ましいが、従来のスクリプト記録に関する技術において識別属性の選択を好適に支援するものはなかった。
上記のような実状に鑑みて、本発明は、画面を構成する画面要素に対する操作を定義したコマンドを用いて正確かつ効率的にテストスクリプトを生成することができるテスト支援装置を提供することを解決すべき課題とする。
上記課題を解決する為に、本発明は、画面を構成する画面要素に対する操作内容を定義したコマンドを用いてテストスクリプトを生成し、前記テストスクリプトの再生により画面の動作テストを自動化するテスト支援装置であって、画面要素に関する要素情報を取得する要素情報取得手段と、前記要素情報の分類に基づいて、操作対象とする前記画面要素に対して実行可能な操作内容を一覧に表示処理する表示処理手段と、前記表示処理手段により一覧に表示処理された操作内容から任意の操作内容の選択を受け付ける操作内容入力手段と、前記操作内容入力手段により選択を受け付けた操作内容に基づいてコマンドの操作内容部を生成するコマンド生成手段と、を備える。
このような構成とすることで、ユーザは操作内容の一覧から任意の操作内容を選択することができ、誤操作により間違ったコマンドが生成されることを防止することができる。また、画面要素に対して実行可能な操作内容が一覧に表示されることで、テストが必要な操作内容を全て確認することができ、テスト漏れを防止することができる。
本発明の好ましい形態では、前記要素情報は、画面要素を識別する為に用いられる識別要素を含み、前記表示処理手段は、操作対象とする画面要素に定義された1以上の識別要素を一覧に表示処理し、前記表示処理手段により一覧に表示処理された識別要素から任意の識別要素の選択を受け付ける識別要素入力手段と、前記コマンド生成手段は、前記識別要素入力手段により選択を受け付けた識別要素及び、識別要素に対して定義された要素値に基づいてコマンドの操作対象部を生成する。
このような構成とすることで、識別要素の選択により正確な操作対象を指定することができる。また、定義された識別要素が一覧表示されることで、ユーザに対して識別要素の定義漏れを認識させることができる。
本発明の好ましい形態では、前記表示処理手段は、操作対象とする画面要素の指定を画面上で受け付けることにより、前記操作内容及び前記識別要素を一覧に表示処理する。
このような構成とすることで、ユーザによる画面要素に対する操作が即座にスクリプトとして記録されてしまうことを防止し、操作内容及び識別要素の一覧から任意のものを正確に選択させることができる。
本発明の好ましい形態では、前記コマンド生成手段は、前記コマンドの操作内容部及び、操作対象部の少なくとも一部を組み合わせた1以上のコマンドをコマンドセットとして予め記憶部に格納し、前記コマンドセットから任意のコマンドを選択することでコマンドを生成する。
このような構成とすることで、コマンドセットを選択することにより効率よくコマンドを生成することができる。
本発明の好ましい形態では、前記表示処理手段は、要素情報の分類ごとに設定された優先順位にしたがって前記操作内容を一覧に表示処理する。
このような構成とすることで、ユーザに対して優先順位の高い操作内容を判別しやすく提示することができる。
本発明の好ましい形態では、前記表示処理手段は、前記操作内容入力手段により選択を受け付けた操作内容の回数に基づいて前記優先順位を決定する。
このような構成とすることで、選択頻度の高い操作内容を優先的にユーザに提示することができる。
本発明の好ましい形態では、前記要素情報取得手段により取得された要素情報において要素値が重複する場合、同一画面内において重複する要素値を検出し、各要素値に異なる識別子を対応付けて記憶部に格納する重複検出手段を備え、前記コマンド生成手段は、前記重複検出手段により重複する要素値に紐づけられた識別子に基づいてコマンドの対象を決定し、前記識別子を一部として含む操作対象部を生成する。
このような構成とすることで、要素値が重複する場合であっても、適切な画面要素を指定してコマンドを生成することができる。
本発明の好ましい形態では、複数の画面を遷移して操作を行う場合、各画面の画面要素が有する他の画面と重複しない要素値を指定することにより、操作対象となる画面を特定する操作対象画面決定手段を備える。
このような構成とすることで、画面のURL(Uniform Resource Locator)やタイトルが重複する場合であっても、画面要素に含まれる要素値から操作対象となる画面を特定することができる。
本発明は、画面を構成する画面要素に対する操作内容を定義したコマンドを用いてテストスクリプトを生成し、前記テストスクリプトの再生により画面の動作テストを自動化するテスト支援プログラムであって、コンピュータを、画面要素に関する要素情報を取得する要素情報取得手段と、前記要素情報の分類に基づいて、操作対象とする前記画面要素に対して実行可能な操作内容を一覧に表示処理する表示処理手段と、前記表示処理手段により一覧に表示処理された操作内容から任意の操作内容の選択を受け付ける操作内容入力手段と、前記操作内容入力手段により選択を受け付けた操作内容に基づいてコマンドの操作内容部を生成するコマンド生成手段と、として機能させる。
本発明は、画面を構成する画面要素に対する操作内容を定義したコマンドを用いてテストスクリプトを生成し、前記テストスクリプトの再生により画面の動作テストを自動化するテスト支援方法であって、画面要素に関する要素情報を取得する要素情報取得ステップと、前記要素情報の分類に基づいて、操作対象とする前記画面要素に対して実行可能な操作内容を一覧に表示処理する表示処理ステップと、前記表示処理手段により一覧に表示処理された操作内容から任意の操作内容の選択を受け付ける操作内容入力ステップと、前記操作内容入力手段により選択を受け付けた操作内容に基づいてコマンドの操作内容部を生成するコマンド生成ステップと、をコンピュータが実行する。
本発明によれば、画面を構成する画面要素に対する操作を定義したコマンドを用いて正確かつ効率的にテストスクリプトを生成し、テストを実行するテスト支援装置を提供することができる。
本発明の実施形態における、テスト支援装置のハードウェア構成図を示す。 本発明の実施形態における、テスト支援装置の機能ブロック図を示す。 本発明の実施形態における、コマンドの構文例を示す図である。 本発明の実施形態における、テストの対象となる画面の一例を示す。 本発明の実施形態における、テストの対象となる画面のHTMLの一例を示す。 本発明の実施形態における、テストスクリプトの作成の流れを示すフローチャートである。 本発明の実施形態における、要素情報テーブルを示す。 本発明の実施形態における、コマンドの生成する流れを説明する図である。 本発明の実施形態における、テストスクリプトの表示画面の一例を示す。
以下、図面を用いて、本発明の実施形態に関するテスト支援装置について説明する。なお、以下に示す実施形態は本発明の一例であり、本発明を以下の実施形態に限定するものではなく、特許請求の範囲に記載された範囲内において適宜変更が可能である。
本実施形態では、テスト支援装置及び、サーバ装置を含むテスト支援システムの構成、動作等について説明するが、同様の構成の方法、コンピュータプログラム、記録媒体等も、同様の作用効果を奏することができる。この記録媒体を用いれば、例えばコンピュータに前記プログラムをインストールすることができる。ここで、前記プログラムを記憶した記録媒体は、例えばCD−ROM等の非一過性の記録媒体であっても良い。
本実施形態に係るテスト支援装置は、コマンドを用いて作成されたテストスクリプトの再生により画面の動作テストを自動化するものである。ここでいう画面とは、ウェブページにおける画面やアプリケーションにおける画面などディスプレイを介してユーザに対して表示されるUI(User Interface)全般を意味する。本実施形態において、画面は、HTML(Hyper Text Markup Language)、XML(Extensible Markup Language)、CSS(Cascading Style Sheets)などのコードなどに基づいて表示処理され、画面の構成要素として、ヘッダー、フッター、ツールバー及び、コンテンツエリアなどを備える。特に、本実施形態では、主としてコンテンツエリアに含まれる入力フォーム、ボタン、テキスト、画像、ファイル等について、画面を構成する画面要素の例として説明する。
テスト支援装置1は図1に示すように、データ通信機能を有し、ハードウェア及び、機能の構成要素を含んでおり、パーソナルコンピュータ、スマートフォン、タブレット端末等のコンピュータ端末を用いることができる。テスト支援装置1は、ハードウェア構成要素として、演算装置(CPU(Central Processing Unit))11、主記憶装置(RAM(Random Access Memory))12とを備える。また、テスト支援装置1は、OS(Operating System)、アプリケーションプログラム、及び各種情報(データを含む)を書換え可能に格納するHDDやSSD、フラッシュメモリ等の補助記憶装置15と、通信制御部13と、NIC(Network Interface Card)などの通信インタフェース(IF)部14と、表示制御部16と、表示部17と、マウス、タッチパネル、キーボードなどの情報入力・指定部18などと、を更に備える。なお、表示部17は、ディスプレイやタッチパネル等により構成され、画面のタッチ操作などにより情報入力・指定部18における一部の機能を実現できるようにしてもよい。
図2は、本実施形態に係るテスト支援装置1の機能ブロック図を示す。テスト支援装置1は、図2に示すように、機能構成要素として、要素情報取得手段101、表示処理手段102、操作内容入力手段103、識別要素入力手段104、コマンド生成手段105、重複検出手段106、画面決定手段107、記憶部108を備える。
要素情報取得手段101は、テスト支援装置1においてテスト対象とする画面を構成する画面要素に関する要素情報を取得し、記憶部108に格納する。表示処理手段102は、要素情報取得手段101により取得された要素情報に基づいて、画面要素に対して実行可能な操作内容と、画面要素に定義された1以上の識別要素と、を一覧として表示処理する。表示部17は、表示処理手段102により表示処理された表示処理結果を取得し、表示処理結果に基づいて画面を表示する。
操作内容入力手段103は、表示処理手段102により一覧として表示処理された操作内容から任意の操作内容の選択を受け付ける。また、識別要素入力手段104は、表示処理手段102により一覧として表示処理された識別要素から任意の識別要素の選択を受け付ける。コマンド生成手段105は、操作内容入力手段103及び識別要素入力手段104により選択を受け付けた操作内容と識別要素に基づいて、コマンドを生成する。
図3は、本実施形態において用いられるコマンドの構文の一例を示す。コマンドの構文は、図3(a)に示すように、画面要素に対する操作内容を示す操作内容部C10と、画面要素を特定する情報を示す操作対象部C20と、を備える。操作対象部C20は、画面要素を識別する為に用いられる識別要素を指定する識別要素指定部C21と、識別要素指定部C21において指定された識別要素に定義された要素値を指定する要素値指定部C22と、を備える。
操作内容部C10における操作内容には、画面要素に対するクリックやテキスト入力などデータ入力に関する操作と、ブラウザ、ウィンドウ、タブを指定することで操作対象となる画面を決定する操作と、テスト用データの収集、及びテスト用データの比較・検証を実行する操作などと、を備える。
本実施形態において、識別要素は、対象となる画面を構成するHTML等のコードから取得されるname属性、id属性、value属性、class属性、CssSelector、Xpathなどである。識別要素は、ユーザによって各画面要素に対して任意に定義されるものである。また、要素値は、識別要素に対応する変数であり、name属性、id属性、value属性、class属性においては、属性値を示す。CssSelecotr及びXpathは、上述の属性値を用いた表現や、コードのタグと組み合わせた表現により、画面要素を一意に識別できる要素値を備える。
また、コマンドは、画面要素に対する入力値が含まれる場合、図3(b)に示すように入力値を示す変数部C30を備えてもよい。入力値は、例えば、テキストボックスにテキスト入力するときの文字列を示す。また、操作対象部C20は、同一画面の同一画面要素に対して同一の要素値が定義されている場合、識別子を示すインデックス部C23を備える。インデックス部C23の識別子は、重複する画面要素を識別する為に要素値に紐づけられる情報であり、予め定められた規則にしたがって付与される。
図3(a)のコマンドは、識別要素がclass属性であり、要素値としてclass_priceが与えられた画面要素に対して、クリックを実行する、という操作を示す。また、図3(b)のコマンドは、識別要素がclass属性であり、要素値としてclass_priceが与えられた画面要素のうち識別子として2が付与されたものに対して、入力値として「80」を入力する、という操作を示す。
コマンドの操作内容部C10及び、識別要素指定部C21を組み合わせた1以上のコマンドは、コマンドセットとして予め記憶部108に格納される。コマンドセットは、ユーザによって任意の組み合わせにより記憶部108に格納されてもよい。なお、操作内容部C10のコマンドのみをコマンドセットとして記憶部108に格納されてもよい。
コマンド生成手段105は、コマンドセットから任意のものの選択を受け付けることで、コマンドを生成する。なお、コマンドセットからコマンドの一部を生成した場合、ユーザによる直接入力により残りのコマンドが生成される。
重複検出手段106は、要素情報取得手段101により取得された要素情報において要素値が重複する場合、同一画面内において重複する要素値を検出し、各要素値に異なる識別子を対応付けて記憶部108に格納する。重複検出手段106により要素値に対応付けられた識別子は、上述したインデックス部C23における識別子を示す。
画面決定手段107は、複数の画面を遷移して操作される場合、各画面の画面要素が有する他の画面と重複しない要素値を指定することにより、操作対象となる画面を特定する。
図4は、テスト支援装置1によりテストを自動化する対象となる画面の一例を示す。宿泊予約画面W1は、タイトルW11、URLW12、ヘッダーW13、名前W14、目的W15、宿泊者数W16、日程W17、食事W18、次へボタンW19を備える。宿泊予約画面W1において、次へボタンW19が操作されることにより予約確認画面W2に遷移する。予約確認画面W2は、タイトルW21、URLW22、ヘッダーW23、予約内容表示部W24、戻るボタンW25、予約ボタンW26を備える。戻るボタンW25が操作されることにより宿泊予約画面W1に遷移し、予約ボタンW26が操作されることにより、予約内容表示部W24の内容は、所定のアドレスに送信される。
図5は、図4の宿泊予約画面W1を構成する画面要素に関する要素情報を定義する定義画面W3の一例を示す。本実施形態では、定義画面W3は、宿泊予約画面W1をHTMLにより構成した例を示す。ヘッダー部W31は、宿泊予約画面W1のヘッダーW13に対応し、ヘッダーを表示処理させる。要素情報部W32は、宿泊予約画面W1の名前W14に対応し、テキストボックスを表示処理させる。なお、要素情報部W32は、1つのみ示したが、目的W15、宿泊者数W16、日程W17、食事W18、次へボタンW19に対応するだけ複数存在し、ラジオボタン、プルダウンメニュー、カレンダー、ボタンなどの入力フォームをそれぞれ表示処理させる。
要素情報部W32は、要素情報として、画面要素の分類及び、画面要素を識別する為に用いられる識別要素及び、要素値を少なくとも含む。本実施形態において、画面要素の分類は、フォームの種類を示す情報であり、HTMLではtype属性(図4におけるtype=”text”のtext)として定義される。なお、画面要素の分類は、type属性に加えて、<input>や<button>などのタグを参照することにより定義されてもよい。また、画面要素の分類の一例として、テキストボックス、ラジオボタン、プルダウンメニュー、チェックボックス、サブミットボタンなどが挙げられるが、これらに限定されるものではない。
本実施形態において、識別要素は、id属性、class属性、name属性、value属性などの識別属性と、CssSelector、Xpathなどとを含む。識別要素は、上述したものに限定されず、独自に定義された識別子や名前、DOM(Document Object Model)、テキストパターン等を用いてもよい。
本実施形態において、要素値は、id属性、class属性、name属性、value属性に定義された属性値(図5におけるid=”id_a”のid_aなど)を示す。定義画面W3の例において、Xpathは、要素値として/html/body/p/inputを備える。
図6は、本実施形態において、画面の動作テストを実行する処理の流れを示すフローチャートである。以下、図2〜図9を参酌し、本実施形態に係るテスト支援装置1の処理について説明する。
はじめに、テスト支援装置1において、テスト支援プログラムが起動される。S101において、画面決定手段107は、動作テストの対象となる画面を特定する為の情報の入力を受け付ける。本実施形態において、画面を特定する為の情報として、URL、タイトル、要素値の何れかが入力される。画面決定手段107は、URLW12を介してURLの入力を受け付けると、S102において、入力されたURLに基づいて対象となる画面を特定し、表示処理する。コマンド生成手段105は、URLが入力されると、入力されたURLの画面を開くコマンドを生成する。
宿泊予約画面W1の次へボタンW19の押下により予約確認画面W2に遷移するとき、画面決定手段107は、初めに遷移先のURLを取得し、取得したURLに基づいて対象となる画面を特定し、表示処理する。画面決定手段107は、遷移先のURLが遷移前の画面のURLと重複する場合、遷移先の画面のタイトルを取得し、タイトルに基づいて対象となる画面を特定する。画面決定手段107は、更に遷移先のタイトルが重複する場合、遷移先の画面要素が備える他の画面と重複しない要素値を取得し、要素値に基づいて対象となる画面を特定する。なお、画面の遷移は、例えば、画面要素に含まれるハイパーリンクなどによって、実行されるものである。
また、コマンド生成手段105は、画面が遷移する際、画面遷移に関する操作内容(SwitchTab、SwitchFrameなど)に基づいて操作内容部C10を生成し、画面決定手段107により取得されたURL、タイトル、要素値の何れかに基づいてコマンドの操作対象部C20を生成する。本実施形態における画面遷移として、タブ切替、フレーム切替、ブラウザ切替、ウィンドウ切替などが挙げられる。画面決定手段107により画面決定に関するコマンドが生成されると、生成されたコマンドに含まれるURL、タイトル、要素値に基づいて、続くコマンドの対象となる画面が決定される。
S101、S102において対象となる画面が決定されると、要素情報取得手段101は、対象となる画面のHTML等を取得し、更に、HTMLに含まれる画面要素に関する要素情報を取得する。要素情報取得手段101により取得された要素情報は、記憶部108に格納される。図7は、図4の宿泊予約画面W1より取得された要素情報が格納される要素情報テーブルT1を示す。要素情報取得手段101は、画面要素において定義される全ての識別要素を要素情報テーブルT1として格納する。なお、要素情報取得手段101は、画面要素の指定を受けたとき、指定を受けた画面要素の要素情報を取得する構成であってもよい。
要素情報は、要素情報テーブルT1に示すように、対象画面T11、画面要素T12、分類T13、識別要素T14、インデックスT15を備える。対象画面T11は、タイトルを示しているが、URLが含まれてもよい。本実施形態において、分類T13は、type属性により定義された属性値が格納される。識別要素T14には、各識別要素の要素値が格納される。重複検出手段106は、要素情報取得手段101により取得された要素情報において同一画面内に含まれる重複する要素値を検出し、重複する各要素値に異なる識別子を紐づけてインデックスT15に格納する。要素情報テーブルT1において、「目的」に含まれる2つの画面要素は、それぞれname属性の要素値(name_contact)が重複している。このような重複に対して、重複検出手段106は、識別子として1及び2をそれぞれ紐づけることで、操作対象部C20においてname属性が入力された場合であっても対象となる画面要素を識別可能となる。
続くS103において、操作画面は、画面を構成する画面要素の指定をユーザより受け付ける。画面要素の指定は、例えば、画面要素にマウスのカーソルを近づける操作や、カーソルを近づけたうえでクリックする操作などにより実行される。要素情報取得手段101は、予め要素情報テーブルT1として格納した要素情報から、指定を受けた画面要素に関する要素情報を取得する。なお、要素情報取得手段101は、指定を受けた画面要素に関する要素情報をHTMLから取得する構成であってもよい。
図8(a)は、図4の宿泊予約画面W1において、画面要素として名前W14を指定されたときの続く表示処理について説明する図である。表示処理手段102は、ユーザより画面要素の指定を受けた要素情報の分類T13に基づいて、操作対象とする画面要素に対して実行可能な操作内容を操作内容一覧W141として表示処理する。図8(a)の例において、名前W14の分類T13は、テキストボックスを示す「text」であり、実行可能な操作内容として、画面要素に対してテキスト入力を実行する「input」、画面要素に対してクリック操作を実行する「Click」などが一覧に表示処理されている。例えば、画面要素の分類T13が、ラジオボタンを示す「radio」の場合、テキスト入力は実行できないため、操作内容として「input」は表示されない。
画面要素の分類T13に対して実行可能な操作内容は、予め記憶部108に格納される。また、要素情報の各分類T13には、予め表示処理する操作内容の優先順位が設定されている。優先順位は、画面要素の分類T13に対して実行される可能性が高い操作内容を示すものである。
S104において、操作内容入力手段103は、表示処理手段102により表示処理された操作内容一覧W141から任意の操作内容の選択を受け付ける。なお、操作内容入力手段103により選択された操作内容の回数を記憶部108に格納し、操作内容の優先順位は、記憶部108に格納された操作内容の回数に基づいて決定される構成とすることが好ましい。表示処理手段102は、要素情報の分類T13ごとに設定された優先順位にしたがって、操作内容一覧W141の並び順を決定し、表示処理する。
操作内容入力手段103により任意の操作内容が選択されると、表示処理手段102は、操作対象とする画面要素に定義された1以上の識別要素を識別要素一覧W142として操作内容一覧W141に並列させて表示処理する。図8(a)の例において、名前W14が備える識別要素T14は、id属性、value属性、CssSelector及び、Xpathであり、識別要素一覧W142は、要素情報テーブルT1において格納される識別要素T14に基づいて表示処理される。なお、CssSelector及び、Xpathは、画面要素において必然的に定義される識別要素であるため、表示処理手段102は、少なくともCssSelector及び、Xpathを識別要素一覧W142として表示処理することができる。
なお、識別要素に対しても優先順位が設定されてもよい。例えば、一般にid属性は、画面要素に対して一意に定義される識別要素であり、優先順位を高く設定することが好ましい。表示処理手段102は、優先順位に基づいて識別要素一覧W142の並び順を決定し、表示処理する。また、識別要素の優先順位は、識別要素入力手段104により選択された回数に基づいて決定されてもよい。
S105において、識別要素入力手段104は、表示処理手段102により識別要素一覧W142として一覧に表示処理された識別要素から任意の識別要素の選択を受け付ける。操作内容入力手段103及び識別要素入力手段104により選択を受け付けた操作内容及び識別要素は、コマンド生成手段105に対して出力される。
操作内容入力手段103により操作内容として「input」が入力された場合、表示処理手段102は、図8(b)に示すように、識別要素入力手段104により識別要素の選択を受け付けたのち、テキスト入力画面W143を表示処理する。テキスト入力画面W143は、例えば、宿泊予約画面W1においてポップアップ画面などとして表示処理される。テキスト入力画面W143は、テキスト入力部W144、OKボタンW145、取消ボタンW146を備える。テキスト入力部W144を介して入力を受け付けたテキストは、OKボタンW145の押下によって、入力値としてコマンド生成手段105に出力される。取消ボタンW146が押下されることにより、例えば、S103に戻って続く処理が実行される。
S106において、コマンド生成手段105は、操作内容入力手段103により選択を受け付けた操作内容に基づいてコマンドの操作内容部C10を生成する。また、コマンド生成手段105は、識別要素入力手段104により選択を受け付けた識別要素に基づいて操作対象部C20における識別要素指定部C21を生成し、選択を受け付けた識別要素に対応する要素値に基づいて操作対象部C20における要素値指定部C22を生成する。また、コマンド生成手段105は、画面要素に対する入力値に基づいて変数部C30を生成する。なお、コマンド生成手段105は、value属性の属性値を入力値として変数部C30を生成してもよい。
なお、識別要素入力手段104により選択を受け付けた識別要素に対応する要素値に識別子が紐づけられている場合、コマンド生成手段105は、要素値に紐づけられた識別子に基づいて操作対象部C20におけるインデックス部C23を生成する。識別子が紐づけられていない場合又は、識別子が1の場合、コマンド生成手段105は、インデックス部C23を生成しなくてもよい。
コマンド生成手段105により生成されたコマンドは、画面に対して操作された順序にしたがって、スクリプト画面W4に入力されていく。図9は、宿泊予約画面W1に対する操作に基づいて作成されたテストスクリプトを表示するスクリプト画面W4の画面例を示す。スクリプト画面W4は、スクリプト表示部W41、コマンドセット表示部W42、設定表示部W43、保存ボタンW44、再生ボタンW45などを備える。
スクリプト表示部W41は、コマンド生成手段105により生成されたコマンドを表示する。コマンドセット表示部W42は、少なくともコマンドの操作内容部C10を含むコマンドセットを表示する。コマンド生成手段105は、コマンドセット表示部W42において選択を受け付けたコマンドを生成し、スクリプト表示部W41に出力する。なお、コマンド生成手段105は、コマンドセット表示部W42に表示されるコマンドをドラッグアンドドロップの操作により、スクリプト表示部W41における任意の行に出力してもよい。
保存ボタンW44は、ユーザによる操作を受け付け、スクリプト表示部W41に表示されるテストスクリプトを例えばバッチファイルなどの形式で保存し、記憶部108に格納する。設定表示部W43は、保存したバッチファイルや実行環境の設定を保存したファイルを表示し、ユーザより任意のファイルの選択を受け付けることで、選択されたファイルを開く。再生ボタンW45は、対象のテストスクリプトを保存したファイルが開かれた段階で押下されることにより、テストスクリプトに基づいてテスト動作を実行する。これによって、ユーザが対象画面に対して行った操作が再現される。
テスト支援装置1は、テストスクリプトの実行結果をエビデンスとして記憶部108に格納する。また、テスト支援装置1は、例えば、記憶部108に格納したエビデンスと、任意の画面要素に対して異なる入力値を入力した場合に得られるエビデンスと、を比較することでエラー等を検証することができる。
本実施形態では、テスト支援装置1は、テスト支援プログラムをコンピュータ端末等にインストールすることにより機能を実現する。本発明の異なる実施形態として、テスト支援装置1は、ハードウェア構成要素(11−18)及び、データ通信機能、表示処理機能、データ処理機能などを備え、テスト支援プログラムをインストールしたサーバ装置2とデータ通信することにより、機能を実現する構成としてもよい。
なお、本実施形態において、コマンド生成手段105は、操作内容入力手段103及び識別要素入力手段104により選択を受け付けた操作内容及び要素情報に基づいてコマンドを自動で生成するが、ユーザの直接入力によりコマンドが生成されてもよい。
1 テスト支援装置
11 演算装置(CPU)
12 主記憶装置(RAM)
13 通信制御部
14 通信IF部
15 補助記憶装置
16 表示制御部
17 表示部
18 情報入力・指定部
101 要素情報取得手段
102 表示処理手段
103 操作内容入力手段
104 識別要素入力手段
105 コマンド生成手段
106 重複検出手段
107 画面決定手段
108 記憶部
2 サーバ装置

Claims (10)

  1. 画面を構成する画面要素に対する操作内容を定義したコマンドを用いてテストスクリプトを生成し、前記テストスクリプトの再生により画面の動作テストを自動化するテスト支援装置であって、
    画面要素に関する要素情報を取得する要素情報取得手段と、
    前記要素情報の分類に基づいて、操作対象とする前記画面要素に対して実行可能な操作内容を一覧として表示処理する表示処理手段と、
    前記表示処理手段により一覧として表示処理された操作内容から任意の操作内容の選択を受け付ける操作内容入力手段と、
    前記操作内容入力手段により選択を受け付けた操作内容に基づいてコマンドの操作内容部を生成するコマンド生成手段と、を備えるテスト支援装置。
  2. 前記要素情報は、画面要素を識別する為に用いられる識別要素を含み、
    前記表示処理手段は、操作対象とする画面要素に定義された1以上の識別要素を一覧として表示処理し、
    前記表示処理手段により一覧として表示処理された識別要素から任意の識別要素の選択を受け付ける識別要素入力手段と、
    前記コマンド生成手段は、前記識別要素入力手段により選択を受け付けた識別要素及び、識別要素に対して定義された要素値に基づいてコマンドの操作対象部を生成する請求項1に記載のテスト支援装置。
  3. 前記表示処理手段は、操作対象とする画面要素の指定を画面上で受け付けることにより、前記操作内容及び前記識別要素を一覧として表示処理する請求項2に記載のテスト支援装置。
  4. 前記コマンド生成手段は、前記コマンドの操作内容部及び、操作対象部の少なくとも一部を組み合わせた1以上のコマンドをコマンドセットとして予め記憶部に格納し、前記コマンドセットから任意のコマンドを選択することでコマンドを生成する請求項2又は請求項3に記載のテスト支援装置。
  5. 前記表示処理手段は、要素情報の分類ごとに設定された優先順位にしたがって前記操作内容を一覧として表示処理する請求項1〜請求項4の何れかに記載のテスト支援装置。
  6. 前記表示処理手段は、前記操作内容入力手段により選択を受け付けた操作内容の回数に基づいて前記優先順位を決定する請求項5に記載のテスト支援装置。
  7. 前記要素情報取得手段により取得された要素情報において要素値が重複する場合、同一画面内において重複する要素値を検出し、各要素値に異なる識別子を対応付けて記憶部に格納する重複検出手段を備え、
    前記コマンド生成手段は、前記重複検出手段により重複する要素値に紐づけられた識別子に基づいてコマンドの対象を決定し、前記識別子を一部として含む操作対象部を生成する請求項2〜請求項6の何れかに記載のテスト支援装置。
  8. 複数の画面を遷移して操作を行う場合、各画面の画面要素が有する他の画面と重複しない要素値を指定することにより、操作対象となる画面を特定する画面決定手段を備える請求項2〜請求項7の何れかに記載のテスト支援装置。
  9. 画面を構成する画面要素に対する操作内容を定義したコマンドを用いてテストスクリプトを生成し、前記テストスクリプトの再生により画面の動作テストを自動化するテスト支援プログラムであって、
    コンピュータを、画面要素に関する要素情報を取得する要素情報取得手段と、
    前記要素情報の分類に基づいて、操作対象とする前記画面要素に対して実行可能な操作内容を一覧として表示処理する表示処理手段と、
    前記表示処理手段により一覧として表示処理された操作内容から任意の操作内容の選択を受け付ける操作内容入力手段と、
    前記操作内容入力手段により選択を受け付けた操作内容に基づいてコマンドの操作内容部を生成するコマンド生成手段と、として機能させるテスト支援プログラム。
  10. 画面を構成する画面要素に対する操作内容を定義したコマンドを用いてテストスクリプトを生成し、前記テストスクリプトの再生により画面の動作テストを自動化するテスト支援方法であって、
    画面要素に関する要素情報を取得する要素情報取得ステップと、
    前記要素情報の分類に基づいて、操作対象とする前記画面要素に対して実行可能な操作内容を一覧として表示処理する表示処理ステップと、
    前記表示処理ステップにより一覧として表示処理された操作内容から任意の操作内容の選択を受け付ける操作内容入力ステップと、
    前記操作内容入力ステップにより選択を受け付けた操作内容に基づいてコマンドの操作内容部を生成するコマンド生成ステップと、をコンピュータが実行するテスト支援方法。
JP2020075365A 2020-04-21 2020-04-21 テスト支援装置、テスト支援プログラムおよび、テスト支援方法 Active JP6830701B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020075365A JP6830701B1 (ja) 2020-04-21 2020-04-21 テスト支援装置、テスト支援プログラムおよび、テスト支援方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020075365A JP6830701B1 (ja) 2020-04-21 2020-04-21 テスト支援装置、テスト支援プログラムおよび、テスト支援方法

Publications (2)

Publication Number Publication Date
JP6830701B1 JP6830701B1 (ja) 2021-02-17
JP2021174096A true JP2021174096A (ja) 2021-11-01

Family

ID=74562444

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020075365A Active JP6830701B1 (ja) 2020-04-21 2020-04-21 テスト支援装置、テスト支援プログラムおよび、テスト支援方法

Country Status (1)

Country Link
JP (1) JP6830701B1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7450187B2 (ja) 2021-11-19 2024-03-15 バルテス・ホールディングス株式会社 プログラム、情報処理方法、及び情報処理装置
JP7499429B1 (ja) 2024-04-08 2024-06-13 エヌ・ティ・ティレゾナント・テクノロジー株式会社 アプリ遠隔操作システム、アプリ実行制御装置およびアプリ実行制御方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016194777A (ja) * 2015-03-31 2016-11-17 エヌ・ティ・ティ・コムウェア株式会社 ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016194777A (ja) * 2015-03-31 2016-11-17 エヌ・ティ・ティ・コムウェア株式会社 ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7450187B2 (ja) 2021-11-19 2024-03-15 バルテス・ホールディングス株式会社 プログラム、情報処理方法、及び情報処理装置
JP7499429B1 (ja) 2024-04-08 2024-06-13 エヌ・ティ・ティレゾナント・テクノロジー株式会社 アプリ遠隔操作システム、アプリ実行制御装置およびアプリ実行制御方法

Also Published As

Publication number Publication date
JP6830701B1 (ja) 2021-02-17

Similar Documents

Publication Publication Date Title
RU2348964C2 (ru) Система и способ для обеспечения известности элементов пользовательского интерфейса для приложения и пользователя
US7917755B1 (en) Identification of localized web page element
US20040205570A1 (en) Test assisting program and test assisting method
JP5363355B2 (ja) スタイル要素を用いた画面表示の選択した表示領域をコピーアンドペーストする方法、システム及びプログラム
KR20080041234A (ko) 데이터베이스 애플리케이션에 선택 가능 기능 컨트롤을디스플레이하기 위한 명령 사용자 인터페이스
US11507497B2 (en) Methods and systems for automated testing using browser extension
JP6514084B2 (ja) 操作支援システム、操作支援方法、および、操作支援プログラム
JP6830701B1 (ja) テスト支援装置、テスト支援プログラムおよび、テスト支援方法
US20100057770A1 (en) System and method of file management, and recording medium storing file management program
WO2015043352A1 (en) Method and apparatus for selecting test nodes on webpages
JP6206202B2 (ja) 情報処理装置及び情報処理プログラム
TW200406692A (en) Semiconductor test data analysis system
CN111427760B (zh) 页面测试方法、装置、设备及存储介质
US11526578B2 (en) System and method for producing transferable, modular web pages
JP2013054693A (ja) リグレッションテスト支援プログラム及びリグレッションテスト支援装置
CN112631571B (zh) 一种web编辑器内组件的联动方法及装置
US20190179877A1 (en) Information processing system, control method, and storage medium
WO2015001721A1 (ja) ユーザインタフェース検査方法、装置およびプログラム
JP2021043479A (ja) 情報処理装置、制御方法及びプログラム
JP2009087289A (ja) ドキュメント作成管理システム、端末、サーバ、ドキュメント作成管理方法およびそのプログラム
JP6739599B1 (ja) 情報処理プログラム、情報処理方法、及び情報処理装置
US12019699B2 (en) Visual recorder for demonstrations of web-based software applications
CN113821202B (zh) 一种管理软件文件生成方法、装置、设备及可读存储介质
JP6927340B2 (ja) 操作記録プログラム、操作記録方法、操作記録装置、操作再生プログラム、操作再生方法及び操作再生装置
WO2024127582A1 (ja) 操作支援装置、操作支援方法及び操作支援プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200427

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200427

A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20200430

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201022

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: 20210112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210113

R150 Certificate of patent or registration of utility model

Ref document number: 6830701

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350