JPWO2012014284A1 - テストシナリオ生成方法、テストシナリオ生成システム、及び、テストシナリオ生成プログラム - Google Patents
テストシナリオ生成方法、テストシナリオ生成システム、及び、テストシナリオ生成プログラム Download PDFInfo
- Publication number
- JPWO2012014284A1 JPWO2012014284A1 JP2012526233A JP2012526233A JPWO2012014284A1 JP WO2012014284 A1 JPWO2012014284 A1 JP WO2012014284A1 JP 2012526233 A JP2012526233 A JP 2012526233A JP 2012526233 A JP2012526233 A JP 2012526233A JP WO2012014284 A1 JPWO2012014284 A1 JP WO2012014284A1
- Authority
- JP
- Japan
- Prior art keywords
- web content
- test scenario
- test
- test case
- computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
計算機は、WebコンテンツとWebコンテンツを操作するためのテストシナリオとを保持し、更新前の第1のWebコンテンツと更新後の第2のWebコンテンツとの共通部分と差部分とを抽出し、第1のWebコンテンツを操作するための第1のテストシナリオのうち、共通部分に対応するテストシナリオを抽出し、抽出された共通部分に対応するテストシナリオと、抽出された差部分に対応する新たに生成されたテストシナリオとを結合することによって、第2のWebコンテンツを操作するための第2のテストシナリオを生成する。
Description
本発明は、テストシナリオ生成方法に関し、特にWebコンテンツをテストするためのテストシナリオを生成する方法に関する。
近年、様々なサービスが、Webアプリケーションによって実現されている。Webアプリケーションによって提供されるサービスは、このWebブラウザのみで利用できるという便利さを持つため、B2B(Business to Business)、B2C(Business to Consumer)など、多くのシーンで利用されている。
この様な背景から、類似のサービスがWebアプリケーションによって数多く提供され、サービス間の競争が激しくなっている。そのため、Webアプリケーションを早期に開発し、いち早く公開することが重要になっており、このため、Webアプリケーションの開発において多くの時間を要するテスト工程を自動的に行うことによって期間を短縮するための技術が求められている。
このようなテストに関する従来技術には、Webブラウザ又はテストを行うマシンに、テストを自動的に行うソフトウェアをインストールし、さらに、テストの内容が含まれるスクリプトファイルを、プログラミングすることによって最初から作成するという方法がある。さらに、作成されたスクリプトファイルは、ソフトウェアがインストールされたWebブラウザ又はテストを行うマシンによって実行される。
しかし、この従来技術には、全てのテストの内容が人間の手によって作成されるため、失念等によって、実施する必要のあるテストケースをすべて挙げることができない場合がある。この場合において、テストを十分に実施することなくWebアプリケーションが公開され、問題が発生するという課題がある。また、テストの結果が、Webブラウザ上でテスト実施者が目視できるように表示されず、テキストベースによるログで出力されるといった課題があった。
さらに、Webアプリケーションのうちの、更に多くのツールは、Webブラウザ上で行われる操作の過程のうち、サーバ側に送られるリクエストをテストしているものである。このため、Webブラウザ上で、最終的にどのように表示されるのかを確認するテストには、Webブラウザ上に表示されるGUIを人の手で操作し、出力画面を目視で確認するという方法が一般的に用いられる。
また、特許文献1には、Webブラウザ上で表示されるGUIとは異なる、あるOS上で動作するGUIのソフトウェアを自動的に操作し、テストする技術が開示されている。特許文献1に開示される技術によれば、GUI画面を示すファイルを予め書いておき、GUI画面にテストを自動で行えるスクリプトファイルを作成することができる。
しかし、特許文献1に開示される技術には、OS上で直接動作するGUIのソフトウェアに対して適用できるが、Webブラウザ上で動作するGUIに対しては適用することができないという課題がある。またテスト時にどのような操作が行われているのかを目で確認することができないという課題もある。
更に、特許文献2には、Webブラウザ上で行った操作を記録及び再生する技術が開示されている。特許文献2に開示される技術によれば、Webブラウザ上にJavaScriptを用いたプログラムを挿入することによって、Webブラウザ上で行った操作を記録及び再生することができる。ただし、WebブラウザのGUIに対するテストを最初から実行する必要があり、テストの結果を目で確認することはできるが、テスト工程を短縮することはできない。
本発明が解決しようとする課題は、以下の2点である。
一つ目の課題は、既に公開されている既存のWebコンテンツを用いることによって、新しいWebコンテンツを開発する際のテスト工程を短縮させることである。従来技術では、既存のWebコンテンツをテストした際に用いた、自動的にテストするためのスクリプトファイルを、新しいWebコンテンツをテストするために、人の手によって再編集していた。このため、スクリプトファイルを作成するためのテスト工程が長期間になるという課題がある。
二つ目の課題は、Webコンテンツに対するテストの漏れを防ぐことである。テストで実施される観点は三つ(正常、異常、及び、境界値条件)ある。Webコンテンツには数多くの要素(例えば、GUIにおけるフォーム)が使用されており、テスト実施者は、個々の要素に対する正常、異常、及び、境界値条件のうち、一つ、又は少なくとも二つを組み合わせ、Webコンテンツに対するテストケースを生成する。そして、テスト実施者は、生成された個々のテストケースに対応する、スクリプトファイルを生成する。
このため一般的に公開されるWebコンテンツには、数多くのテストケースが存在するため、これらの一般的に公開されるWebコンテンツから導出されるテストケースには、適切に挙げられないテストケースが存在しやすい。この結果、新たなWebコンテンツ品質が、テスト後においても低いという課題がある。
本発明の代表的な一形態によると、Webコンテンツと、前記Webコンテンツを操作するためのテストシナリオとを、記憶媒体に保持する計算機における、テストシナリオ生成方法であって、前記計算機が、前記記憶媒体に更新前の第1のWebコンテンツと、更新後の第2のWebコンテンツとの共通部分と差部分とを抽出し、前記計算機が、前記第1のWebコンテンツを操作するための第1の前記テストシナリオのうち、前記共通部分に対応する前記テストシナリオを、前記第1のテストシナリオが格納される記憶媒体から抽出し、前記計算機が、前記抽出された共通部分に対応するテストシナリオと、前記抽出された差部分に対応する新たに生成されたテストシナリオとを結合することによって、前記第2のWebコンテンツを操作するための第2のテストシナリオを生成する。
本発明の一実施形態によると、既存のWebコンテンツに基づいて作成されたWebコンテンツの開発に要するテスト工数を削減し、かつ、作成されたWebコンテンツの品質を向上させる。
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
図1Aは、本発明の実施形態のWeb画面のテストケース自動生成システムの構成を示すブロック図である。
本発明の実施形態のテストケース自動生成システムは、クライアント装置200、サーバ装置10、及び、ネットワーク190を備える。クライアント装置200は、テスト実施者が使用する装置である。サーバ装置10は、クライアント装置200から送られる要求に従って、Web画面のテストケースを自動生成する。クライアント装置200及びサーバ装置10は、ネットワーク190を介して接続された計算機システムに含まれる。
クライアント装置200は、通信インタフェース210を介してネットワーク190に接続され、サーバ装置10は、通信インタフェース180を介してネットワーク190に接続される。ネットワーク190は、データを転送可能な通信路であり、TCP/IPを用いたLAN(ローカルエリアネットワーク)、イーサネット、インターネット、又は、無線通信ネットワーク等でもよい。
(クライアント装置200の構成)
クライアント装置200は、CPU(中央処理演算装置)220、主記憶装置(メモリ)240、入出力装置230、通信インタフェース210及び補助記憶装置250を備える計算機である。クライアント装置200に備わる各要素は、内部バスによって接続される。
クライアント装置200は、CPU(中央処理演算装置)220、主記憶装置(メモリ)240、入出力装置230、通信インタフェース210及び補助記憶装置250を備える計算機である。クライアント装置200に備わる各要素は、内部バスによって接続される。
CPU220は、主記憶装置240に保持されるプログラムを実行する演算装置である。補助記憶装置250は、プログラムの実行に伴って生成されるデータ、又は、プログラムに使用されるデータを保持する。また、入出力装置230は、ユーザインタフェースを提供するキーボード、マウス又は表示装置等の装置である。
図1Bは、本発明の実施形態のクライアント装置200の主記憶装置240に含まれるプログラムを示すブロック図である。
主記憶装置240は、Webブラウザ(Webコンテンツ表示部)260、操作記録/操作再生スクリプト部270、及び、テストケース修正スクリプト部280を保持する。CPU220は、主記憶装置240に格納されたWebブラウザ260、操作記録/操作再生スクリプト部270、テストケース修正スクリプト部280のプログラムを実行する演算装置である。
図1Cは、本発明の実施形態のクライアント装置200に備わる補助記憶装置250を示すブロック図である。
補助記憶装置250は、前述のWebコンテンツ290及び操作ログ(スクリプトファイル)300を保持する記憶装置である。
Webブラウザ260は、サーバ装置10から送信され、クライアント装置200によって受信されたコンテンツデータを、表示装置に出力する機能を有する。受信されたコンテンツデータは、補助記憶装置250に保持されるWebコンテンツ290に格納される。
操作記録/操作再生スクリプト部270は、サーバ装置10から送信され、クライアント装置200によって受信されたコンテンツデータに含まれるスクリプトファイルをテスト実施者が実行する際に、テスト実施者によってWebブラウザ260上で行われた操作を、記録及び再生する機能並びにサーバ装置10から操作ログ300を取得及び記録する機能を有する。なお、本実施形態では、スクリプトファイルとしてJavaスクリプトファイルを適用する。
テストケース修正スクリプト部280は、サーバ装置10から送信され、クライアント装置200によって受信された後述の操作ログ150を修正する機能を有する。また、テストケース修正スクリプト部280は、テストケース修正スクリプト部280によって修正された操作ログ150を、補助記憶装置250に保持される操作ログ300に格納する機能と、サーバ装置10へ操作ログ300を送信する機能とを有する。
(サーバ装置10の構成)
サーバ装置10は、CPU160、主記憶装置20、補助記憶装置30、補助記憶装置40、入出力装置170及び通信インタフェース180を備える計算機である。サーバ装置10が備える各要素は、内部バスによって接続される。CPU160は、主記憶装置20に保持されるプログラムを実行する演算装置である。
サーバ装置10は、CPU160、主記憶装置20、補助記憶装置30、補助記憶装置40、入出力装置170及び通信インタフェース180を備える計算機である。サーバ装置10が備える各要素は、内部バスによって接続される。CPU160は、主記憶装置20に保持されるプログラムを実行する演算装置である。
図1Dは、本発明の実施形態のサーバ装置10に備わる主記憶装置20を示すブロック図である。
主記憶装置20は、操作記録/操作再生スクリプト埋込部50、テストケース自動生成部60、アプリケーションサーバ部70及びHTTPサーバ部80などのプログラムを保持する。また、主記憶装置20は、一時的にデータを記憶できる記憶領域を持つ。
図1Eは、本発明の実施形態のサーバ装置10に備わる補助記憶装置30を示すブロック図である。
補助記憶装置30は、Webコンテンツ110、操作記録スクリプト120、操作再生スクリプト130、テストケース修正スクリプト90及びテストケース定義ファイル100を保持する記憶媒体である。
Webコンテンツ110とは、例えば、HTML(Hyper Text Markup Language)によって記載されるドキュメントファイルである。Webコンテンツ110によって、テスト実施者が操作可能な画面がWebブラウザ260に表示される。
操作記録スクリプト120とは、例えば、Javaスクリプトによって記載されるドキュメントファイルである。操作記録スクリプト120は、Webブラウザ260上で行われる操作を、クライアント装置200の補助記憶装置250に操作ログ300として格納する機能を有する。また、Webブラウザ260上で行われる操作を、サーバ装置10の補助記憶装置40に保持される操作ログ150に格納する機能を有する。
操作再生スクリプト130とは、例えば、Javaスクリプトによって記載されるドキュメントファイルである。操作再生スクリプト130は、サーバ装置10の補助記憶装置40が保持する操作ログ150の内容を、クライアント装置200のWebブラウザ260において再生する機能を有する。
テストケース修正スクリプト90とは、Javaスクリプトによって記載されるドキュメントファイルである。テストケース修正スクリプト90は、クライアント装置200に備わる補助記憶装置250が保持する操作ログ300、又は、サーバ装置10によって送られる操作ログ150を修正する機能を有する。また、修正した操作ログ300又は操作ログ150を、サーバ装置10の操作ログ300へ格納する機能を有する。
図1Fは、本発明の実施形態のサーバ装置10に備わる補助記憶装置40を示すブロック図である。
補助記憶装置40は、Webコンテンツ140、及び、操作ログ(スクリプトファイル)150を保持する記憶媒体である。本実施形態の補助記憶装置40は、データベースによってデータを保持する。
Webコンテンツ140とは、Webブラウザ260における操作を記録されたWebコンテンツを示す。Webコンテンツ140は、補助記憶装置40に文字列情報として格納される。操作ログ150は、Webコンテンツ140に対応する操作を示す情報である。操作ログ150は、実行可能なスクリプトファイルである。
Webコンテンツ140と操作ログ150とは、各々対応しており、Webコンテンツ140には一意の識別子が付加される。
補助記憶装置30に保持されるWebコンテンツ110は、原本であり、補助記憶装置40に保持されるWebコンテンツ140と対応する。テスト実施者は、Webコンテンツ110の内容を更新した後、更新後のWebコンテンツを操作記録又はテストする場合がある。このため、補助記憶装置40に保持されるWebコンテンツ140には、クライアント装置200において操作記録又はテストに用いられたWebコンテンツが格納される。
(Webコンテンツ140及び操作ログ150)
図2は、本発明の実施形態の補助記憶装置40に保持されるWebコンテンツ140の例を示す説明図である。
図2は、本発明の実施形態の補助記憶装置40に保持されるWebコンテンツ140の例を示す説明図である。
Webコンテンツ140は、識別子1310、URL1320、及び、データ1330を含む。識別子1310は、各Webコンテンツ140に一意に付与された識別子である。
URL1320は、Webコンテンツ140を示す名称であり、Webコンテンツ140を格納するリソース(サーバ、フォルダなど)を示す文字列を含んでもよい。データ1330は、Webコンテンツ140の内容であり、具体的なスクリプトが格納される。図2に示すデータ1330は、Webコンテンツ140をhtmlによって記載した場合の例である。
なお、サーバ装置10に備わるWebコンテンツ140とクライアント装置200に備わるWebコンテンツ290とは、同じ内容を含む。
図3は、本発明の実施形態の補助記憶装置40に保持される操作ログ150を示す説明図である。
操作ログ150は、識別子1310、イベント1340、及び、データ1350を含む。操作ログ150に含まれる識別子1310は、Webコンテンツ140に含まれる1310に対応する。同じ識別子1310の行は、同じWebコンテンツ140における操作を示す。
イベント1340は、Webコンテンツ140が実行された際に、Webコンテンツ140に含まれるフォームに行われる操作の内容を示す。データ1350は、イベント1340の対象になるフォーム、又は、入力される値などを含む。例えば、操作ログ150のイベント1340が"onClick"であり、データ1350が"RadioButton"である場合、その操作ログ150は、ラジオボタンをクリックした操作であることを示す。
ここでフォームとは、例えば、WebコンテンツをHTMLによって作成する場合に、Webコンテンツに含まれる、リストボックス、テキストボックス、又は、ダイアログボックスといった、操作の対象を示す。
なお、サーバ装置10に備わる操作ログ150とクライアント装置200に備わる操作ログ300とは、同じ内容を含む。
(アプリケーションサーバ部70及びHTTPサーバ部80)
HTTPサーバ部80は、ネットワーク190を介してクライアント装置200によって送られたHTTPリクエストを受信する。その後、受信したHTTPリクエストに含まれるクライアント装置200からの要求又はデータを抽出し、抽出された要求又はデータをアプリケーションサーバ部70へ送る。
HTTPサーバ部80は、ネットワーク190を介してクライアント装置200によって送られたHTTPリクエストを受信する。その後、受信したHTTPリクエストに含まれるクライアント装置200からの要求又はデータを抽出し、抽出された要求又はデータをアプリケーションサーバ部70へ送る。
また、アプリケーションサーバ部70による処理が完了した後、HTTPサーバ部80は、クライアント装置200から送られたHTTPリクエストに対して、アプリケーションサーバ部70から受信した処理結果が挿入されたHTTPレスポンスを生成し、ネットワーク190を介して、生成されたHTTPレスポンスをクライアント装置200に送る。
アプリケーションサーバ部70は、クライアント装置200によって送られたHTTPリスクエスト(要求)の内容に従って、操作記録/操作再生スクリプト埋込部50、又は、テストケース自動生成部60に要求又はデータを送り、その結果を受信する。
クライアント装置200によって送られた要求が、操作記録及び/又は操作再生を行う処理の要求である場合、又は、操作ログ等を格納する要求である場合、アプリケーションサーバ部70は、操作記録/操作再生スクリプト埋込部50へ要求を渡す。
操作記録/操作再生スクリプト埋込部50は、クライアント装置200から送られた要求が、クライアント装置200においてWebブラウザ260において行われる操作を記録する要求である場合、補助記憶装置30からWebコンテンツ110と操作記録スクリプト120とを取得する。そして、操作記録/操作再生スクリプト埋込部50は、後述の処理を行った後、Webコンテンツ110と操作記録スクリプト120とを、処理の結果としてアプリケーションサーバ部70に送る。
また、操作記録/操作再生スクリプト埋込部50は、クライアント装置200から送られた要求が、クライアント装置200においてWebブラウザ260上で操作を再生する要求である場合、補助記憶装置30に保持される操作再生スクリプト130、及び、補助記憶装置40に保持されるWebコンテンツ140と操作ログ150とを取得する。そして、操作記録/操作再生スクリプト埋込部50は、後述の処理を行った後、取得された操作再生スクリプト130、Webコンテンツ140及び操作ログ150を、処理の結果として、アプリケーションサーバ部70に送る。
クライアント装置200から送られた要求が、テストケースを自動的に生成する要求を含む場合、アプリケーションサーバ部70は、テストケース自動生成部60へ要求を送る。テストケース自動生成部60は、アプリケーションサーバ部70から要求を受信すると、補助記憶装置40に保持されるWebコンテンツ140と操作ログ150とを取得する。
そして、テストケース自動生成部60は、後述の処理を行った後、取得されたWebコンテンツ140と操作ログ150とを、処理の結果としてアプリケーションサーバ部70へ送る。さらに、アプリケーションサーバ部70は、HTTPサーバ部80を介して、クライアント装置200へ取得されたWebコンテンツ140と操作ログ150とを送る。
本実施形態のアプリケーションサーバ部70及びHTTPサーバ部80は、常に前述のように、クライアント装置200から送信される要求を操作記録/操作再生スクリプト埋込部50又はテストケース自動生成部60に送り、操作記録/操作再生スクリプト埋込部50又はテストケース自動生成部60からの結果をクライアント装置200に送る。
(テストケース自動生成の処理概要)
以下に、本実施形態のシステムのテストケース自動生成処理の概要を示す。
以下に、本実施形態のシステムのテストケース自動生成処理の概要を示す。
テストケースを自動的に生成するため、本実施形態のシステムは、Webコンテンツ290がクライアント装置200において実行された際に、テスト実施者が行ったテストに関する操作ログ300を記録し、サーバ装置10の補助記憶装置40にあらかじめ保持する。
そして、クライアント装置200が更新後のWebコンテンツ290のテストケースを生成する要求を、サーバ装置10に送信した際に、本実施形態のサーバ装置10は、あらかじめ保持されていた操作ログ150に基づいて、新たなテストケースを生成し、さらに、クライアント装置200に送る。クライアント装置200は、送られたテストケースを必要に応じて修正し、修正されたテストケースと対応するWebコンテンツ290(Webコンテンツ140)とを登録する要求を、サーバ装置10に送る。
さらに、クライアント装置200は、操作の自動再生をサーバ装置10に要求する。サーバ装置10は、クライアント装置200からの要求に従って、Webコンテンツ140(Webコンテンツ290)に対応する操作ログ150をクライアント装置200に送信する。クライアント装置200は、サーバ装置10によって送信された操作ログ150に基づいて、Webコンテンツ290を自動再生する。これによって、本実施形態のシステムは、自動的に生成されたテストケースを、実行することができる。
以下において、操作の記録処理、テストケースの自動生成処理、及び、操作の再生処理を説明する。
(操作の記録処理)
以下に、本実施形態のシステムのWebブラウザ260における操作を記録する処理を示す。
以下に、本実施形態のシステムのWebブラウザ260における操作を記録する処理を示す。
図4は、本発明の実施形態のWebブラウザ260において行われた操作を記録する処理、及び、サーバ装置10に記録結果を格納する処理を示すシーケンス図である。
テスト実施者は、特定のWebコンテンツのテストケースを生成する場合、まず、WebコンテンツをWebブラウザ260において実行した際の操作を記録する。テスト実施者は、クライアント装置200によって、特定のWebコンテンツと、操作を記録する要求とをサーバ装置10に送る(310)。
なお、操作を記録されるWebコンテンツが、あらかじめ補助記憶装置30のWebコンテンツ110に格納されている場合、クライアント装置200は、シーケンス310において、操作を記録されるWebコンテンツを示す情報(ファイル名、識別子等)をサーバ装置10に送ってもよい。また、操作を記録されるWebコンテンツが、クライアント装置200の補助記憶装置250に格納されていない場合、シーケンス310において操作を記録されるWebコンテンツを、補助記憶装置250に格納してもよい。
サーバ装置10は、特定のWebコンテンツ又はWebコンテンツを示す情報と、操作を記録する要求とを、クライアント装置200から、前述の通り、HTTPサーバ部80及びアプリケーションサーバ部70によって受信する。そして、クライアント装置200から送信された要求が、操作を記録する要求であるため、アプリケーションサーバ部70は、受信した要求等を、操作記録/操作再生スクリプト埋込部50に送る。
その後(320)、操作記録/操作再生スクリプト埋込部50は、送られたWebコンテンツに対応するWebコンテンツ110が補助記憶装置30に保持される場合、クライアント装置200から送られたWebコンテンツ又はWebコンテンツを示す情報に対応するWebコンテンツ110を取得する(330)。
さらに、サーバ装置10の操作記録/操作再生スクリプト埋込部50は、補助記憶装置30に保持される操作記録スクリプト120を取得する(340)。操作記録/操作再生スクリプト埋込部50は、操作を記録されるWebコンテンツ110と、操作記録スクリプト120とを取得した後、操作記録/操作再生スクリプト埋込部50によって、取得されたWebコンテンツ110に操作記録スクリプト120を付加する。
さらに操作記録/操作再生スクリプト埋込部50は、クライアント装置200によって送信されたWebコンテンツ、又は、補助記憶装置30から取得されたWebコンテンツ110に一意な識別子を付与し、補助記憶装置40のWebコンテンツ140に格納する(350)。
なお、シーケンス350において付与される識別子は、同じファイル名を持つWebコンテンツ140に一意に付与されてもよい。すなわち、識別子は、バージョンが異なるが同じ名称のWebコンテンツ140に一意に付与されてもよいし、Webコンテンツ140のバージョン毎に付与されてよい。
ただし、バージョンが異なるが同じ名称のWebコンテンツ140に一意に識別子を付与する場合、サーバ装置10には、管理者等によって、クライアント装置200に送るWebコンテンツ140のバージョンをあらかじめ設定される。例えば、サーバ装置10には、常に最新のバージョンのWebコンテンツ140を、クライアント装置200に送信するように、あらかじめ設定される。
シーケンス330及び340によって、サーバ装置10は、操作を記録されるWebコンテンツ140と、操作記録スクリプト120とを、あわせてクライアント装置200に送信することができる。
サーバ装置10は、シーケンス330、340及び350の後、操作を記録されるWebコンテンツ140と、操作記録スクリプト120と、Webコンテンツ140を一意に示す識別子とを、クライアント装置200に送信する。なお、サーバ装置10は、前述の通り、アプリケーションサーバ部70及びHTTPサーバ部80を介して、操作を記録されるWebコンテンツ140等を、クライアント装置200に送信する。
クライアント装置200は、サーバ装置10からWebコンテンツ140と、操作記録スクリプト120と、Webコンテンツ140を一意に示す識別子とを受信した後、サーバ装置10から送られたWebコンテンツ140を、受信した識別子とともに、補助記憶装置250のWebコンテンツ290に格納する。
そしてクライアント装置200は、操作を記録されるWebコンテンツ290を、Webブラウザ260によって実行する(360)。そして操作記録/操作再生スクリプト部270は、テスト実施者がWebコンテンツ290をテストする際に行う操作を、操作記録スクリプト120を実行することによって記録する(370)。クライアント装置200は、シーケンス370において取得された操作ログを、操作ログ300に格納する。
クライアント装置200は、シーケンス370において取得された操作ログ300と、Webコンテンツ290の識別子と、操作ログ300の格納の要求とを、サーバ装置10に送信する(380)。
サーバ装置10は、クライアント装置200から操作ログ300と、Webコンテンツ290の識別子と、操作ログ300の格納の要求を、前述の通り、アプリケーションサーバ部70及びHTTPサーバ部80を介して、受信する。その後(390)、操作記録/操作再生スクリプト埋込部50は、受信した操作ログ300を、同じく受信したWebコンテンツ290の識別子に基づいて、補助記憶装置40の操作ログ150に格納する(400)。具体的には、受信したWebコンテンツ290の識別子が示すWebコンテンツ140に対応する操作ログ150に、受信した操作ログ300を格納する。
その後、サーバ装置10は、処理結果をクライアント装置200に送信する。処理結果には、操作を記録したWebコンテンツ290の識別子と、操作ログ300を格納した旨が含まれる。これによって、補助記憶装置250のWebコンテンツ290及び操作ログ300と、補助記憶装置40のWebコンテンツ140及び操作ログ150とは、同期される。
図4に示す処理のとおり、更新前のWebコンテンツの操作ログ150をあらかじめ取得することによって、テスト実施者が更新後のWebコンテンツのテストケースを新たに作成する場合、クライアント装置200は、基準となる操作ログ150を取得することができる。
図5は、本発明の実施形態の操作記録をするWebコンテンツを取得する処理を示すフローチャートである。
図5は、図4に示すステップ320を示すフローチャートである。図5に示す処理によれば、クライアント装置200から記録を要求されたWebコンテンツ140に、操作記録スクリプト120を、付加することができる。
図4に示すシーケンス310の後、特定のWebコンテンツ又はWebコンテンツを示す情報と、操作を記録する要求とをクライアント装置200から受信した後、サーバ装置10の操作記録/操作再生スクリプト埋込部50は、図5に示す処理を開始する(610)。操作記録/操作再生スクリプト埋込部50は、クライアント装置200から送られたWebコンテンツ、又は、Webコンテンツを示す情報を用いて、補助記憶装置30に保持されるWebコンテンツ110のうち、クライアント装置200から要求されたWebコンテンツに対応するWebコンテンツ110を取得する(620)。
ステップ620の後、操作記録/操作再生スクリプト埋込部50は、取得されたWebコンテンツ110に、同じく補助記憶装置30から取得された操作記録スクリプト120を付加する(630)。そして操作記録/操作再生スクリプト埋込部50は、操作を記録されるWebコンテンツ110に、一意な識別子を付与する(640)。そして操作記録/操作再生スクリプト埋込部50は、識別子を付与されたWebコンテンツ110を、補助記憶装置40に保持されるWebコンテンツ140に格納する(650)。
サーバ装置10は、ステップ650の後、操作を記録されるWebコンテンツ110をクライアント装置200へ送り、処理を終了する(660)。
図6は、本発明の実施形態のWebコンテンツ290の実行時に操作を記録する処理を示すフローチャートである。
図6は、図4に示すシーケンス370を示すフローチャートである。ここでは、Webブラウザ260において実行されたWebコンテンツに、テスト実施者が行った操作に対応する操作ログ300を記録する処理を示す。
図4のシーケンス370において、Webコンテンツ290が実行されると、図6に示す処理が開始される(670)。まず、テスト実施者が、実行されたWebコンテンツ290を操作すると(680)、操作記録/操作再生スクリプト部270が操作記録スクリプト120を実行することによって、操作内容を操作ログ(スクリプトファイル)300に記録する(690)。
具体的には、操作記録/操作再生スクリプト部270は、操作記録スクリプト120によって、Webコンテンツ290が実行中、Webコンテンツ290が操作されているか否かを判定する。そして、Webコンテンツ290が操作された場合、操作記録/操作再生スクリプト部270は、その操作を操作ログ300に記録する。
また、操作記録/操作再生スクリプト部270は、実行可能なスクリプトファイルとして操作内容を操作ログ300に記録する。これは、操作記録/操作再生スクリプト部270によって記録された操作ログ300を、クライアント装置200が実行することによって、操作内容を再生できるようにするためである。
そして、テスト実施者は、Webコンテンツ290への操作が終了したか否かを判定し(700)、操作が終了していない場合、ステップ680に戻る。そして、操作が終了した場合、処理を終了する(710)。
図7は、本発明の実施形態の操作と操作ログ300との関係を示す説明図である。
操作記録/操作再生スクリプト部270は、図4に示すシーケンス370において、Webコンテンツ290が実行されたWebブラウザ260にテスト実施者が行う操作を、操作ログ300に記録する。
図7は、WebコンテンツによってWebブラウザ260に表示される画面を示す。図7に示すWebブラウザ260に表示される画面は、名前領域1281、性別領域1282、職業領域1283、及び、登録領域1284を含む。名前領域1281は、テキストボックスのフォームであり、性別領域1282はラジオボタンのフォームであり、職業領域1283はリストボックスの領域であり、登録領域1284はボタンのフォームである。
例えば、テスト実施者が、名前領域1281のテキストボックスに「JOHN SMITH」と入力した場合(操作A)、操作記録/操作再生スクリプト部270は、操作ログ300のイベント1340に"changed"を記録し、データ1350に"TextBox#1:JOHN SMITH"を記録する。
さらに例えば、テスト実施者が、性別領域1282のラジオボタンのうち、"男性"へカーソルを動かし、"男性"を選択した場合(操作B)、操作記録/操作再生スクリプト部270は、イベント1340に"onClick"を記録し、データ1350に"RadioButton"を記録する。また、操作Bにおいて、イベント1340に"changed"を記録し、データ1350に"RadioButton#1:check"を記録する。
図8は、本発明の実施形態のサーバ装置10に操作ログを格納する処理を示すフローチャートである。
図8は、図4のシーケンス390に示す処理である。また、クライアント装置200によって送られた操作ログ300を、補助記憶装置40に保持される操作ログ150に格納する処理である。
サーバ装置10は、クライアント装置200によって操作ログ300と、Webコンテンツ290を示す識別子と、操作ログ300の格納の要求とを受信した後、図8に示す処理を開始する(720)。720の後、サーバ装置10に備わる操作記録/操作再生スクリプト埋込部50は、クライアント装置200から送られた操作ログ300、及び、Webコンテンツ290を示す識別子を取得し(730、740)、取得した識別子に対応するWebコンテンツ140と対応するように、操作ログ300を操作ログ150に格納する。
(テストケースの自動生成処理)
(概要)
テスト実施者は、クライアント装置200に備わるWebブラウザ260を介して、テストケースの自動生成の要求、及び、テストをするWebコンテンツを示す情報(IDなど)をサーバ装置10に送信する。サーバ装置10のHTTPサーバ部80は、テスト実施者から送られた要求及びWebコンテンツを示す情報を受信する。
(概要)
テスト実施者は、クライアント装置200に備わるWebブラウザ260を介して、テストケースの自動生成の要求、及び、テストをするWebコンテンツを示す情報(IDなど)をサーバ装置10に送信する。サーバ装置10のHTTPサーバ部80は、テスト実施者から送られた要求及びWebコンテンツを示す情報を受信する。
テスト実施者から送られた要求が、HTTPサーバ部80から、アプリケーションサーバ部70へ送られ、さらに、アプリケーションサーバ部70からテストケース自動生成部60へ送られた後、テストケース自動生成部60は、補助記憶装置40に保持されるWebコンテンツ140及び操作ログ150を取得する。そして、テストケース自動生成部60は、取得されたWebコンテンツ140及び操作ログ150に基づいて、テストケースを自動的に生成し、さらに、各テストケースに対応するスクリプトファイルを生成する。そして、生成されたスクリプトファイルを、クライアント装置200へ生成したスクリプトファイルを送信する。
その後テスト実施者は、クライアント装置200のWebブラウザ260を用いて、サーバ装置10から送られた各テストケースに対応するスクリプトファイルを修正する。そして、クライアント装置200は、テスト実施者によって修正されたスクリプトファイル(操作ログ300)をサーバ装置10へ送信すると共に、送信する操作ログ300をサーバ装置10に備わる補助記憶装置40へ格納する要求を送信する。
サーバ装置10は、クライアント装置200によって送られた補助記憶装置40へのスクリプトファイル(操作ログ300)の登録要求を受け、テストケース自動生成部60によって、スクリプトファイル(操作ログ300)を補助記憶装置40に保持される操作ログ150に格納する。また、テストケース自動生成部60によって、テストケースが自動的に生成されたWebコンテンツ110を、補助記憶装置40に保持されるWebコンテンツ140に格納する。
図9は、本発明の実施形態の更新したWebコンテンツに対するテストケースを自動生成する処理を示すシーケンス図である。以下に詳細を説明する。
図9に示す処理は、テスト実施者が、Webコンテンツを更新し、更新されたWebコンテンツの新たなテストケースを生成する場合、又は、新規のWebコンテンツに対応する新たなテストケースを生成する場合などに実施される。
テスト実施者は、テストケースを生成されるWebコンテンツを選定し、選定したWebコンテンツ及びWebコンテンツを示す情報と、選定したWebコンテンツのテストケースを自動的に生成(自動生成)する要求とを、クライアント装置200に入力する(480)。
その後、クライアント装置200は、Webコンテンツと、入力されたWebコンテンツを示す情報と、テストケースを自動生成する要求とを、サーバ装置10に送信する(490)。
なお、シーケンス490においてサーバ装置10に送られる情報のうち、Webコンテンツを示す情報は、Webコンテンツを示すファイル名、URL名、又は、識別子のいずれであってもよい。すなわち、後述するコンテンツ解析処理500において、更新前のWebコンテンツ140のうち最新を常に抽出する場合、Webコンテンツを示す情報は、ファイル名又はURL名であってよい。また、後述するコンテンツ解析処理500において、更新前のWebコンテンツ140のうち特定のバージョンのWebコンテンツ140を抽出する場合、Webコンテンツを示す情報には、識別子を用いてよい。
サーバ装置10は、クライアント装置200によって送られた、テストケースを自動生成されるWebコンテンツ、Webコンテンツを示す情報、及び、テストケースを自動生成する要求を、前述の通り、HTTPサーバ部80及びアプリケーションサーバ部70を介して、受信する。その後、サーバ装置10のテストケース自動生成部60は、コンテンツ解析処理500を実行する。
なお、以下に示すシーケンス510、520、530及び550の処理は、サーバ装置10によってテストケースを生成されるWebコンテンツがあらかじめ保持される場合、実行される。すなわち、新規のWebコンテンツにテストケースが生成される場合、実行されない。
サーバ装置10は、テストケース自動生成部60によってコンテンツ解析処理500を実行する。コンテンツ解析処理500において、テストケース自動生成部60は、送られてきたWebコンテンツを示す情報に基づいて、Webコンテンツ140のうち、送られてきたWebコンテンツの更新前のWebコンテンツ140を取得する(520)。
サーバ装置10は、更新後のWebコンテンツに対応する各テストケースの操作ログを生成するために、基準となる操作ログを取得するため、シーケンス420において取得されたWebコンテンツ140に対応する操作ログ150を取得する(550)。
また、更新後のWebコンテンツと、更新前のWebコンテンツ140とを比較し、差分を抽出する(510)。そして、更新後のWebコンテンツのうち、更新前のWebコンテンツ140から変更又は追加された部分を抽出し、Webコンテンツとして生成する(530)。
さらに、サーバ装置10はコンテンツ解析処理500において、Webコンテンツ140が、バージョンごとに識別子を付与されている場合、クライアント装置から送られてきたWebコンテンツ、すなわち更新後のWebコンテンツに一意な識別子を付与する。
コンテンツ解析処理500の後、サーバ装置10のテストケース自動生成部60は、コンテンツ解析処理500において取得されたWebコンテンツとWebコンテンツ140との比較の結果及び操作ログを用い、更新後のWebコンテンツに対するテストケースを生成する。また、各テストケースに対する操作ログを生成する(540)。また、テストケース自動生成部60は、シーケンス540において、補助記憶装置30に保持されるテストケース修正スクリプト90を取得する(555)。
ここで、本実施形態のテストケースとは、Webコンテンツ290によってWebブラウザ260に表示される各フォームに、テストにおいて入力される値を示す情報である。テストケースには、各フォームに入力された場合に正常な結果を得られる値(正常値)、異常な結果を得られる値(異常値)、正常値と異常値との間の境界値、又は、境界値の前後の値などが、含まれる。
また、操作ログとは、前述のとおり、WebコンテンツがWebブラウザ260に表示する各フォームへの操作を示すスクリプトファイルである。すなわち、本実施形態の操作ログは、テストケースに基づいて作成された場合、テストにおいて実行されるスクリプトファイルになる。
本実施形態において、操作ログは、テストケース及びWebコンテンツによって生成される。すなわち、テストケースも操作ログも、同じテストシナリオの内容を保持する。このため、補助記憶装置40及び補助記憶装置250には、操作ログ150及び操作ログ300の代わりに、テストケースが格納され、テスト又は操作の再生等を行う際に、テストケースから操作ログが生成されてもよい。
サーバ装置10のテストケース自動生成部60は、シーケンス540において、生成されたテストケースに、テストケース修正スクリプト90と、コンテンツ解析処理500において生成された識別子などのWebコンテンツを示す情報とを付加し、前述の通り、アプリケーションサーバ部70及びHTTPサーバ部80を介して、クライアント装置200へ送信する。
なお、シーケンス540においてサーバ装置10は、テストケースとともに、又は、テストケースの代わりに、生成された操作ログをクライアント装置200に送ってもよい。すなわち、操作ログがクライアント装置200に送られる場合、クライアント装置200は、後述のシーケンス560において、送られた操作ログに含まれるテストケースを抽出し、抽出されたテストケースを修正してもよい。
クライアント装置200が、生成されたテストケースとテストケース修正スクリプト90とWebコンテンツを示す情報とを受信した後、クライアント装置200は、テストケース修正スクリプト部280にテストケース修正スクリプト90を実行させる。
そして、テストケース修正スクリプト部280は、Webブラウザ260を用いて、テストケースを修正するための画面を表示することによって、テスト実施者に、サーバ装置10から送られたテストケースを確認及び修正させる(560)。このように、サーバ装置10から送られたテストケースをテスト実施者が任意に変更することによって、本実施形態のシステムは、テストを実施する環境に従った適切なテストケースを生成することができる。
その後クライアント装置200は、修正されたテストケースをサーバ装置10に格納するため、確認及び修正されたテストケースと、テストケースに対応するWebコンテンツを示す情報とをサーバ装置10に送信する(570)。
サーバ装置10が、前述の通り、HTTPサーバ部80及びアプリケーションサーバ部70を介して、修正されたテストケースをクライアント装置200から受信した後(580)、テストケース自動生成部60は、修正されたテストケースから操作ログを生成する。そして、生成された操作ログを、補助記憶装置40の操作ログ150に格納する(590)。そして、コンテンツ解析処理500において受信した更新後のWebコンテンツを、補助記憶装置40に保持されるWebコンテンツ140に格納する(600)。
なお、コンテンツ解析処理500においてWebコンテンツを示す識別子が付与されている場合、シーケンス590及び600において、Webコンテンツを示す識別子をキーとして操作ログ及びWebコンテンツを補助記憶装置40へ格納する。
さらにシーケンス600の後、サーバ装置10は、修正されたテストケースから生成された操作ログをクライアント装置200に送信してもよく、さらに、クライアント装置200は、サーバ装置10から送られた操作ログと、更新後のWebコンテンツと、Webコンテンツを示す識別子とを、補助記憶装置250に格納してよい。
図10は、本発明の実施形態のテストケースを生成されるWebコンテンツを、クライアント装置200に入力するための画面を示す説明図である。
図10に示す画面は、Webコンテンツ指定領域1200、参照ボタン1210、識別子指定領域1220、生成ボタン1230、及び、キャンセルボタン1240を含む。テスト実施者は、テストケースを自動生成するWebコンテンツの名称等を、Webコンテンツ指定領域1200に記載する。クライアント装置200に備わるフォルダに、新規又は更新後のWebコンテンツが格納されている場合、参照ボタン1210によって、フォルダ名を取得する。
また、テストケースが生成されるWebコンテンツが、更新によって生成されたWebコンテンツである場合、テスト実施者は、更新前のWebコンテンツの識別子を1220に入力してよい。テスト実施者は、Webコンテンツの識別子として、補助記憶装置250に保持されるWebコンテンツ290に含まれる識別子1310を参照する。これは、Webコンテンツ290に含まれる識別子1310は、図4に示す処理など、サーバ装置10からWebコンテンツの識別子を送られることによって、補助記憶装置40に保持されるWebコンテンツ140の識別子と同期しているためである。
テスト実施者は、Webコンテンツ指定領域1200又は識別子指定領域1220に値を入力し、生成ボタン1230を操作する。これによって、図9に示すシーケンス480が実行される。なお、生成ボタン1230は、クリックなどによって操作される。
図11は、本発明の実施形態のコンテンツ解析処理500を示すフローチャートである。図11は、図9のコンテンツ解析処理500を示す。
シーケンス490において、新規又は更新後のWebコンテンツと、Webコンテンツを示す情報と、テストケースを自動生成する要求とをクライアント装置200によって送られた後、サーバ装置10は、図11に示す処理を開始する(890)。サーバ装置10に備わるテストケース自動生成部60は、クライアント装置200から送られたWebコンテンツに対応する更新前のWebコンテンツ140が、補助記憶装置40に格納されているか否かを判定する(900)。更新前のWebコンテンツ140が、補助記憶装置40に格納されていない場合、クライアント装置200によって送られたWebコンテンツは、新規のWebコンテンツであるため、テストケース自動生成部60は、ステップ960に移行する。
更新される前のバージョンのWebコンテンツ140が、補助記憶装置40に格納されている場合、クライアント装置200によって送られたWebコンテンツは、以前にテストを実施しており、操作ログ150が補助記憶装置40に格納されているため、テストケース自動生成部60は、ステップ910に移行する。テストケース自動生成部60は、補助記憶装置40に保持される、更新前のWebコンテンツ140を取得する(910)。また、補助記憶装置40に保持される、更新される前のバージョンのWebコンテンツ140に対応する操作ログ150を取得する(920)。
なお、ステップ910及び920は、図9に示すシーケンス520及び550に相当する。
ステップ920の後、テストケース自動生成部60は、クライアント装置200によって送られた更新後のWebコンテンツと、ステップ910において取得されたWebコンテンツ140、すなわち更新前のWebコンテンツとの差分を抽出する(930)。テストケース自動生成部60は、ステップ930において、更新後のWebコンテンツのうち、更新前のWebコンテンツから追加又は変更された部分、及び、更新前のWebコンテンツからは削除され、更新後のWebコンテンツにない部分を、差分として各々抽出する。
ステップ930の後、テストケース自動生成部60は、更新前のWebコンテンツと更新後のWebコンテンツとの共通部分を取得し、ステップ920において取得された操作ログ150に基づいて、共通部分に対応する操作ログを生成する(940)。これは、Webコンテンツが共通すれば、対応する操作ログも共通するためである。なお、テストケース自動生成部60は、共通部分に対応する生成された操作ログを、主記憶装置20などに備わる一時記憶領域等に格納する。
ステップ940の後、テストケース自動生成部60は、ステップ930において抽出された差分のうち、更新前のWebコンテンツから追加又は変更された部分を、共通部分に追加するWebコンテンツとして生成する(950)。これは、更新によって新たに操作ログを生成する必要があるWebコンテンツを生成するためである。ステップ940及び950によって、更新前のWebコンテンツから削除された部分は、新たな操作ログを生成する必要があるWebコンテンツに含まれない。
ステップ900、又は、ステップ950の後、テストケース自動生成部60は、追加するWebコンテンツに対応する操作ログを生成するため、追加するWebコンテンツに含まれるフォームを抽出する(960)。
具体的には、ステップ900からステップ960へ直接処理が移行した場合、テストケース自動生成部60はステップ960において、クライアント装置200によって送られた新規のWebコンテンツからフォームを抽出する。また、ステップ950からステップ960へ処理が移行した場合、テストケース自動生成部60はステップ960において、ステップ950において生成された、共通部分に追加するWebコンテンツからフォームを抽出する。
ステップ960の処理によって、テストケース自動生成部60は、操作ログを生成するフォームを、各々分割することができる。ステップ960の後、テストケース自動生成部60は、コンテンツ解析処理500を終了する(970)。
なお、図11に示すステップ930の処理が、図9に示すシーケンス510に相当し、図11に示すステップ940及び950の処理が、図9に示すシーケンス530に相当する。
図12Aは、本発明の実施形態のテストケースを生成する処理を示すフローチャートである。
図12Aは、図9のシーケンス540を示すフローチャートである。
テストケース自動生成部60は、図11に示す処理を終了すると、図12Aに示す処理を開始する(980)。そして、テストケース自動生成部60は、ステップ960において抽出されたフォームのうち、一つのフォームを取得する(990)。
そしてテストケース自動生成部60は、テストケース定義ファイル100に基づいて、ステップ990において取得された一つのフォームに対応するテストケースを生成する(1000)。テストケース定義ファイル100の詳細は、図13において後述する。
ステップ1000の後、テストケース自動生成部60は、ステップ960において抽出されたフォームのうち、ステップ1000の処理が実行されていないフォームがあるか否かを判定する(1080)。ステップ1000の処理が実行されていないフォームがある場合、テストケース自動生成部60は、ステップ990に戻る。
ステップ1080によって、追加又は変更によって更新されたWebコンテンツに対応するテストケースが生成される。
ステップ1000の処理が実行されていないフォームがなく、ステップ960において抽出されたフォームがすべて処理された場合、テストケース自動生成部60は、ステップ1090に移行する。テストケース自動生成部60は、ステップ1090において、更新前のWebコンテンツと更新後のWebコンテンツとの共通部分に対応する操作ログが、主記憶装置20に備わる一時記憶領域に格納されているか否かを判定する。すなわち、図11に示すステップ940において生成されたか否かを判定する。
ステップ1090において、更新前のWebコンテンツと更新後のWebコンテンツとの共通部分に対応する操作ログが、一時記憶領域に格納されていないと判定された場合、更新後のWebコンテンツは、すべて追加又は変更されたWebコンテンツであるため、テストケース自動生成部60は、ステップ1000において生成されたテストケースに対応する操作ログのみを生成し、この結果、更新後のWebコンテンツに対応する操作ログを取得する(1110)。
ステップ1090において、更新前のWebコンテンツと更新後のWebコンテンツとの共通部分に対応する操作ログが、一時記憶領域に格納されていると判定された場合、テストケース自動生成部60は、共通部分に対応する操作ログを、主記憶装置20等に設けられる一時記憶領域から取得する(1100)。
ステップ1100の後、テストケース自動生成部60は、ステップ1000において生成されたテストケースに対応する操作ログを生成する。そして、生成された操作ログを、共通部分に対応する操作ログに結合、すなわち、追加又は挿入することによって、更新後のWebコンテンツに対応する操作ログを生成する(1120)。
ステップ1110又はステップ1120の後、テストケース自動生成部60は、生成された操作ログに対応するテストケースを抽出し、抽出されたテストケースを、クライアント装置200に送信する(1125)。また、テストケース自動生成部60は、ステップ1125において、テストケース修正スクリプト90を補助記憶装置30から取得する。そして、テストケース修正スクリプト90とWebコンテンツを示す情報とを、テストケースに付加し、クライアント装置200に送信する。
ステップ1125の後、図12Aに示す処理を終了する(1130)。
図12Aに示す処理によって、更新後のWebコンテンツに対応するテストケース及び操作ログを生成することができる。
図12Bは、本発明の実施形態のテストケースを生成する処理を示すフローチャートである。図12Bは、図12Aのステップ1000に相当する。
テストケース自動生成部60は、ステップ990の後、図12Bに示す処理を開始する(1001)。テストケース自動生成部60は、まず、ステップ990において取得された一つのフォームの種類を判定する(1005)。
例えば、フォームの種類がテキストボックスである場合、テストケース自動生成部60は、テキストボックスに正常値が入力されるテストケースを生成する(1010)。また、テキストボックスに異常値が入力されるテストケースを生成し(1040)、テキストボックスに境界値が入力されるテストケースを生成する(1070)。
また例えば、フォームの種類がラジオボタンである場合、テストケース自動生成部60は、ラジオボタンに正常値が入力されるテストケースを生成し(1020)、ラジオボタンに異常値が入力されるテストケースを生成する(1050)。
また例えば、フォームの種類がボタンである場合、テストケース自動生成部60は、ボタンに正常値が入力されるテストケースを生成し(1030)、ボタンに異常値が入力されるテストケースを生成する(1060)。
テストケース自動生成部60は、各フォームに対応するテストケースを生成すると、図12Bに示す処理を終了し(1075)、図12Aに示すステップ1080に移行する。
なお、サーバ装置10は、各フォームに対応するテストケースを生成するためのテストケース定義ファイル100を、補助記憶装置30によって保持する。テストケース定義ファイル100には、フォームの種類に従って、生成されるべきテストケースがあらかじめ記載される。図12Bのステップ1000において、テストケース自動生成部60は、テストケース定義ファイル100を参照することによって、各フォームのテストケースを生成する。
図13は、本発明の実施形態のテストケース定義ファイル100を示す説明図である。
テストケース定義ファイル100は、フォーム101、条件102、及び、値103を含む。テストケース定義ファイル100は、テスト実施者又は管理者等によって、あらかじめ作成される。そして、作成されたテストケース定義ファイル100は、サーバ装置10に格納される。
フォーム101は、フォームの種類を示し、例えば、テキストボックス、ラジオボタン、リストボックス、又は、ボタンなどを示す。条件102は、各フォーム101に操作がされた場合、入力されうる値の種類を示す。例えば、フォーム101がテキストボックスである場合、テキストボックスに入力されうる値は、正常値、異常値、又は、境界値のいずれかである。
値103は、各フォーム101の各条件102に相当する、具体的な値である。例えば、本実施形態のテキストボックスは、半角文字が1024文字までを入力することができる。このため、フォーム101がテキストボックスであり、条件102が正常値である場合、値103には、1023文字以下の文字数の値が記載される。
また、フォーム101がテキストボックスであり、条件102が境界値である場合、値103には、1024文字及び1025文字の値が格納される。また、条件102が、異常値である値103には、1026文字以上の値が格納される。
また例えば、本実施形態のラジオボタンは、どのラジオボタンにも指定がなく、ラジオボタンが"Off"を示す場合にエラーを出力する。このため、フォーム101がラジオボタンであり、条件102が正常値である場合、値103には、"On"が格納され、条件102が異常値である場合、値103には、"Off"が格納される。
また例えば、本実施形態のリストボックスは、あらかじめ定められたリストの値(リスト#1、リスト#2)以外が指定された場合にエラーを出力する。このため、フォーム101がリストボックスであり、条件102が正常値である場合、値103には、"リスト#1"、又は、"リスト#2"が格納され、また、条件102が異常値である値103には、"リスト#1"及び"リスト#2"以外の文字列が格納される。
テストケース自動生成部60は、テストケース定義ファイル100を用いて、各フォームに対応する値103を列挙することによって、テストケースを生成する。
図14は、本発明の実施形態のテストケースを修正するための画面1190を示す説明図である。
図14は、サーバ装置10によって送られた各テストケースをテスト実施者に確認させるため、Webブラウザ260に表示される画面1190を示す。画面1190は、図9に示すシーケンス560において表示される。
Webブラウザ260は、各々のフォームの各々の条件を、図14に示すアイコン1250に表示することによって、図9に示すシーケンス550において生成されたテストケースを、テスト実施者に示す。
例えば、図14に示すCASE1は、テキストボックスのフォームに正常値を入力した後、ボタンのフォームに正常値を入力し、その後終了するテストケースである。また、図14に示すCASEnは、テキストボックスのフォームに正常値を入力し、ラジオボタンのフォームに正常値を入力し、リストボックスのフォームに正常値を入力し、ボタンのフォームに正常値を入力した後、終了するテストケースである。
テスト実施者は、テストケースのうち修正したいテストケースがある場合、修正したいテストケースのフォームを示すアイコン1250を操作し、テストケースを修正する。そして、テストケースを修正後、テスト実施者が登録ボタン1260を操作することによって、クライアント装置200は、修正したテストケースと、修正されたテストケースの格納の要求とをサーバ装置10に送信する(図9に示すシーケンス570に相当)。なお、アイコン1250及び登録ボタン1260は、クリックなどによって操作される。
図15は、本発明の実施形態のテストケースの値を修正するための画面1280を示す説明図である。
図15は、サーバ装置10によって送られた各テストケースの値を、テスト実施者が修正するためにWebブラウザ260に表示される画面1280を示す。
テスト実施者が、図14に示す画面1190において、CASE1のテキストボックスのフォームに関する値を修正したい場合、テスト実施者は、CASE1のテキストボックスのフォームを示すアイコン1250を操作する。その後、図15に示す画面1280が、Webブラウザ260によって表示される。
画面1280には、Webコンテンツによって表示される画面のうち、図14において操作されたアイコン1250に対応するフォームの領域のみが表示される。そして、その他の領域は、テスト実施者によって選択することができないように、マスク等がされる。
テスト実施者が、画面1280に表示されるテキストボックスを選択すると、テキストボックスをテストするための値を修正するための画面1290が表示される。テスト実施者は、各条件に対応する値を修正し、OKボタン1300を操作することによって、修正する内容を決定する。OKボタン1300は、クリックなどによって操作される。
なお、テストケースを修正するための画面1190及び画面1280は、図14及び図15の表示方法に限られず、テストケースのフォーム毎に一意に指定でき、値を変更できる方法であれば、いずれの表示方法でもよい。
図16は、本発明の実施形態のクライアント装置200によって修正されたテストケース及び操作ログを格納する処理を示すフローチャートである。
図16は、クライアント装置200に備わるWebブラウザ260とテストケース修正スクリプト部280とによって、修正されたテストケース及び操作ログ300を、サーバ装置10へ格納する処理を示す。図16に示す処理は、図9に示すシーケンス580に相当する。
サーバ装置10は、クライアント装置200によって修正されたテストケースの格納の要求を受信するると、図16に示す処理を開始する(1150)。サーバ装置10は、クライアント装置200から受信したテストケース、及び、テストケースから生成された操作ログに、一意な識別子を付与する(1160)。
そしてサーバ装置10は、補助記憶装置40の操作ログ150に、クライアント装置200から送られた操作ログを格納する(1170)。その後サーバ装置10は、図16に示す処理を終了する。
(操作の再生処理)
図17は、本発明の実施形態のサーバ装置10に保持されるWebコンテンツ140及びWebコンテンツ140に対応する操作ログ150を、クライアント装置200において再生する処理を示すシーケンス図である。
図17は、本発明の実施形態のサーバ装置10に保持されるWebコンテンツ140及びWebコンテンツ140に対応する操作ログ150を、クライアント装置200において再生する処理を示すシーケンス図である。
テスト実施者が、WebコンテンツをWebブラウザ260において実行する際に、以前に行われた操作を再生する場合、又は、サーバ装置10によって自動的に生成されたテストケースによってテストをする場合、まず、クライアント装置200は、Webコンテンツの操作を再生する要求をサーバ装置10へ送信する(410)。
クライアント装置200は、シーケンス410において、Webコンテンツの操作を再生する要求と、要求されるWebコンテンツに対応するWebコンテンツ140を示す情報とを送信する。Webコンテンツ140を示す情報は、図4及び図9に示す処理によって、あらかじめクライアント装置200によって保持される。
サーバ装置10が、特定のWebコンテンツの操作を再生する要求と、要求されるWebコンテンツに対応するWebコンテンツ140を示す情報とを、前述の通り、HTTPサーバ部80及びアプリケーションサーバ部70を介して、受信した後(420)、操作記録/操作再生スクリプト埋込部50は、補助記憶装置30に保持される操作再生スクリプト130を取得する(425)。
また、サーバ装置10の操作記録/操作再生スクリプト埋込部50は、受信した情報に基づいて、補助記憶装置40に保持されるWebコンテンツ140とそのWebコンテンツ140に対応する操作ログ150とを取得する(430、440)。そして、取得された操作再生スクリプト130とWebコンテンツ140と操作ログ150とを、アプリケーションサーバ部70及びHTTPサーバ部80を介して、クライアント装置200に送信する。
なお、シーケンス430及び440において、クライアント装置200から送られたWebコンテンツを示す情報が識別子である場合、操作記録/操作再生スクリプト埋込部50は、識別子に基づいてWebコンテンツ140及び操作ログ150を取得する。一方、クライアント装置200から送られたWebコンテンツを示す情報がファイル名等である場合、操作記録/操作再生スクリプト埋込部50は、最新のバージョンなど、管理者等によってあらかじめ定められたバージョンのWebコンテンツ140及び操作ログ150を取得する。
クライアント装置200は、サーバ装置10から操作再生スクリプト130とWebコンテンツ140と操作ログ150とを送信された後、送信されたWebコンテンツ140をWebコンテンツ290に格納し、送信された操作ログ150を操作ログ300に格納する。そして、新たに格納されたWebコンテンツ290を操作記録/操作再生スクリプト部270によって実行する(460)。操作記録/操作再生スクリプト部270は、新たに格納されたWebコンテンツ290を実行し、新たに格納された操作ログ300を操作再生スクリプト130によって逐次実行することによって、操作を再生する(470)。
図18は、本発明の実施形態の操作を再生するための情報の取得処理を示すフローチャートである。
図18に示す処理は、図17のシーケンス420に示す処理である。図18は、クライアント装置200によって要求された、操作を再生する対象となるWebコンテンツ140及びWebコンテンツ140に対応する操作ログ150を補助記憶装置40から取得し、クライアント装置200へ送信する処理を示す。
Webコンテンツの操作を再生する要求と、そのWebコンテンツに対応するWebコンテンツ140を示す識別子とを、クライアント装置200から送信された後、サーバ装置10は、図18に示す処理を開始する(770)。ステップ770の後、操作記録/操作再生スクリプト埋込部50は、クライアント装置200から送信されたWebコンテンツ140を示す情報によって、補助記憶装置40を参照し、Webコンテンツ140とWebコンテンツ140に対応する操作ログ150とを取得する(780、790)。
そして操作記録/操作再生スクリプト埋込部50は、Webコンテンツ140をクライアント装置200において再生するため、補助記憶装置30に保持される操作再生スクリプト130を取得し、ステップ780において取得されたWebコンテンツ140に付加する(800)。そして操作記録/操作再生スクリプト埋込部50は、Webコンテンツ140及び操作ログ150を、クライアント装置200に送信し(810)、処理を終了する。
なお、ステップ780及び790は、図17に示すシーケンス430及び440に相当する。
図19は、本発明の実施形態の操作を再生する処理を示すフローチャートである。
図19は、図17のシーケンス470の処理を示す。図19は、サーバ装置10によって取得されたWebコンテンツ140及びWebコンテンツ140に対応する操作ログ150を、クライアント装置200において再生する処理を示す。
クライアント装置200は、サーバ装置10から送られたWebコンテンツ140を操作記録/操作再生スクリプト部270によって実行し、Webブラウザ260にWebコンテンツ140の画面を表示させる(840)。そして、操作記録/操作再生スクリプト部270は、サーバ装置10から送られた操作ログ150のうち、一つの操作を示すデータを取得し(850)、取得した操作を、Webコンテンツ140に挿入された操作再生スクリプト130によって実行させる(860)。
さらに、操作記録/操作再生スクリプト部270はステップ860の後、サーバ装置10から送られた操作ログ150に、未実行の操作ログが含まれているか否かを判定し(870)、未実行の操作ログが含まれている場合、ステップ850に戻る。未実行の操作ログが含まれておらず、操作ログ150をすべて実行した場合、サーバ装置10は、操作を再生する処理を終了する(880)。
なお、前述のとおり本実施形態において、操作ログとテストケースとを区別して記載したが、クライアント装置200及びサーバ装置10は、操作ログとテストケースとのどちらを保持してもよい。
例えば、サーバ装置10は、図4のシーケンス390において、クライアント装置200から送られた操作ログ300からテストケースを抽出し、抽出されたテストケースを保持してもよい。そして、図9のシーケンス540において、更新前と更新後のWebコンテンツの共通部分に対応するテストケースを抽出し、共通部分に対応するテストケースと差部分に対応するテストケースとを結合させてもよい。
前述のとおり、本実施形態によれば、Webコンテンツをテストするためのテストケースを、過去のテスト等によって用いられた操作ログ(スクリプトファイル)に基づいて自動的に生成することができ、さらに、自動的にテストを再生できるため、テストのための工数を削減できる。また、あらかじめ作成されたテストケース定義ファイルに基づいて、自動的にテストケースを生成するため、テストケースに漏れが発生することを防ぐことができる。この結果、Webコンテンツの品質向上が望める。
以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。
本発明は、Webアプリケーションを開発するためのシステムに適用することができる。
Claims (14)
- Webコンテンツと、前記Webコンテンツを操作するためのテストシナリオとを、記憶媒体に保持する計算機における、テストシナリオ生成方法であって、
前記計算機が、前記記憶媒体に保持される更新前の第1のWebコンテンツと、更新後の第2のWebコンテンツとの共通部分と差部分とを抽出し、
前記計算機が、前記第1のWebコンテンツを操作するための第1の前記テストシナリオのうち、前記共通部分に対応する前記テストシナリオを、前記第1のテストシナリオが格納される前記記憶媒体から抽出し、
前記計算機が、前記抽出された共通部分に対応するテストシナリオと、前記抽出された差部分に対応する新たに生成されたテストシナリオとを結合することによって、前記第2のWebコンテンツを操作するための第2のテストシナリオを生成することを特徴とするテストケース生成方法。 - 前記方法は、
前記計算機が、前記第2のWebコンテンツのうち、前記第1のWebコンテンツに追加されたWebコンテンツを、前記差部分に含め、
前記計算機が、前記第1のWebコンテンツのうち、前記第2のWebコンテンツに含まれていないWebコンテンツを、前記差部分に含めないことを特徴とする請求項1に記載のテストシナリオ生成方法。 - 前記方法は、
前記計算機が、前記第2のWebコンテンツを取得し、
前記計算機が、前記取得された第2のWebコンテンツに基づいて、前記記憶媒体によって保持されるWebコンテンツのうち、前記第1のWebコンテンツと、前記第1のWebコンテンツを操作するための第1のテストシナリオとを、抽出することを特徴とする請求項1又は2に記載のテストシナリオ生成方法。 - 前記方法は、
前記計算機が、前記第1のWebコンテンツと前記第2のWebコンテンツとの前記共通部分が抽出されるか否かを判定し、
前記共通部分が抽出されない場合、前記計算機が、前記抽出された差部分に対応するテストシナリオを、前記第2のテストシナリオとして新たに生成し、
前記共通部分が抽出された場合、前記計算機が、前記抽出された共通部分に対応する前記テストシナリオと、前記差部分に対応する新たに生成されたテストシナリオとを結合することによって、前記第2のテストシナリオを生成することを特徴とする請求項1から3のいずれか一項に記載のテストシナリオ生成方法。 - 前記テストシナリオは、少なくとも一つのテストケースを含み、
前記計算機は、前記Webコンテンツに含まれるフォームに対応する前記テストケースを保持し、
前記方法は、
前記計算機が、前記差部分に含まれるフォームに対応する前記テストケースを取得し、
前記計算機が、前記取得されたテストケースを含む前記テストシナリオを生成することによって、前記差部分に対応するテストシナリオを生成することを特徴とする請求項1から4のいずれか一項に記載のテストシナリオ生成方法。 - 前記計算機は、前記Webコンテンツを前記テストシナリオを用いて操作するための指示ファイルを保持し、
前記方法は、
前記計算機が、前記操作するための指示ファイルを、前記Webコンテンツに付加し、
前記計算機が、前記操作するための指示ファイルを付加された第2のWebコンテンツと前記第2のWebコンテンツを操作するためのテストシナリオとを送信することを特徴とする請求項1から5のいずれか一項に記載のテストシナリオ生成方法。 - 前記方法は、
前記計算機が、前記テストシナリオを修正するための画面を表示するためのデータを提供し、
前記計算機が、前記画面によって修正されたテストシナリオを取得し、
前記計算機が、前記画面によって修正されたテストシナリオを保持することを特徴とする請求項1から6のいずれか一項に記載のテストシナリオ生成方法。 - 前記計算機は、前記テストシナリオを修正するための指示ファイルを保持し、
前記方法は、
前記計算機が、前記修正するための指示ファイルと前記テストシナリオとを、前記第2のWebコンテンツに付加し、
前記計算機が、前記修正するための指示ファイルを付加された第2のWebコンテンツと前記第2のWebコンテンツを操作するためのテストシナリオとを送信することを特徴とする請求項1から7のいずれか一項に記載のテストシナリオ生成方法。 - Webコンテンツと前記Webコンテンツを操作するためのテストシナリオとを保持するサーバを備えるテストシナリオ生成システムであって、
前記サーバは、
更新前の第1のWebコンテンツと更新後の第2のWebコンテンツとの共通部分と差部分とを抽出し、
前記第1のWebコンテンツを操作するための第1の前記テストシナリオのうち、前記共通部分に対応する前記テストシナリオを抽出し、
前記抽出された共通部分に対応するテストシナリオと、前記抽出された差部分に対応する新たに生成されたテストシナリオとを結合することによって、前記第2のWebコンテンツを操作するための第2のテストシナリオを生成することを特徴とするテストシナリオ生成システム。 - 前記サーバは、
前記第2のWebコンテンツのうち、前記第1のWebコンテンツに追加されたWebコンテンツを、前記差部分に含め、
前記第1のWebコンテンツのうち、前記第2のWebコンテンツに含まれていないWebコンテンツを、前記差部分に含めないことを特徴とする請求項9に記載のテストシナリオ生成システム。 - 前記サーバは、
前記Webコンテンツを実行するクライアントと接続され、
前記第2のWebコンテンツを、前記クライアントから取得し、
前記取得された第2のWebコンテンツに基づいて、前記サーバによって保持されるWebコンテンツのうち、前記第1のWebコンテンツと、前記第1のWebコンテンツを操作するための第1のテストシナリオとを、抽出することを特徴とする請求項9又は10に記載のテストシナリオ生成システム。 - 前記サーバは、
前記第1のWebコンテンツと前記第2のWebコンテンツとの前記共通部分が抽出されるか否かを判定し、
前記共通部分が抽出されない場合、前記抽出された差部分に対応するテストシナリオを、前記第2のテストシナリオとして新たに生成し、
前記共通部分が抽出された場合、前記抽出された共通部分に対応する前記テストシナリオと、前記差部分に対応する新たに生成されたテストシナリオとを結合することによって、前記第2のテストシナリオを生成することを特徴とする請求項9から11のいずれか一項に記載のテストシナリオ生成システム。 - 前記テストシナリオは、少なくとも一つのテストケースを含み、
前記サーバは、前記Webコンテンツに含まれるフォームに対応する前記テストケースを保持し、
前記差部分に含まれるフォームに対応する前記テストケースを取得し、
前記取得されたテストケースを含む前記テストシナリオを生成することによって、前記差部分に対応するテストシナリオを生成することを特徴とする請求項9から12のいずれか一項に記載のテストシナリオ生成システム。 - Webコンテンツと、前記Webコンテンツを操作するためのテストシナリオとを保持する計算機によって実行されるテストシナリオ生成プログラムであって、
前記プログラムは、
前記計算機に、更新前の第1のWebコンテンツと更新後の第2のWebコンテンツとの共通部分と差部分とを抽出させ、
前記計算機に、前記第1のWebコンテンツを操作するための第1の前記テストシナリオのうち、前記共通部分に対応する前記テストシナリオを抽出させ、
前記計算機に、前記抽出された共通部分に対応するテストシナリオと、前記抽出された差部分に対応する新たに生成された前記テストシナリオとを結合することによって、前記第2のWebコンテンツを操作するための第2の前記テストシナリオを生成させることを特徴とするテストシナリオ生成プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2010/062621 WO2012014284A1 (ja) | 2010-07-27 | 2010-07-27 | テストシナリオ生成方法、テストシナリオ生成システム、及び、テストシナリオ生成プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2012014284A1 true JPWO2012014284A1 (ja) | 2013-09-09 |
Family
ID=45529531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012526233A Pending JPWO2012014284A1 (ja) | 2010-07-27 | 2010-07-27 | テストシナリオ生成方法、テストシナリオ生成システム、及び、テストシナリオ生成プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20130191814A1 (ja) |
JP (1) | JPWO2012014284A1 (ja) |
WO (1) | WO2012014284A1 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9454464B2 (en) * | 2012-08-08 | 2016-09-27 | Cbs Interactive Inc. | Application development center testing system |
RU2598988C2 (ru) * | 2013-08-07 | 2016-10-10 | Фиизер Инк. | Способы и системы для поиска прикладных программ |
KR20150029184A (ko) * | 2013-09-09 | 2015-03-18 | 삼성에스디에스 주식회사 | 애플리케이션을 테스트하는 기법 |
US9304891B1 (en) * | 2013-11-04 | 2016-04-05 | Intuit Inc. | Load-test generator |
US9237204B1 (en) | 2014-07-30 | 2016-01-12 | Iboss, Inc. | Web redirection for caching |
JP6397800B2 (ja) * | 2015-06-19 | 2018-09-26 | 株式会社日立製作所 | テスト支援システムおよびテスト支援方法 |
JP6658297B2 (ja) * | 2016-05-19 | 2020-03-04 | 富士通株式会社 | テストケース生成方法、テストケース生成プログラムおよびテストケース生成装置 |
EP3410364B1 (en) * | 2017-05-29 | 2020-09-09 | Ricoh Company, Limited | Information processing system, information processing apparatus, and information processing method |
US10409711B2 (en) * | 2017-06-12 | 2019-09-10 | International Business Machines Corporation | Automatically running tests against WEB APIs based on specifications |
US10838850B2 (en) * | 2017-11-27 | 2020-11-17 | Accenture Global Solutions Limited | Robotic regression testing for smart devices |
CN109634866A (zh) * | 2018-12-14 | 2019-04-16 | 泰康保险集团股份有限公司 | 数据测试方法、装置、介质及电子设备 |
FR3090928B1 (fr) * | 2018-12-21 | 2021-07-23 | Amadeus Sas | Systeme de gestion de donnes synchronise et procede |
CN109739758B (zh) * | 2018-12-28 | 2022-02-01 | 北京云测信息技术有限公司 | 测试用例转换方法和装置 |
US11354228B1 (en) * | 2021-03-09 | 2022-06-07 | Sap Se | Automated exploratory testing using machine learning |
CN116304399B (zh) * | 2023-05-19 | 2023-08-11 | 建信金融科技有限责任公司 | 测试案例的可视化处理方法、装置及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000112784A (ja) * | 1998-09-30 | 2000-04-21 | Hitachi Software Eng Co Ltd | プログラムテスト支援装置及びプログラムテスト支援プログラムを記録した記録媒体 |
JP2003044318A (ja) * | 2001-08-02 | 2003-02-14 | Fujitsu Ltd | テスト支援プログラムおよびテスト支援方法 |
JP2003091431A (ja) * | 2001-09-19 | 2003-03-28 | Hitachi Ltd | テストシナリオ選択実行システム、方法、およびプログラム |
JP2004118403A (ja) * | 2002-09-25 | 2004-04-15 | Fujitsu Ltd | ソフトウェア機能テストデータ生成プログラムおよびソフトウェア機能テストデータ生成方法 |
JP2009075921A (ja) * | 2007-09-21 | 2009-04-09 | Hitachi Software Eng Co Ltd | Webページテスト自動化装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5437493B2 (ja) * | 2010-08-10 | 2014-03-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ウェブ・アプリケーションを自動的にテストする方法およびシステム |
-
2010
- 2010-07-27 WO PCT/JP2010/062621 patent/WO2012014284A1/ja active Application Filing
- 2010-07-27 JP JP2012526233A patent/JPWO2012014284A1/ja active Pending
- 2010-07-27 US US13/811,756 patent/US20130191814A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000112784A (ja) * | 1998-09-30 | 2000-04-21 | Hitachi Software Eng Co Ltd | プログラムテスト支援装置及びプログラムテスト支援プログラムを記録した記録媒体 |
JP2003044318A (ja) * | 2001-08-02 | 2003-02-14 | Fujitsu Ltd | テスト支援プログラムおよびテスト支援方法 |
JP2003091431A (ja) * | 2001-09-19 | 2003-03-28 | Hitachi Ltd | テストシナリオ選択実行システム、方法、およびプログラム |
JP2004118403A (ja) * | 2002-09-25 | 2004-04-15 | Fujitsu Ltd | ソフトウェア機能テストデータ生成プログラムおよびソフトウェア機能テストデータ生成方法 |
JP2009075921A (ja) * | 2007-09-21 | 2009-04-09 | Hitachi Software Eng Co Ltd | Webページテスト自動化装置 |
Also Published As
Publication number | Publication date |
---|---|
US20130191814A1 (en) | 2013-07-25 |
WO2012014284A1 (ja) | 2012-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2012014284A1 (ja) | テストシナリオ生成方法、テストシナリオ生成システム、及び、テストシナリオ生成プログラム | |
US10204035B1 (en) | Systems, methods and devices for AI-driven automatic test generation | |
US7877732B2 (en) | Efficient stress testing of a service oriented architecture based application | |
US9118549B2 (en) | Systems and methods for context management | |
US7334220B2 (en) | Data driven test automation of web sites and web services | |
US8839107B2 (en) | Context based script generation | |
US8301720B1 (en) | Method and system to collect and communicate problem context in XML-based distributed applications | |
JP2008117093A (ja) | ユーザ操作記録・再現方法及び装置 | |
US20060265475A9 (en) | Testing web services as components | |
JP5794107B2 (ja) | 分散型コンピュータシステム、インタラクティブ型クライアント−サーバ・アプリケーションのベリファイ方法、及び製品 | |
JP4023803B2 (ja) | ウェブアプリケーション開発支援装置、データ処理方法及びプログラム | |
US20070073724A1 (en) | System and method for automatic or semi-automatic software integration | |
JP5622647B2 (ja) | シナリオ生成装置およびシナリオ生成プログラム | |
JP2012104108A (ja) | 対話的クライアント‐サーバー・アプリケーションのステートレスな分散式並列クロール技法 | |
US20120266131A1 (en) | Automatic program generation device, method, and computer program | |
US20130198333A1 (en) | Method and device for recording and reproducing web operation | |
JP2010250583A (ja) | アプリケーションテスト生成プログラム、アプリケーションテスト生成方法及びアプリケーションテスト装置 | |
CN115658496A (zh) | 可扩展的Web自动化测试方法、系统、设备及存储介质 | |
US20220229767A1 (en) | Test script generation apparatus, test script generation method and program | |
JP4896909B2 (ja) | シナリオ生成装置及びプログラム | |
JP4867864B2 (ja) | 性能データ収集・表示システム、性能データ表示装置、そのプログラム | |
US9374437B2 (en) | Schema validation proxy | |
JP2008293382A (ja) | テスト仕様自動生成方式 | |
KR20090002032A (ko) | 범용 웹 브라우저에서 ui 플러그인을 실행하는 실행모듈, ui 플러그인 개발 장치 및 그 방법 | |
JP2007140954A (ja) | オペレータ擬似システムおよびオペレータ擬似方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20131001 |