JP6426535B2 - テスト支援装置、及びテスト支援方法 - Google Patents

テスト支援装置、及びテスト支援方法 Download PDF

Info

Publication number
JP6426535B2
JP6426535B2 JP2015116569A JP2015116569A JP6426535B2 JP 6426535 B2 JP6426535 B2 JP 6426535B2 JP 2015116569 A JP2015116569 A JP 2015116569A JP 2015116569 A JP2015116569 A JP 2015116569A JP 6426535 B2 JP6426535 B2 JP 6426535B2
Authority
JP
Japan
Prior art keywords
test
component
test scenario
scenario
software
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
JP2015116569A
Other languages
English (en)
Other versions
JP2017004208A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2015116569A priority Critical patent/JP6426535B2/ja
Publication of JP2017004208A publication Critical patent/JP2017004208A/ja
Application granted granted Critical
Publication of JP6426535B2 publication Critical patent/JP6426535B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、テスト支援装置、及びテスト支援方法に関する。
特許文献1には、「完成したWebアプリケーションから操作手順書の雛形を自動生成することで、開発者の文書作成のコストを抑えることができるWebアプリケーションの操作手順書生成システムを提供する」、「Webアプリケーションの操作手順書生成システムは、ユーザが、ルートURLを指定すると、ルートURLが示すWebアプリケーションサーバーのWebアプリケーションの画面にアクセスする手段と、アクセスした画面を引数として画面解析処理を呼び出す手段と、画面解析処理によって、解析対象の画面のHTMLを解析し、画面中に存在する全てのリンク、フォームの情報を取得し、画面情報記憶部に登録する手段と、解析対象の画面をキャプチャし、それを画像ファイルに変換し、画面画像記憶部に保存する手段と、取得したすべてのリンク、フォームについて、アクセス、又は、フォーム送信を行い、画面遷移を行う手段等を備えている」と記載されている。
特開2010−079342号公報
ソフトウェアのテストにおいては、ソフトウェアによって実現される構成要素を漏れなくテストすることが求められる。例えば、Webサーバによって提供されるWebページのテストにおいては、Webページに設けられている部品(構成要素)を漏れなくテストすることが求められる。こうしたテストの網羅性は、ソフトウェアの機能拡張や不具合修正等を実施した後に行われる、いわゆる回帰テスト(regression test)においてとくに
重視される。
ソフトウェアのテスト手法としては、例えば、想定される様々な操作手順(以下、シナリオとも称する。)に従って人手により行う方法、自然言語等で記述されたテストシナリオに従って操作入力の手順を自動的に実行させる方法等がある。しかしいずれの方法による場合も、ソフトウェアが表示する画面のスクリーンショットを取得し、これを目視確認する等、テストの網羅性の確認は人手による方法で行われており、見落とし等による漏れを完全に防ぐことは難しい。
本発明は、こうした背景に鑑みてなされたもので、ソフトウェアのテストを効率よく確実に行えるようにするためのテスト支援装置、及びテスト支援方法を提供することを目的としている。
本発明のうちの一つは、情報処理装置を用いて構成される、ソフトウェアのテストを支援する装置であって、ソフトウェアの構成要素を特定可能な情報を取得するソフトウェア構成要素取得部、前記ソフトウェアをテストするテストシナリオを記憶する記憶部、前記ソフトウェアの構成要素のうち、前記テストシナリオにおいてテストの対象になっていない構成要素である漏れ構成要素を特定する漏れ構成要素特定部を備える。
その他、本願が開示する課題、及びその解決方法は、発明を実施するための形態の欄、及び図面により明らかにされる。
本発明によれば、ソフトウェアのテストを効率よく確実に行うことができる。
テスト支援システム1の概略的な構成を示す図である。 サーバ装置200やクライアント装置100の実現に用いる情報処理装置(コンピュータ)の一例である。 Webブラウザ111が応答情報として表示するWebページの一例である。 Web記述文書121の一例である。 (a)は、Webページ300の検索キーワードの入力送信欄313をテストするテストシナリオ122の一例であり、(b)は、Webページ300のメニューの選択欄312をテストするテストシナリオ122の一例である。 テスト対象構成要素131の一例である。 漏れ構成要素132の一例である。 漏れ構成要素表示画面142の一例である。 加工済テストシナリオ143の一例である。 テスト実行処理S1000を説明するフローチャートである。 テスト結果解析処理S1100を説明するフローチャートである。
以下、実施形態について図面を参照しつつ詳細に説明する。
図1に本発明の一実施形態として説明する、ソフトウェアのテストを支援するシステム(以下、テスト支援システム1と称する。)の概略的な構成を示している。同図に示すように、テスト支援システム1は、テストの対象となるWebページを提供するサーバ装置200、及びWebページのテストの業務に携わる者(以下、ユーザと称する。)によって操作されるクライアント装置100(テスト支援装置)を含む。サーバ装置200とクライアント装置100は、例えば、LAN(Local Area Network)やWAN(Wide Area Network)、インターネット等の通信ネットワーク5を介して互いに通信可能に接続され
ている。
テスト支援システム1は、1つのサーバ装置200に対して複数のクライアント装置100がアクセスする構成であってもよい。例えば、大規模なソフトウェア開発を行うプロジェクトにおいて、サーバ装置200が提供するWebページのテストを複数のユーザが共同して行う場合にはそのような構成となる。テスト支援システム1の対象となるテストとしては、例えば、回帰テスト(regression test)、機能テスト(function test)、検証テスト(verification test)、受入テスト(acceptance test)、性能テスト(performance test)等がある。
図2にサーバ装置200やクライアント装置100の実現に用いる情報処理装置(コンピュータ)の一例を示している。同図に示すように、情報処理装置10は、プロセッサ11、主記憶装置12、補助記憶装置13、入力装置14、出力装置15、及び通信装置16を備える。これらは図示しないバス等の通信手段を介して互いに通信可能に接続されている。尚、サーバ装置200やクライアント装置100を、例えば、1つ以上の情報処理装置を用いて実現される仮想的な情報処理装置(例えば、クラウドシステムによって提供されるクラウドサーバ等)を用いて構成してもよい。
プロセッサ11は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)を用いて構成される。プロセッサ11が、主記憶装置12に格納されているプログラムを読み出して実行することにより、情報処理装置10の様々な機能が実現される。主記憶装置12は、プログラムやデータを記憶する装置であり、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、NVRAM(Non Volatile RAM)等である。補助記憶装置13は、例えば、ハードディスクドライブ、SSD(Solid State Drive)、光学式記憶装置、記録媒体の読取/書込装置等である。補助記憶装置13
に格納されているプログラムやデータは主記憶装置12に随時ロードされる。
入力装置14は、例えば、キーボード、マウス、タッチパネル等である。出力装置15は、例えば、液晶モニタ、LCD(Liquid Crystal Display)、グラフィックカード、スピーカ等である。通信装置16は、通信ネットワーク5を介して他の装置と通信する通信インタフェースであり、例えば、NIC(Network Interface Card)、無線通信モジュール等である。
図1に戻り、サーバ装置200は、Webサーバ211の機能を備えるとともにWebコンテンツデータ251を記憶する。尚、図示していないが、サーバ装置200は、例えば、Webサーバ211の実行基板となるオペレーティングシステム(Operating System)、Webサーバ211と連携して動作する各種ミドルウェア、Webコンテンツデータ251を管理するDBMS(DataBase Management System)等の機能を備える。
Webサーバ211は、サーバ装置200のプロセッサ11が、主記憶装置12に格納されているプログラムを読み出して実行することにより実現される。Webサーバ211は、クライアント装置100から通信ネットワーク5を介して情報配信要求(リクエスト)を受信すると、情報配信要求についてWebページ等の応答情報(レスポンス)を生成し、生成した応答情報を通信ネットワーク5を介してクライアント装置100に送信する。
Webコンテンツデータ251は、Webサーバ211が応答情報を生成する際に利用するデータである。Webコンテンツデータ251には、例えば、HTML(HyperText Markup Language)、XHTML(eXtensible HyperText Markup Language)、XML(eXtensible Markup Language)等の言語(以下、Web記述言語と称する。)で記述され
たデータ、各種スクリプトデータ、各種マルチメディアデータ(静止画や動画を記録した映像データ、音声データ等)等、クライアント装置100に提供される様々なタイプのデータが含まれる。
図1に示すように、クライアント装置100は、Webブラウザ111(ソフトウェア構成要素取得部)、テスト実行部112、テスト結果解析部113、及び記憶部120の各機能を備える。テスト実行部112は、テストシナリオ実行部1121及び漏れ構成要素特定部1122を含む。またテスト結果解析部113は、漏れ構成要素表示画面生成部1131及び追加テストシナリオ生成部1132を含む。
記憶部120は、Web記述文書121(ソフトウェアの構成要素を特定可能な情報)、テストシナリオ122、テストスクリプト123、テスト対象構成要素131、漏れ構成要素132、スクリーンショット141、漏れ構成要素表示画面142、及び加工済テストシナリオ143等のデータを記憶する。
図示していないが、クライアント装置100は、上記各機能の動作基板となるオペレーティングシステム、Webブラウザ111と連携して動作する各種ミドルウェア、及び上
記各データを管理するDMBS等の機能を備えていてもよい。クライアント装置100が備える各機能は、クライアント装置100のプロセッサ11が、主記憶装置12に格納されているプログラムを読み出して実行することにより実現される。
Webブラウザ111は、入力装置14を介して行われる操作入力(アクセス先のURI(Uniform Resource Identifier)の操作入力等)に応じてWebサーバ211に情報
配信要求を送信し、上記情報配信要求に応じてサーバ装置200から送られてくる応答情報を受信する。記憶部120は、上記応答情報に含まれているWeb記述文書をWeb記述文書121として記憶する。Webブラウザ111は、Web記述文書121を解釈して実行する機能、Webサーバ211から送られてくるスクリプトやクライアント装置100に予め用意されたスクリプトを解釈して実行する機能等を備える。Webブラウザ111は、Web記述文書121に基づくWebページ、及び上記応答情報として送られてくる映像や音声等を出力装置15に出力する。
テスト実行部112のテストシナリオ実行部1121は、例えば、Webブラウザ111を制御することによりテストシナリオ122に従って操作入力の手順を自動的に実行し、Webサーバ211から提供されるテスト対象のWebページのテストを行う。テストシナリオ122は、例えば、自然言語で記述された複数のステップからなる。記憶部120は、テストシナリオ122のステップに対応する実装コード(例えば、Ruby(登録商標)コード)であるテストスクリプト123を記憶する。テストシナリオ実行部1121の機能を実現するソフトウェアとして、例えば、「Cucumber(登録商標)」、「Turnip(登録商標)」等がある。テストシナリオ実行部1121は、上記操作入力手順の自動実行に際し、Webブラウザ111に表示される画像を記録したデータ(以下、スクリーンショット141と称する。)を随時取得して記憶する。尚、記憶部120が記憶する各スクリーンショット141には、対応する画面を特定する識別子(例えば、WebページのURL等)が付帯する。
テストシナリオ実行部1121は、例えば、サーバ装置200のWebサーバ211の機能と連携して動作する構成としてもよい。またテストシナリオ実行部1121が、例えば、Webブラウザ111に対して行われた操作入力を記録し、記録した情報に基づきテストシナリオ122やテストスクリプト123を自動生成するようにしてもよい。その場合、Webブラウザ111に入力する内容にバリエーションを持たせるべく、テストシナリオ実行部1121が上記入力内容を自動生成するようにしてもよい。テスト対象となる同一のWebページについて複数のテストシナリオ122が用意されることもある。例えば、Webページが複数の業務(例えば、参照業務、登録業務、更新業務等)に対応している場合は業務ごとにテストシナリオ122が用意される。
図3にWebブラウザ111が応答情報として表示するWebページの一例を示す。このWebページ300には、他のWebページへのリンク群311、メニューの選択欄312、検索キーワードの入力送信欄313、画像(写真)の表示欄314、情報の表示欄315、コメントの入力欄316、情報の表示欄317、操作ボタン318等の構成要素が設けられている。Webページ300の構成要素は、ユーザの操作の対象となる構成要素である操作要素と、情報の表示機能に特化した構成要素である表示要素とに分類することができる。同図に示すWebページ300の場合、他のWebページへのリンク群311、メニューの選択欄312、検索キーワードの入力送信欄313、コメントの入力欄316、及び操作ボタン318は操作要素に相当し、画像(写真)の表示欄314、情報の表示欄315、及び情報の表示欄317は表示要素に相当する。
図4(a)は、図3に示したWebページ300に対応する、HTMLで記述されたWeb記述文書121の一例である。尚、図4(b)に示すように、Web記述文書121
の内容は、Web記述文書121がWebブラウザ111に読み込まれる際等にWebサーバ211の機能等によって変更/追加されることがある。その場合、テストシナリオ実行部1121は、変更/追加された後のWeb記述文書121を対象としてテストシナリオ122に従ってテストを実行する。
図5(a),(b)は、図3に示したWebページ300をテストの対象とするテストシナリオ122の例である。このうち(a)は、Webページ300の検索キーワードの入力送信欄313をテストするテストシナリオ122の一例であり、(b)は、Webページ300のメニューの選択欄312をテストするテストシナリオ122の一例である。テスト番号の欄511には、テストシナリオ122の識別子であるテスト番号が記述される。テスト名の欄512には、テストシナリオ122の名称が記述される。テスト手順の欄513には、自然言語で記述された一つ以上のステップが記述される。
図1に戻り、漏れ構成要素特定部1122は、テストシナリオ122においてテストの対象になっていない構成要素である漏れ構成要素を特定し、記憶部120は、漏れ構成要素特定部1122が特定した漏れ構成要素を漏れ構成要素132として記憶する。尚、漏れ構成要素特定部1122は、テストシナリオ122においてテストの対象になっている構成要素であるテスト対象構成要素をテスト対象構成要素131として管理し、Web記述文書121に含まれている構成要素とテスト対象構成要素131とを対照することにより、漏れ構成要素を特定する。
図6は、データベースのテーブルとして管理される、テスト対象構成要素131の一例である。テスト実行部112は、テスト対象である同一のWebページについて用意された一つ以上のテストシナリオ122のいずれかにおいてテストの対象になっている構成要素に関する情報をテスト対象構成要素131として管理する。
同図に示すように、テスト対象構成要素131は、シナリオID611、URL612、表現形式613、テスト内容614、出力位置615、出力内容616、及び画像データ名617の各項目からなる一つ以上のレコードで構成される。このテーブルの一つのレコードは一つの構成要素に対応している。
シナリオID611には、当該レコードの構成要素がテストの対象として記述されているテストシナリオ122の識別子であるシナリオIDが設定される。URL612には、当該レコードの構成要素が設けられているWebページの識別子(本例ではURL)が設定される。表現形式613には、当該レコードの構成要素のWeb記述言語による表現形式が設定される。尚、Webブラウザ111、テスト実行部112、及びテスト結果解析部113は、例えば、予めテンプレートとして記憶している表現形式(<button>タグの表記や構成要素の識別子(id、name)等)に基づき、Web記述文書121やテストシナリオ122に記述されている構成要素を特定する。
テスト内容614には、当該レコードの構成要素に対して当該テストシナリオ122が行う手順の内容(操作、表示)が設定される。出力位置615には、Webページ内における当該レコードの構成要素の表示位置を示す情報(以下、出力位置と称する。)が設定される。出力位置は、例えば、Webページ内に設定された座標系(x座標,y座標)とWebページの状態(ページ幅,ページ高さ)を示す情報とによって示される。出力内容616には、当該レコードの構成要素が表示機能を備えている場合に当該レコードの構成要素に表示されるべき内容が設定される。画像データ名617には、テスト対象構成要素の画像データのデータ名(ファイル名等)が設定される。上記画像データは、例えば、漏れ構成要素特定部1122によって随時取得される。
図7は、データベースのテーブルとして管理される、漏れ構成要素132の一例である。テスト実行部112は、用意されたテストシナリオ122のいずれかにおいてテストの対象になっていない構成要素、即ち漏れ構成要素に関する情報を漏れ構成要素132として管理する。
同図に示すように、漏れ構成要素132は、URL711、表現形式712、出力位置713、出力内容714、及び画像データ名715の各項目からなる一つ以上のレコードで構成される。このテーブルの一つのレコードは一つの構成要素に対応している。
URL711には、当該レコードの構成要素が設けられているWebページの識別子(本例ではURL)が設定される。表現形式712には、当該レコードの構成要素のWeb記述言語による表現形式が設定される。出力位置713には、Webページ内における当該レコードの構成要素の出力位置が設定される。出力内容714には、当該レコードの構成要素が表示機能を備えている場合に、当該レコードの構成要素に表示されるべき内容が設定される。画像データ名715には、漏れ構成要素の画像データ(以下、漏れ構成要素画像と称する。)のデータ名(ファイル名等)が設定される。上記画像データは、例えば、漏れ構成要素特定部1122によって随時取得される。
図1に戻り、テスト結果解析部113の漏れ構成要素表示画面生成部1131は、漏れ構成要素132に基づき、スクリーンショット141の漏れ構成要素に相当する部分を強調表示した画面の画像データ(以下、漏れ構成要素表示画面142と称する。)を生成して出力装置15に表示する。また漏れ構成要素表示画面生成部1131は、漏れ構成要素表示画面142に漏れ構成要素を強調表示するに際し、前述した操作要素と表示要素とを区別した態様で表示する。
図8は漏れ構成要素表示画面生成部1131が生成する漏れ構成要素表示画面142の一例である。漏れ構成要素表示画面生成部1131は、図3に示したWebページ300のスクリーンショット141において漏れ構成要素に相当する部分を強調表示した画面(スクリーンショット141の漏れ構成要素に相当する部分に当該部分を強調表示する画像(例えば、点線枠や破線枠)をオーバレイした画面)を漏れ構成要素表示画面142として生成する。尚、漏れ構成要素表示画面生成部1131は、例えば、上記スクリーンショット141と前述した漏れ構成要素画像とを比較することにより、強調表示の対象となる、スクリーンショット141の漏れ構成要素が設けられている部分を特定する。これにより漏れ構成要素表示画面生成部1131はオーバレイ処理を効率よく行うことができる。
同図において、点線枠811は、当該点線枠811で囲まれた構成要素が漏れ構成要素でありかつ操作要素であることを示している。また破線枠812は、当該破線枠812で囲まれた構成要素が漏れ構成要素でありかつ表示要素であることを示している。このように、漏れ構成要素表示画面生成部1131は、Webページ300のスクリーンショット141に漏れ構成要素に相当する部分を強調表示した画面を生成するので、ユーザは漏れ構成要素を容易に把握することができる。またユーザは漏れ構成要素が操作要素であるか表示要素であるかを容易に把握することができる。
テスト結果解析部113の追加テストシナリオ生成部1132は、漏れ構成要素132をテストの対象とするテストシナリオである追加テストシナリオを生成し、生成した追加テストシナリオを、記憶部120が記憶している既存のテストシナリオ122に追記した加工済テストシナリオを生成する。尚、既存のテストシナリオ122が複数存在する場合、追加テストシナリオ生成部1132は、例えば、複数のテストシナリオ122のうち、ステップ数の最も少ないテストシナリオ122に追加テストシナリオを追記して追加テストシナリオ生成部1132を生成する。追加テストシナリオ生成部1132が、追加テス
トシナリオを含んだテストシナリオ122を新規に生成するとしてもよい。
図9は追加テストシナリオ生成部1132が生成する加工済テストシナリオ143の一例である。同図に示す加工済テストシナリオ143は、図5(b)に示したテストシナリオ122に、漏れ構成要素としたステップからなるテストシナリオ(以下、追加テストシナリオ911と称する。)を追記した内容になっている。テスト結果解析部113は、複数のテストシナリオ122が存在する場合、例えば、最もステップ数の少ないテストシナリオ122に追加テストシナリオ911を追記して加工済テストシナリオ143を生成する。これによりユーザは、漏れ構成要素を対象としたテストを迅速に行うことができる。
<処理説明>
図10は、クライアント装置100のテスト実行部112が行う処理(以下、テスト実行処理S1000と称する。)を説明するフローチャートである。以下、同図とともにテスト実行処理S1000について説明する。
まずテスト実行部112は、補助記憶装置13からテストスクリプト123を読み出して主記憶装置12に格納する等、テストシナリオ122を実行するための準備処理を行う(S1011)。
続いて、テスト実行部112のテストシナリオ実行部1121は、記憶部120からテストシナリオ122を1つ取得する(S1012)。
続いて、テストシナリオ実行部1121は、取得したテストシナリオ122から、ステップを1つ(1行分の手順)を取得する(S1013)。
続いて、テストシナリオ実行部1121は、S1013で取得したステップがスクリーンショットを取得する処理内容であるか否かを判定する(S1014)。取得したステップがスクリーンショットを取得する処理内容であると判定すると(S1014:YES)、テストシナリオ実行部1121は、Webページのスクリーンショットを取得し、記憶部120がこれをスクリーンショット141として記憶する(S1015)。その後、処理はS1018に進む。取得したステップがスクリーンショットを取得する処理内容でないと判定すると(S1014:NO)、テストシナリオ実行部1121は、取得したステップの処理内容を実行し(S1016)、記憶部120が、S1013で取得したステップにおいてテスト対象となった構成要素をテスト対象構成要素131として記憶する(S1017)。
続いて、テストシナリオ実行部1121が、S1013で取得したステップが、S1012で取得したテストシナリオ122の最終行であるか否かを判定する(S1018)。テストシナリオ実行部1121が、S1013で取得したステップがS1012で読み出したテストシナリオ122の最終行でないと判定した場合(S1018:NO)、処理はS1013に戻り、テストシナリオ実行部1121は次のステップを取得して以上と同様の処理を繰り返す。テストシナリオ実行部1121が、S1013で取得したステップがS1012で読み出したテストシナリオ122の最終行であると判定した場合(S1018:YES)、処理はS1031に進む。
S1031では、テストシナリオ実行部1121が、S1012で未取得のテストシナリオ122が残存するか否かを判定する。テストシナリオ実行部1121が、S1012で未取得のテストシナリオ122が残存すると判定した場合(S1031:YES)、処理はS1012に戻る。テストシナリオ実行部1121が、S1012で未取得のテストシナリオ122が残存しないと判定した場合(S1031:NO)、処理はS1032に
進む。
S1032では、テスト実行部112の漏れ構成要素特定部1122が、テスト対象のWebページのWeb記述文書121から、テスト対象となり得る全ての構成要素を抽出する。
S1033では、漏れ構成要素特定部1122が、抽出した上記全構成要素とテスト対象構成要素とを対照することにより両者の差分の構成要素、即ち漏れ構成要素を特定する。尚、テスト対象構成要素131には、テスト対象のWebページを対象としてテストを実行する複数のテストシナリオ122のテスト結果が反映されているので、S1033において漏れ構成要素特定部1122が特定する漏れ構成要素は、S1012で取得されたいずれのテストシナリオ122もテストの対象としていない構成要素である。S1034では、記憶部120が、S1033で漏れ構成要素特定部1122が特定した漏れ構成要素を、漏れ構成要素132として記憶する。以上でテスト実行処理S1000は終了する。
図11は、クライアント装置100のテスト結果解析部113が行う処理(以下、テスト結果解析処理S1100と称する。)を説明するフローチャートである。以下、同図とともにテスト結果解析処理S1100について説明する。
まずテスト結果解析部113の漏れ構成要素表示画面生成部1131は、記憶部120からスクリーンショット141を一つ取得する(S1111)。
続いて、漏れ構成要素表示画面生成部1131は、漏れ構成要素132を参照し、S1111で取得したスクリーンショット141の漏れ構成要素が設けられている部分を特定する(S1112)。
続いて、漏れ構成要素表示画面生成部1131は、S1111で取得したスクリーンショット141の漏れ構成要素に相当する部分を強調表示した画面、即ち漏れ構成要素表示画面142を生成する(S1113)。
続いて、テスト結果解析部113の追加テストシナリオ生成部1132が、追加テストシナリオを生成し、これを既存のテストシナリオ122に追記した加工済テストシナリオ143を生成する(S1114)。
S1115では、テスト結果解析部113が、処理対象の他のスクリーンショット141が残存するか否かを判定する。テスト結果解析部113が処理対象の他のスクリーンショット141が残存すると判定した場合は(S1115:YES)、S1111の処理に進む。テスト結果解析部113が処理対象の他のスクリーンショット141が残存しないと判定した場合は(S1115:NO)、テスト結果解析処理S1100は終了する。
尚、クライアント装置100は、入力装置14を介して行われるユーザのリクエスト等に応じて、S1113で生成された漏れ構成要素表示画面142やS1114で生成された加工済テストシナリオ143を随時出力装置15に表示する。
以上に説明したように、本実施形態のテスト支援システム1にあっては、漏れ構成要素特定部1122が、テスト対象のソフトウェアの構成要素のうち、テストシナリオ122においてテストの対象になっていない構成要素である漏れ構成要素を特定するので、ユーザはテストシナリオ122においてテストの対象になっていない構成要素を容易かつ確実に把握することができる。
また同じソフトウェアをテストするテストシナリオ122が複数存在する場合、漏れ構成要素特定部1122は、テスト対象のソフトウェアの構成要素のうち、当該ソフトウェアについて用意された複数のテストシナリオ122のいずれにおいてもテストの対象になっていない構成要素を漏れ構成要素として特定するので、複数のテストシナリオ122が存在する場合でも、ユーザはテストの対象になっていない構成要素を確実に把握することができる。
また漏れ構成要素表示画面生成部1131は、取得したスクリーンショット141において漏れ構成要素に相当する部分を強調表示した画面である漏れ構成要素表示画面142を生成するので、ユーザはテストシナリオ122においてテストの対象になっていない構成要素を容易に把握することができる。
また追加テストシナリオ生成1132は、漏れ構成要素をテストの対象とするテストシナリオである追加テストシナリオを生成するので、ユーザは漏れ構成要素についてのテストを効率よく行うことができる。
尚、例えば、Webページに表示される表示専用部品のように、スクリーンショット141を眺めただけでは構成要素の存在に気付かないことがあり、とくにテストを行う者とソフトウェアの開発者とが異なる場合は見落としが発生する可能性が高くなる。しかし本実施形態のテスト支援システム1においては、漏れ構成要素特定部1122が漏れ構成要素を自動的に抽出して提示するので、ユーザは漏れ構成要素を確実に把握することができる。またソフトウェアのテストが複数人で行われる場合、各ユーザはいずれのユーザによってもテストされていない漏れ構成要素を確実に把握することができる。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は上記の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上記の実施の形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、上記実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
例えば、以上では、テスト対象となるソフトウェアがWebページである場合について説明したが、本発明が想定するテスト対象となるソフトウェアはこれに限られない。また例えば、漏れ構成要素表示画面生成部1131が、テストシナリオ122の実行中にテスト対象のソフトウェアの機能によって生成される画面(例えば、Webページ)において、漏れ構成要素に相当する部分を強調表示するようにしてもよい。これによりユーザはテスト中に漏れ構成要素を確認することができ、テストを効率よく進めることができる。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば、集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリやハードディスク、SSD(Solid State Drive)等の記録装置、ま
たはICカード、SDカード、DVD等の記録媒体に置くことができる。
また、上記の各図において、制御線や情報線は説明上必要と考えられるものを示しており、必ずしも実装上の全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
1 テスト支援システム、5 通信ネットワーク、10 情報処理装置、100 クライアント装置、111 Webブラウザ、112 テスト実行部、1121 テストシナリオ実行部、1122 漏れ構成要素特定部、113 テスト結果解析部、1131 漏れ構成要素表示画面生成部、1132 追加テストシナリオ生成部、120 記憶部、121 Web記述文書、122 テストシナリオ、123 テストスクリプト、131 テスト対象構成要素、132 漏れ構成要素、141 スクリーンショット、142 漏れ構成要素表示画面、143 加工済テストシナリオ、200 サーバ装置、211 Webサーバ、251 Webコンテンツデータ、911,912 追加テストシナリオ

Claims (13)

  1. 情報処理装置を用いて構成される、ソフトウェアのテストを支援する装置であって、
    ソフトウェアの構成要素を特定可能な情報を取得するソフトウェア構成要素取得部、
    前記ソフトウェアをテストするテストシナリオを記憶する記憶部、
    前記ソフトウェアの構成要素のうち、前記テストシナリオにおいてテストの対象になっていない構成要素である漏れ構成要素を特定する漏れ構成要素特定部
    前記テストシナリオを実行するとともに、前記テストシナリオの実行に際して前記ソフトウェアの機能によって生成される画面のスクリーンショットを取得するテストシナリオ実行部、及び、
    取得した前記スクリーンショットにおいて前記漏れ構成要素に相当する部分を強調表示した画面である漏れ構成要素表示画面を生成する漏れ構成要素表示画面生成部
    を備えるテスト支援装置。
  2. 請求項1に記載のテスト支援装置であって、
    前記記憶部は、前記ソフトウェアをテストする複数のテストシナリオを記憶し、
    前記漏れ構成要素特定部は、前記構成要素のうち、前記複数のテストシナリオのいずれにおいてもテストの対象になっていない構成要素を前記漏れ構成要素として特定する
    テスト支援装置。
  3. 請求項に記載のテスト支援装置であって、
    前記漏れ構成要素表示画面生成部は、前記テストシナリオの実行中に前記ソフトウェアの機能によって生成される画面において、前記漏れ構成要素に相当する部分を強調表示する
    テスト支援装置。
  4. 請求項に記載のテスト支援装置であって、
    前記漏れ構成要素表示画面生成部は、前記漏れ構成要素を強調表示するに際し、ユーザの操作の対象となる前記構成要素である操作要素と、情報の表示機能に特化した構成要素である表示要素とを区別した態様で表示する
    テスト支援装置。
  5. 請求項に記載のテスト支援装置であって、
    前記漏れ構成要素特定部は、前記テストシナリオにおいてテストの対象になっている前記構成要素の画像データを取得し、
    前記漏れ構成要素表示画面生成部は、取得した前記スクリーンショットと前記画像データとを比較することにより、前記強調表示の対象となる、前記スクリーンショットの前記漏れ構成要素が設けられている部分を特定する
    テスト支援装置。
  6. 請求項1又は2に記載のテスト支援装置であって、
    前記漏れ構成要素をテストの対象とするテストシナリオである追加テストシナリオを生成する追加テストシナリオ生成部
    をさらに備えるテスト支援装置。
  7. 請求項に記載のテスト支援装置であって、
    前記追加テストシナリオ生成部は、前記追加テストシナリオを、前記記憶部が記憶している既存の前記テストシナリオに追記する
    テスト支援装置。
  8. 請求項に記載のテスト支援装置であって、
    前記テストシナリオは一つ以上のステップを含み、
    前記追加テストシナリオ生成部は、既存の前記テストシナリオが複数存在する場合に、前記テストシナリオのうち、前記ステップ数の最も少ないテストシナリオに前記追加テストシナリオを追記する
    テスト支援装置。
  9. 情報処理装置を用いて構成される、ソフトウェアのテストを支援する装置であるテスト支援装置が、
    ソフトウェアの構成要素を特定可能な情報を取得する処理、
    前記ソフトウェアをテストするテストシナリオを記憶する処理、
    前記ソフトウェアの構成要素のうち、前記テストシナリオにおいてテストの対象になっていない構成要素である漏れ構成要素を特定する処理
    前記テストシナリオを実行するとともに、前記テストシナリオの実行に際して前記ソフトウェアの機能によって生成される画面のスクリーンショットを取得する処理、
    取得した前記スクリーンショットにおいて前記漏れ構成要素に相当する部分を強調表示した画面である漏れ構成要素表示画面を生成する処理、
    を実行する、テスト支援方法。
  10. 請求項に記載のテスト支援方法であって、
    前記テスト支援装置が、
    前記ソフトウェアをテストする複数のテストシナリオを記憶する処理、
    前記構成要素のうち、前記複数のテストシナリオのいずれにおいてもテストの対象になっていない構成要素を前記漏れ構成要素として特定する処理
    をさらに実行する、テスト支援方法。
  11. 請求項に記載のテスト支援方法であって、
    前記テスト支援装置が、
    前記テストシナリオの実行中に前記ソフトウェアの機能によって生成される画面において、前記漏れ構成要素に相当する部分を強調表示する処理
    をさらに実行する、テスト支援方法。
  12. 請求項9又は10に記載のテスト支援方法であって、
    前記テスト支援装置が、
    前記漏れ構成要素をテストの対象とするテストシナリオである追加テストシナリオを生成する処理
    をさらに実行する、テスト支援方法。
  13. 請求項12に記載のテスト支援方法であって、
    前記テスト支援装置が、前記追加テストシナリオを、記憶している既存の前記テストシナリオに追記する処理、
    をさらに実行する、テスト支援方法。
JP2015116569A 2015-06-09 2015-06-09 テスト支援装置、及びテスト支援方法 Active JP6426535B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015116569A JP6426535B2 (ja) 2015-06-09 2015-06-09 テスト支援装置、及びテスト支援方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015116569A JP6426535B2 (ja) 2015-06-09 2015-06-09 テスト支援装置、及びテスト支援方法

Publications (2)

Publication Number Publication Date
JP2017004208A JP2017004208A (ja) 2017-01-05
JP6426535B2 true JP6426535B2 (ja) 2018-11-21

Family

ID=57754215

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015116569A Active JP6426535B2 (ja) 2015-06-09 2015-06-09 テスト支援装置、及びテスト支援方法

Country Status (1)

Country Link
JP (1) JP6426535B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018207481A1 (ja) * 2017-05-09 2018-11-15 古野電気株式会社 自動検査装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07210424A (ja) * 1994-01-14 1995-08-11 Toshiba Corp ソフトウェアテスト支援システム
JP2012038162A (ja) * 2010-08-09 2012-02-23 Ricoh Co Ltd 自動テストツール・プログラム及び自動テスト方法
JP5404721B2 (ja) * 2011-09-08 2014-02-05 日本電信電話株式会社 シナリオテストのテスト項目生成装置及び方法及びプログラム

Also Published As

Publication number Publication date
JP2017004208A (ja) 2017-01-05

Similar Documents

Publication Publication Date Title
US7685260B2 (en) Method for analyzing state transition in web page
US10324828B2 (en) Generating annotated screenshots based on automated tests
US9342237B2 (en) Automated testing of gesture-based applications
US9235640B2 (en) Logging browser data
CA2684822C (en) Data transformation based on a technical design document
JP5500259B2 (ja) 動的なWebアプリケーションのクライアント層の検証
Casteleyn et al. Ten years of rich internet applications: A systematic mapping study, and beyond
JP4395761B2 (ja) プログラムテスト支援装置およびその方法
US20190303269A1 (en) Methods and systems for testing visual aspects of a web page
JP2008117093A (ja) ユーザ操作記録・再現方法及び装置
WO2016131311A1 (zh) 一种浏览器兼容方法及浏览器
US20150227276A1 (en) Method and system for providing an interactive user guide on a webpage
US9648139B2 (en) Inserting server-side breakpoints requested by remote development clients
JP2011002870A (ja) ウェブアプリケーションの操作性評価・改善方法およびウェブシステム
US20160004676A1 (en) Displaying web pages
JP4846832B2 (ja) Webページの表示方法、計算機システム及びプログラム
CN106776638A (zh) 数据库操作方法和装置
US20170161181A1 (en) Testing support system, and testing support method
US20160034378A1 (en) Method and system for testing page link addresses
JP2016018233A (ja) スクリプトのキャッシュ方法及びそれを適用した情報処理装置
US20130326466A1 (en) Human Readable Software Program Test Step
US9104573B1 (en) Providing relevant diagnostic information using ontology rules
JP6426535B2 (ja) テスト支援装置、及びテスト支援方法
JP2012145970A (ja) ポートレット化支援システム、装置、方法及びプログラム
CN114238733A (zh) 关键信息提取方法及装置、计算机存储介质、电子设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180814

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180919

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181025

R150 Certificate of patent or registration of utility model

Ref document number: 6426535

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150