JP2012133721A - テストの網羅性を評価する装置及び方法 - Google Patents

テストの網羅性を評価する装置及び方法 Download PDF

Info

Publication number
JP2012133721A
JP2012133721A JP2010287341A JP2010287341A JP2012133721A JP 2012133721 A JP2012133721 A JP 2012133721A JP 2010287341 A JP2010287341 A JP 2010287341A JP 2010287341 A JP2010287341 A JP 2010287341A JP 2012133721 A JP2012133721 A JP 2012133721A
Authority
JP
Japan
Prior art keywords
input
screen
parameter
analysis
values
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
JP2010287341A
Other languages
English (en)
Other versions
JP5767471B2 (ja
Inventor
Masahiko Kosuda
雅彦 小須田
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2010287341A priority Critical patent/JP5767471B2/ja
Priority to US13/328,151 priority patent/US9164878B2/en
Publication of JP2012133721A publication Critical patent/JP2012133721A/ja
Application granted granted Critical
Publication of JP5767471B2 publication Critical patent/JP5767471B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3676Test management for coverage analysis

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

【課題】サーバで動作するソフトウェアのテストをクライアントから行う際のテスト設計の工数を抑える。
【解決手段】網羅率計測装置40では、トレースログ抽出部41が、トレースログ記憶部35に記憶されたトレースログから分析対象トレースログを抽出し、パラメータ抽出部42が、分析対象トレースログから分析対象画面に出現するパラメータを抽出し、テストデータ生成部43が、そのパラメータのうちの分析対象として指定されたパラメータとそのパラメータに入力されたパラメータ値とを含むテストデータを生成し、入出力制御部46が、同値分割法やオールペア法で用いる同値クラスの範囲や境界値等の分析設定情報を受け付け、テストデータと分析設定情報とに基づいて、単独因子分析部44が単独因子分析を、二次元因子分析部45が二次元因子分析を行い、入出力制御部46が、分析結果をコンソール49に出力する。
【選択図】図1

Description

本発明は、テストの網羅性を評価する装置及び方法に関する。特に、本発明は、サーバで動作するソフトウェアのテストをクライアントから行う際のテストの網羅性を評価する装置及び方法に関する。
ウェブアプリケーションの開発においては、他のソフトウァア開発と同様に、必要十分なテストを行ったかという網羅性の確認が、テストの実行時や終了判断時に求められている。
ホワイトボックステストにおいてこのような網羅性を確認する手法やツールは各種存在する。
また、ブラックボックステストでの入力パラメータの網羅性を担保するテスト手法としては、同値分割法、境界値分析、オールペア法等がある。特に組み込みソフトウェアの開発では利用事例も発表され、これらの手法の適用を補助するツールも各種存在する。
ここで、同様の網羅性確認に関する技術は、公報記載の技術としても知られている(例えば、特許文献1〜4参照)。
特許文献1の技術では、まず、因子の種類毎に数値を定義し、所定数の因子の組み合わせにより構成される複数のテスト項目から、テスト項目を構成する全因子の数値の合計の最小値、最大値を算出して、最小値と最大値との間を複数に分割した複数の区間を生成する。次に、2因子間の因子の種類の組み合わせを全て網羅するように複数のテスト項目を生成する。また次に、テスト項目を構成する全因子の数値の合計をテスト項目毎に算出し、数値の合計によって網羅されていない区間を未網羅の区間として選択する。最後に、未網羅の区間を網羅するようにテスト項目を生成する。
特許文献2の技術では、試験ポイント一覧データと試験ログデータとを入力し、試験ログデータ中に記録された試験ポイントが試験ポイント一覧データに登録されているか否かを判断する。登録されている場合、その試験ポイントに対する試験は実施済みとして試験ポイント一覧データの内容を更新する。そして、最終的に更新された試験ポイント一覧データを参照し、試験対象ポイントのうち試験実施済みのものの割合を算出し、算出結果を出力する。
特許文献3の技術では、まず、テスト対象の制御プログラムの実行パスを抽出する。次に、制御プログラム中の実行パス中の関数について、入力値の範囲を特定する。また次に、入力範囲を所定の方法で分割した空間である離散区分を設定する。最後に、離散区分に対応するテストの実行率に基づいてカバレージ測定する。
特許文献4の技術では、検証の結果が適正とされた場合は、今回の入力データを認定データとして保存する。また、コンピュータ装置において対象になり得る入力データを収集して格納する。そして、コンピュータ装置において対象になり得る入力データの数に対する認定データの数の比を、網羅率として算出し、テストケースまたはテストデータの過不足判定に使用する。
また、公報記載の技術の中には、ソフトウェアの再試験に関する技術もある(例えば、特許文献5、6参照)。
特許文献5の技術では、まず、複数のモジュールからなるソフトウェアが設計仕様中の各機能を満たすかを確認するために予め設定されている複数の第1の試験項目ごとに、第1の試験項目を実施したときに実行されたソフトウェアのモジュールを特定するための走行履歴情報が関連付けられた試験項目別走行履歴情報を与える。次に、不具合を含むモジュールを示す不具合モジュール情報および不具合を含むモジュールのうち不具合の修正されたモジュールを示す修正モジュール情報に基づき、試験項目別走行履歴情報の中から不具合が未修正のモジュールを含む走行履歴情報と関連付けられた第2の試験項目を削除した第3の試験項目を出力する。
特許文献6の技術では、まず、ソフトウェアを構成する部品に、この部品に固有の部品識別子及び部品が入出力操作されるときの固有の入出力信号識別子並びに部品が画面表示される画面単位に固定情報として与えられた画面識別子のパラメータを付加する。次に、このパラメータにより試験時の操作情報及び試験結果である表示情報をトレース記録DBの所定の箇所に記憶するようにして、変更されたソフトウェアの再試験時に利用する。
特開2009−288831号公報 特開2000−267888号公報 特開2009−301129号公報 特開2007−026360号公報 特開2007−328447号公報 特開2008−262473号公報
しかしながら、ホワイトボックステストにおいて網羅性を確認する手法やツールが適用できるのは、実用上、複雑さの観点でコンポーネントレベルのテストに限られてしまっている。
また、ブラックボックステストでの入力パラメータの網羅性を担保するテスト手法は、ウェブアプリケーションの開発ではあまり適用されていない。それは、ウェブアプリケーションが複雑であるため、テストケースの作成も複雑になり、テスト設計にかかる工数が大きくなってしまうからである。ウェブアプリケーションが複雑である点としては、第一に、パラメータの数が多いという点が挙げられる。第二に、画面遷移も併せて考慮する必要があるという点が挙げられる。第三に、直接の入力パラメータだけでなく、入力パラメータから検索したデータとの組み合わせが重要である場合があるという点が挙げられる。例えば、入力パラメータは会員番号であるが、内部処理では会員番号に紐付けられた年齢データが使われるため、年齢データでの組み合わせ設計を行う必要がある場合等である。従って、現状では、ウェブアプリケーション開発において網羅性を確認したいという要求に十分に応えることはできていない。
特許文献1〜6の技術も、このような要求に応えるための手段を何ら提供するものではない。
本発明の目的は、サーバで動作するソフトウェアのテストをクライアントから行う際のテスト設計の工数を抑えることにある。
かかる目的のもと、本発明は、サーバで動作するソフトウェアのテストをクライアントから行う際のテストの網羅性を評価する装置であって、クライアントに表示された特定の画面を用いた複数回のテストのそれぞれにおいて特定の画面上の特定の入力フィールドに入力されサーバへ送信された入力値からなる複数の入力値を含む複数回のテストのログデータを記憶する記憶部と、記憶部に記憶されたログデータに含まれる複数の入力値が、複数回のテストにおいて特定の入力フィールドに入力すべき値のどの程度を網羅しているかを解析する解析部と、解析部による解析結果を出力する出力部とを含む、装置を提供する。
ここで、この装置は、特定の画面上の複数の入力フィールドからの特定の入力フィールドの選択を受け付ける受付部を更に含む、ものであってよい。
また、この装置において、記憶部は、複数回のテストのそれぞれにおいてサーバで入力値に応じて設定されクライアントへ送信された設定値からなる複数の設定値を更に含むログデータを記憶し、解析部は、記憶部に記憶されたログデータに含まれる複数の設定値が、複数回のテストにおいて特定の入力フィールドに入力された値に応じて設定されるべき値のどの程度を網羅しているかを解析する、ものであってよい。
更に、記憶部は、複数回のテストのそれぞれにおいて特定の画面の表示が繰り返された回数が分かるようにログデータを記憶し、解析部は、記憶部に記憶されたログデータから得られる特定の画面の表示の複数の繰り返し回数が、複数回のテストにおいて特定の画面の表示を繰り返すべき回数のどの程度を網羅しているかを解析する、ものであってよい。
また、本発明は、サーバで動作するソフトウェアのテストをクライアントから行う際のテストの網羅性を評価する装置であって、クライアントに表示された少なくとも1つの画面を用いた複数回のテストのそれぞれにおいて少なくとも1つの画面上の2つの入力フィールドに入力されサーバへ送信された入力値の組からなる複数の入力値の組を含む複数回のテストのログデータを記憶する記憶部と、記憶部に記憶されたログデータに含まれる複数の入力値の組が、複数回のテストにおいて2つの入力フィールドに入力すべき値の組のどの程度を網羅しているかを解析する解析部と、解析部による解析結果を出力する出力部とを含む、装置も提供する。
ここで、この装置は、複数の入力値の組のうちテスト対象から除外すべき特定の値の組の指定を受け付ける受付部を更に備え、解析部は、記憶部に記憶されたログデータに含まれる複数の入力値の組が、複数回のテストにおいて2つの入力フィールドに入力すべき値の組から特定の値の組を除外して得られる値の組のどの程度を網羅しているかを解析する、ものであってよい。
また、本発明は、サーバで動作するソフトウェアのテストをクライアントから行う際のテストの網羅性を評価する装置であって、クライアントに表示された少なくとも1つの画面を用いた複数回のテストのそれぞれについて、少なくとも1つの画面上の複数の入力フィールドの各入力フィールドと各入力フィールドに入力されサーバへ送信された入力値とを対応付けた対応情報を含む複数回のテストのログデータを記憶する記憶部と、記憶部に記憶されたログデータに含まれる対応情報から複数の入力フィールドを抽出する抽出部と、抽出部により抽出された複数の入力フィールドからの少なくとも2つの入力フィールドの選択を受け付ける受付部と、少なくとも2つの入力フィールドのうちの特定の入力フィールドに対応情報において対応付けられた入力値からなる複数の入力値が、複数回のテストにおいて特定の入力フィールドに入力すべき値のどの程度を網羅しているかを解析する第1の解析部と、少なくとも2つの入力フィールドのうちの第1の入力フィールドに対応情報において対応付けられた入力値及び少なくとも2つの入力フィールドのうちの第2の入力フィールドに対応情報において対応付けられた入力値の組からなる複数の入力値の組が、複数回のテストにおいて第1の入力フィールド及び第2の入力フィールドに入力すべき値の組のどの程度を網羅しているかを解析する第2の解析部と、第1の解析部による解析結果と第2の解析部による解析結果とを出力する出力部とを含む、装置も提供する。
更に、本発明は、サーバで動作するソフトウェアのテストをクライアントから行う際のテストの網羅性を評価する方法であって、クライアントに表示された特定の画面を用いた複数回のテストのそれぞれにおいて特定の画面上の特定の入力フィールドに入力されサーバへ送信された入力値からなる複数の入力値を含む複数回のテストのログデータを記憶部に記憶するステップと、記憶部に記憶されたログデータに含まれる複数の入力値が、複数回のテストにおいて特定の入力フィールドに入力すべき値のどの程度を網羅しているかの解析を行うステップと、解析の結果を出力するステップとを含む、方法も提供する。
更にまた、本発明は、サーバで動作するソフトウェアのテストをクライアントから行う際のテストの網羅性を評価する装置としてコンピュータを機能させるプログラムであって、コンピュータを、クライアントに表示された特定の画面を用いた複数回のテストのそれぞれにおいて特定の画面上の特定の入力フィールドに入力されサーバへ送信された入力値からなる複数の入力値を含む複数回のテストのログデータを記憶部に書き込む書込み部と、記憶部に書き込まれたログデータに含まれる複数の入力値が、複数回のテストにおいて特定の入力フィールドに入力すべき値のどの程度を網羅しているかを解析する解析部と、解析部による解析結果を出力する出力部として機能させる、プログラムも提供する。
本発明によれば、サーバで動作するソフトウェアのテストをクライアントから行う際のテスト設計の工数を抑えることができる。
本発明の実施の形態が適用されるコンピュータシステムの構成例を示したブロック図である。 本発明の実施の形態における網羅率計測装置の動作例を示したフローチャートである。 本発明の実施の形態における網羅率計測装置の動作例を示したフローチャートである。 本発明の実施の形態における網羅率計測装置で記憶されるトレースログの一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される分析対象指定画面の一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される出現パラメータ一覧画面の一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される従属パラメータ指定画面の一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される繰り返し回数パラメータ指定画面の一例を示した図である。 本発明の実施の形態における網羅率計測装置で記憶されるテストデータの一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される分析設定情報入力画面の一例を示した図である。 本発明の実施の形態における網羅率計測装置で記憶される分析設定情報の一例を示した図である。 本発明の実施の形態における網羅率計測装置で記憶される単独因子分析結果情報の一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される単独因子分析結果画面(単一パラメータ)の一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される単独因子分析結果画面(サマリー)の一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される画面遷移実績画面の一例を示した図である。 本発明の実施の形態における網羅率計測装置で記憶される二次元因子分析結果情報の一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される二次元因子分析結果画面(単一組み合わせ)の一例を示した図である。 本発明の実施の形態における網羅率計測装置で表示される二次元因子分析結果画面(サマリー)の一例を示した図である。 本発明の実施の形態を適用可能なコンピュータのハードウェア構成を示した図である。
まず、本発明の実施の形態の概要を説明する。
本来、同値分割法、オールペア法は、テスト対象システムの設計仕様に基づいて、そのテスト設計の際に、トップダウンで(上位の設計から下位の設計へ向けて)計画し、適用するものである。
複雑なウェブアプリケーションでは、条件により異なるページ遷移が絡むこともあるので、設計仕様からの必要なパラメータの洗い出しや、それらの組み合わせについてのテストケースの設計が非常に複雑となり、上記の手法の適用は難しくなっている。
また、昨今、システム開発手法がウォータフォール手法からアジャイル開発へと移行する動きもあり、テスト設計で網羅性を確保することは益々難しくなってきている。
そこで、これまでの手法で設計して実行しているテストケースの実行結果から必要なデータを集め、どのような画面遷移が実行されたか、実行されたテストケースは同値分割法、オールペア法を適用するとどの程度の網羅性を達成していることになるのか、網羅性を向上させるためにはどのような組み合わせのテストケースを実行すればよいか、といった情報を提供するようにした。
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
図1は、本実施の形態が適用されるコンピュータシステムの構成例を示したブロック図である。
図示するように、コンピュータシステムは、ウェブシステム10と、クライアント20とが、代理サーバであるプロキシ70及びインターネット等のネットワーク80を介して接続されることにより構成される。また、ネットワーク80上の斜線で示したスイッチのミラーポート又はTAPにネットワークトレーサ30が接続され、ネットワークトレーサ30にトレースログ記憶装置35が接続されている。更に、トレースログ記憶装置35には、網羅率計測装置40と、画面再生装置60とが接続され、網羅率計測装置40にはコンソール49が、画面再生装置60にはクライアント69が、それぞれ接続されている。
ウェブシステム10は、各クライアントにインストールされたブラウザからの要求に応じてサービスを提供するサーバ上のシステムであり、本実施の形態でテスト対象となるシステムである。本実施の形態では、サーバの一例として、ウェブシステム10を設けている。
クライアント20は、テスターがウェブシステム10をテストする際に使用する端末装置である。図では、1つのクライアント20しか示していないが、複数のクライアント20が接続されていてもよく、その場合、クライアント20というときはそのうちの1つを指すものとする。
ネットワークトレーサ30は、ネットワーク80上のトラフィックのトレースを取得する。
トレースログ記憶装置35は、ネットワークトレーサ30が取得したトレースのログ(トレースログ)を記憶する。
網羅率計測装置40は、トレースログ記憶装置35に記憶されたトレースログに基づいて、テストの網羅率を計測する装置である。詳細については後述する。
コンソール49は、網羅率計測装置40の使用者(以下、単に「ユーザ」という)の操作に応じて網羅率計測装置40に情報を入力したり、網羅率計測装置40による処理結果の情報を表示したりする操作卓である。
画面再生装置60は、テスターがクライアント20に表示した画面を後から再生する装置である。
クライアント69は、画面再生装置60の使用者が画面を再生する際に使用する端末装置である。
ここで、網羅率計測装置40の機能構成について詳細に説明する。
図示するように、網羅率計測装置40は、トレースログ抽出部41と、パラメータ抽出部42と、テストデータ生成部43と、単独因子分析部44と、二次元因子分析部45と、入出力制御部46とを備える。また、分析対象トレースログ記憶部51と、テストデータ記憶部52と、分析設定情報記憶部53と、分析結果情報記憶部54とを備える。このうち、トレースログ抽出部41、パラメータ抽出部42、テストデータ生成部43、単独因子分析部44、二次元因子分析部45、入出力制御部56は、CPU90a(図19参照)がプログラムを磁気ディスク装置90g(図19参照)からメインメモリ90c(図19参照)に読み込んで実行することにより、実現される。また、分析対象トレースログ記憶部51、テストデータ記憶部52、分析設定情報記憶部53、分析結果情報記憶部54は、例えば磁気ディスク装置90g(図19参照)によって実現される。
トレースログ抽出部41は、トレースログ記憶装置35に記憶されたトレースログから、分析対象として指定されたトレースログを抽出し、分析対象トレースログとして分析対象トレースログ記憶部51に記憶する。
パラメータ抽出部42は、分析対象トレースログ記憶部51に記憶された分析対象トレースログから、分析対象として指定された画面に出現するパラメータを抽出する。本実施の形態では、入力フィールドの一例として、パラメータを用いており、入力フィールドを抽出する抽出部の一例として、パラメータ抽出部42を設けている。
テストデータ生成部43は、分析対象トレースログ記憶部51に記憶された分析対象トレースログに基づいて、パラメータ抽出部42が抽出したパラメータと、1回のテストでそれらのパラメータに入力されたパラメータ値とを含むテストデータを生成し、テストデータ記憶部52に記憶する。本実施の形態では、入力値の一例として、パラメータ値を用いている。
単独因子分析部44は、テストデータ記憶部52に記憶されたテストデータと、分析設定情報記憶部53に記憶された分析設定情報(後述)とに基づいて、単独パラメータに関するテスト網羅性を分析し、分析の結果を示す単独因子分析結果情報を分析結果情報記憶部54に記憶する。本実施の形態では、複数の入力値が複数回のテストにおいて特定の入力フィールドに入力すべき値のどの程度を網羅しているかを解析する解析部又は第1の解析部の一例として、単独因子分析部44を設けている。
二次元因子分析部45は、テストデータ記憶部52に記憶されたテストデータと、分析設定情報記憶部53に記憶された分析設定情報(後述)とに基づいて、2つのパラメータの組み合わせに関するテスト網羅性を分析し、分析の結果を示す二次元因子分析結果情報を分析結果情報記憶部54に記憶する。本実施の形態では、複数の入力値の組が複数回のテストにおいて2つの入力フィールドに入力すべき値の組のどの程度を網羅しているかを解析する解析部又は第2の解析部の一例として、二次元因子分析部45を設けている。
入出力制御部46は、コンソール49から入力された情報を受け付ける。特に、コンソール49から単独因子分析部44及び二次元因子分析部45で用いる分析設定情報が入力された場合は、分析設定情報を分析設定情報記憶部53に記憶する。また、コンソール49に表示すべき情報を出力する。本実施の形態では、入力フィールドの選択を受け付ける受付部の一例として、また、解析結果を出力する出力部の一例として、入出力制御部46を設けている。
分析対象トレースログ記憶部51は、トレースログ抽出部41により抽出された分析対象トレースログを記憶する。本実施の形態では、ログデータを記憶する記憶部の一例として、分析対象トレースログ記憶部51を設けている。
テストデータ記憶部52は、テストデータ生成部43により生成されたテストデータを記憶する。
分析設定情報記憶部53は、入出力制御部46がコンソール49から受け付けた分析設定情報を記憶する。ここで、分析設定情報とは、同値分割法、境界値分析、オールペア法等による網羅性の分析で用いられる設定情報であり、同値クラスの範囲や境界値の情報等である。
分析結果情報記憶部54は、単独因子分析部44による分析の結果を示す単独因子分析結果情報と、二次元因子分析部45による分析の結果を示す二次元因子分析結果情報とを記憶する。
尚、この構成例では、ネットワークトレーサ30がネットワーク80上のトラフィックのトレースをトレースログとして取得したが、トレースログの取得方法はこれには限らない。
第一に、ウェブシステム10におけるログをトレースログとして取得する方法が考えられる。但し、この方法では、通常、ウェブシステム10のアプリケーションでの個別対応が必要になる。
第二に、プロキシ70等のネットワーク中継機器におけるログをトレースログとして取得する方法が考えられる。
第三に、クライアント20でロガーを使用し、そのログをトレースログとして取得する方法が考えられる。
次に、本実施の形態における網羅率計測装置40の動作について詳細に説明する。
まず、網羅率計測装置40は、トレースログ記憶装置35に記憶されたトレースログを自身の図示しないメモリに読み込み、そのメモリ上でトレースログに対する前処理を行う。ここで、前処理には、不正なパケットを取り除く処理、クライアント20ごとにトレースログを分類してエントリを時系列に並べる処理、圧縮されているデータを復元する処理等がある。
図2及び図3は、その後の網羅率計測装置40の動作例を示したフローチャートである。
網羅率計測装置40では、図2に示すように、まず、入出力制御部46が、分析対象を指定するための画面(分析対象指定画面)をコンソール49に表示し、分析対象指定画面から入力された分析対象指定情報を受け付ける(ステップ401)。これにより、トレースログ抽出部41は、前処理後のトレースログから、分析対象指定情報で指定されたトレースログを抽出し、分析対象トレースログとして分析対象トレースログ記憶部51に記憶する(ステップ402)。
次に、パラメータ抽出部42は、分析対象トレースログ記憶部51に記憶された分析対象トレースログから、分析対象指定情報で指定された画面に出現するパラメータを抽出する(ステップ403)。これにより、入出力制御部46は、パラメータ抽出部42が抽出したパラメータを一覧表で示す画面(出現パラメータ一覧画面)をコンソール49に表示する(ステップ404)。
また、入出力制御部46は、必ずしも必須ではないが、ユーザの要求に応じて、従属パラメータを指定するための画面(従属パラメータ指定画面)、繰り返し回数パラメータを指定するための画面(繰り返し回数パラメータ指定画面)等もコンソール49に表示する(ステップ405)。
ステップ403では、クライアント20からウェブシステム10へのHTTP(HyperText Transfer Protocol)リクエスト内のPOSTデータからパラメータを抽出するが、その一方で、このようなパラメータに基づいてウェブシステム10で値が設定されるパラメータもある。例えば、クライアント20で入力された会員番号に応じてウェブシステム10で設定される性別のようなパラメータである。そこで、従属パラメータ指定画面を表示することにより、このようなウェブシステム10で値が設定されるパラメータも従属パラメータとして、ウェブシステム10からクライアント20へのHTTPレスポンスから抽出できるようにしている。ここで、従属パラメータは、サーバで入力値に応じて設定されクライアントへ送信された設定値の一例である。
更に、繰り返し回数パラメータ指定画面を表示することにより、同じ画面を表示した回数を格納する繰り返し回数パラメータも1つの因子としてテスト網羅性を分析できるようにしている。
その他、クライアント20のOSの種類やブラウザの種類といったテスト環境、ネットワークパス、ウェブシステム10におけるアプリケーションのバージョン、ユーザの権限等の情報を指定するための画面を表示して情報を入力させ、入力された情報を格納するパラメータを因子としてテスト網羅性を分析するようにしてもよい。
そして、入出力制御部46は、これらの画面から入力されたパラメータ指定情報を受け付ける(ステップ406)。これにより、テストデータ生成部43は、パラメータ指定情報で指定されたパラメータと、1回のテストでそれらのパラメータに入力されたパラメータ値とを含むテストデータを生成し、テストデータ記憶部52に記憶する(ステップ407)。
次に、網羅率計測装置40では、図3に示すように、入出力制御部46が、分析設定情報を入力するための画面(分析設定情報入力画面)を表示し、分析設定情報入力画面から入力された分析設定情報を分析設定情報記憶部53に記憶する(ステップ411)。ここで、分析設定情報には、同値分割法、境界値分析、オールペア法で用いられる同値クラスの範囲や境界値の情報等が含まれる。
そして、単独因子分析部44は、同値分割法や境界値分析により単独パラメータを因子として分析を行い、分析結果を単独因子分析結果情報として分析結果情報記憶部54に記憶する(ステップ412)。尚、この場合、ステップ404に最初に表示されたパラメータだけでなく、ステップ406で最終的に指定された全てのパラメータを対象として、単独因子分析を行う。即ち、これら全てのパラメータについて、パラメータに入力されたパラメータ値が、パラメータに入力又は設定される値のどの程度を網羅しているかを分析する。これにより、入出力制御部46は、分析結果情報記憶部54に記憶された単独因子分析結果情報を編集し、単独因子分析結果を示す画面(単独因子分析結果画面)をコンソール49に表示する(ステップ413)。
その後、入出力制御部46は、分析対象を変更する旨の情報がコンソール49から入力されたかどうかを判定する(ステップ414)。
その結果、分析対象を変更する旨の情報がコンソール49から入力されたと判定されれば、他の分析対象についてステップ401〜413の処理を行う。
一方、分析対象を変更する旨の情報がコンソール49から入力されたと判定されなければ、二次元因子分析部45による処理に移行する。
即ち、二次元因子分析部45は、まず、画面遷移の分析を行い、その分析結果を示す画面(画面遷移実績画面)を表示し、次に、オールペア法により二次元パラメータを因子として分析を行い、分析結果を二次元因子分析結果情報として分析結果情報記憶部54に記憶する(ステップ415)。尚、この場合、ステップ404に最初に表示されたパラメータだけでなく、ステップ406で最終的に指定された全てのパラメータを対象として、二次元因子分析を行う。即ち、これら全てのパラメータについて、パラメータの組に入力されたパラメータ値の組が、パラメータの組に入力又は設定される値の組のどの程度を網羅しているかを分析する。これにより、入出力制御部46は、分析結果情報記憶部54に記憶された二次元因子分析結果情報を編集し、二次元因子分析結果を示す画面(二次元因子分析結果画面)をコンソール49に表示する(ステップ416)。
その後、入出力制御部46は、分析対象を変更する旨の情報がコンソール49から入力されたかどうかを判定する(ステップ417)。
その結果、分析対象を変更する旨の情報がコンソール49から入力されたと判定されれば、他の分析対象についてステップ401〜416の処理を行う。
一方、分析対象を変更する旨の情報がコンソール49から入力されたと判定されなければ、処理を終了する。
以下、本実施の形態の動作について、具体的に説明する。
図4は、本実施の形態で用いるトレースログの一例を示した図である。トレースログ記憶装置35に記憶されたトレースログには、ウェブシステム10及びクライアント20のIPアドレスも含まれるが、ここでは、上述した前処理でウェブシステム10ごと、クライアント20ごとに分類された結果、特定のウェブシステム10及び特定のクライアント20に関するものとして記憶されたトレースログを示している。
図中、1行目に示すように、トレースログには、開始行と、メッセージヘッダと、メッセージボディと、対象IDとが含まれる。このうち、開始行、メッセージヘッダ、メッセージボディは、HTTPメッセージから得られたものである。対象IDは、例えばテスターを識別するテスターIDであり、テスターがクライアント20にログインする際に入力したテスターIDがセットされる。
また、2行目は、クライアント20からウェブシステム10へ送信されたHTTPリクエストである。具体的には、開始行に示すように、POSTメソッドで「aaa/bbb.do」なる画面URI(Uniform Resource Identifier)にデータを送るHTTPリクエストであり、メッセージボディに示すように、変数名「parb1」、「parb2」、「parb3」に対する変数値として「valb11」、「valb21」、「valb31」が送られている。
更に、3行目は、ウェブシステム10からクライアント20へ送信されたHTTPレスポンスであり、メッセージボディに示すように、HTML(HyperText Markup Language)ファイルが送られている。
このようなトレースログが記憶された状態で、ステップ401では、分析対象指定画面が表示される。
図5は、分析対象指定画面の一例を示した図である。
図示するように、分析対象指定画面では、分析対象指定情報として、テスト期間、対象サーバ、対象PC、対象ID、画面URIを入力できるようになっている。
テスト期間は、任意入力項目であり、メッセージヘッダ内の日時によってトレースログを絞り込むために入力される。
対象サーバは、任意入力項目であり、特定のウェブシステム10に関するトレースログを選択するために入力される。省略時は、全てのウェブシステム10に関するトレースログが分析対象となる。
対象PCは、任意入力項目であり、特定のクライアント20に関するトレースログを選択するために入力される。省略時は、全てのクライアント20に関するトレースログが分析対象となる。
対象IDは、任意入力項目であり、対象IDによってトレースログを絞り込むために入力される。省略時は、全ての対象IDに関するトレースログが分析対象となる。
画面URI始点は、任意入力項目であり、開始行内の画面URIによってトレースログを絞り込むために入力される。
画面URI終点は、任意入力項目であり、複数の画面を分析対象とする場合に入力される。省略時は、画面URI始点で指定された一画面のみが分析対象となる。
尚、これらの入力項目の全てがブランクの場合は、記録されている全てのトレースログが分析の対象となる。
このようにして分析対象指定情報が入力されると、ステップ402で、トレースログが分析対象指定情報によって絞り込まれ、分析対象トレースログとして分析対象トレースログ記憶部51に記憶される。そして、ステップ403で、分析対象指定情報で指定された画面URI始点から画面URI終点までの間の指定された画面URIの画面に出現する変数名が抽出される。
この抽出された変数名は、ステップ404で、出現パラメータ一覧画面に表示される。
図6は、出現パラメータ一覧画面の一例を示した図である。
図示するように、出現パラメータ一覧画面は、画面URI、画面タイトル、パラメータ名、パラメータ値の例、分析対象情報、従属パラメータ情報を表示する。尚、分析対象情報、従属パラメータ情報は、図では、単に「分析対象」、「従属パラメータ」と表記している。
画面URIは、図5の画面URI始点から画面URI終点までの間の指定された画面URIである。
画面タイトルは、指定された画面URIの画面のタイトルであり、HTTPレスポンスで送られるHTMLファイル内のtitleタグに記述された文言がセットされる。
パラメータ名は、初期的には、指定された画面URIの画面に出現する変数のリストが表示されるが、分析設定情報入力画面(後述)で人間が判別し易いパラメータ名を付与できるので、パラメータ名としている。但し、変数名をそのままパラメータ名としてもよい。例えば、指定された画面URIが図4の2行目の「aaa/bbb.do」であるとすると、変数名「parb1」、「parb2」、「parb3」が表示されるので、これをそのままパラメータ名とすることができる。
パラメータ値の例は、対応するパラメータ名に対するパラメータ値の例である。指定された画面URIが図4の2行目の「aaa/bbb.do」であるとすると、例えば、パラメータ名「parb1」に対してパラメータ値「valb11」が、パラメータ名「parb2」に対してパラメータ値「valb21」が、パラメータ名「parb3」に対してパラメータ値「valb31」が、それぞれ表示される。
分析対象情報は、対応するパラメータを分析対象とするかどうかを示すフラグである。指定された画面URIの画面からパラメータを初めて抽出した場合は、まだ分析対象とするかどうかの設定を行っていないため空欄であるが、分析設定情報入力画面(後述)でそのような設定を行った場合は、その設定が反映される。
従属パラメータ情報は、対応するパラメータが従属パラメータであるかどうかを示すフラグである。指定された画面URIの画面からパラメータを初めて抽出した場合は、その中に従属パラメータは存在しないため空欄であるが、次に述べる従属パラメータ指定画面で従属パラメータの指定を行った場合は、その指定が反映される。
このように、ステップ405では、従属パラメータ指定画面が表示される。
図7は、従属パラメータ指定画面の一例を示した図である。ここで、従属パラメータは、テスターが直接入力できないパラメータである。例えば、サーバからの応答画面から取得できる数値や文字列、HIDDEN属性でID等のために使用されている内部変数等がある。
図示するように、従属パラメータ指定画面では、パラメータ指定情報として、画面URI、パラメータ名、パラメータ位置、取得情報を入力できるようになっている。また、従属パラメータ指定画面には、「画面再生装置から取得」ボタンも設けられている。
画面URIは、従属パラメータが抜き取られる応答画面のURIである。
パラメータ名は、単純抜取、高度な抜取の何れの場合も、ユーザが任意に指定できるようになっている。
パラメータ位置は、単純抜取、高度な抜取の何れの場合も、抜き取る文字列、数値等の応答画面内の相対位置である。応答画面はHTMLで記述されているので、応答画面内の相対位置は、XPath表現等で一意に指定できる。
或いは、応答画面内の相対位置は、「画面再生装置から取得」ボタンをクリックすることで表示される画面上で指定することもできる。即ち、「画面再生装置から取得」ボタンをクリックすると、まず、画面再生装置60で再生された画面のうち従属パラメータを抜き取りたい応答画面が表示される。次に、この応答画面上で抜き取る文字列、数値等を右クリックすることで、ブラウザのアドイン等の機能により、そのXPath表現を得ることができる。
取得情報は、高度な抜取の場合にのみ指定可能な情報であり、応答画面に直接表示されていない情報である。このような情報としては、例えば、検索結果で表示された行数がある。これは、応答画面上のパラメータ位置で指定された位置に表示された検索結果の行数をカウントしてパラメータ化するものである。例えば、検索結果の行数を因子とし、この因子に対して、ヒットなし、1画面内に表示できる件数、2画面にわたる表示となる件数等の水準を定義し、網羅率をチェックできるようになっている。
そして、この従属パラメータ指定画面で指定された従属パラメータは、図6の出現パラメータ一覧画面に追加される。このとき、従属パラメータであることも従属パラメータ情報として表示される。
尚、この従属パラメータ指定画面における全ての入力項目が空白の場合は、従属パラメータの指定はされない。
また、ステップ405では、繰り返し回数パラメータ指定画面も表示される。
図8は、繰り返し回数パラメータ指定画面の一例を示した図である。
図示するように、繰り返し回数パラメータ指定画面では、パラメータ指定情報として、カウント対象画面URI、パラメータ名、カウント条件を入力できるようになっている。
カウント対象画面URIは、繰り返し回数をカウントする対象の画面のURIである。
パラメータ名は、カウント対象画面URIの画面の繰り返し回数を格納するパラメータの名前であり、ユーザが任意に指定できるようになっている。
カウント条件は、カウント対象画面URIの画面の繰り返し回数をカウントする際の条件である。このカウント条件としては、例えば、特定の画面遷移の繰り返し回数をカウントするという条件がある。具体的には、画面X、画面Y、画面A、画面B、画面C、画面A、画面B、画面C、画面Dという画面遷移があった場合に、画面A、画面B、画面Cという画面遷移の繰り返しをカウントするというものである。これにより、例えば、通信販売のシステムで、商品を選んでカートに入れる操作を何回か繰り返してから支払いの操作を行うような場合、商品を選んでカートに入れる操作を何回繰り返したかをパラメータとして取り入れることができる。
そして、この繰り返し回数パラメータ指定画面で指定された繰り返し回数パラメータは、図6の出現パラメータ一覧画面に追加される。
尚、この繰り返し回数パラメータ指定画面における全ての入力項目が空白の場合は、繰り返し回数パラメータの指定はされない。
このようにして最終的に図6に表示されているパラメータ(分析対象となっていないパラメータを除く)を指定するパラメータ指定情報が入力されると、ステップ406で、パラメータ指定情報が受け付けられる。そして、ステップ407で、分析対象トレースログから、パラメータ指定情報で指定されたパラメータに関するテストデータが生成され、テストデータ記憶部52に記憶される。
図9は、このテストデータの一例を示した図である。
図中、1行目に示すように、テストデータには、画面URImと、パラメータ名mnと、パラメータ値mnとが含まれる(m=1,2,…、n=1,2,…)。画面URImは、分析対象の画面のうちのm番の画面のURIであり、パラメータ名mnは、画面URImの画面上のn番目のパラメータの名前であり、パラメータ値mnは、パラメータ名mnのパラメータに入力されたパラメータ値である。ここでは、説明を簡単にするために、3回のテストで同じ画面(画面URI1、2の画面)上の同じパラメータ(パラメータ名11、12、21、22のパラメータ)に種々のパラメータ値が入力されたときのテストデータを示している。
このようにしてテストデータが記憶されると、ステップ411で、分析設定情報入力画面が表示される。
図10は、分析設定情報入力画面の一例を示した図である。
図示するように、分析設定情報入力画面では、画面URIで指定された画面上の変数名で指定された変数に対して、カテゴリ、パラメータ名、同値分割情報、同値クラス情報kを入力できるようになっている(k=1,2,…)。尚、同値分割情報、同値クラス情報kは、図では、単に「同値分割」、「同値クラスk」と表記している。
カテゴリでは、変数名で指定された変数を分析対象とするか分析対象外とするか指定できるようになっている。HTTPリクエストからは多くのパラメータが抽出されるが、全てのパラメータについて網羅率を算出する必要はないので、網羅率の算出が必要なパラメータをここで指定する。ここでの分析対象、分析対象外の指定は、出現パラメータ一覧画面に分析対象情報として表示される。また、カテゴリでは、従属パラメータであるかどうかも表示される。つまり、従属パラメータ指定画面で指定されたパラメータに対して、従属パラメータであることが表示される。
パラメータ名は、変数名で表示された変数に対して、ユーザが判別し易いように付与する名前である。例えば、POSTデータやURLにおける「seibetsu」をそのままパラメータ名として用いてもよいが、これを「性別」、「購入者の性別」、「子供の性別」等の分かり易い名前に変更できるようになっている。
同値分割情報は、同値分割法を適用する際の基本的な情報であり、変数名で指定された変数の型や、同値分割を行うかどうかを指定できるようになっている。ここで「同値分割あり」にチェックがされた場合は次の同値クラス情報を入力する。「同値分割なし」にチェックがされた場合は次の同値クラス情報の入力は不要である。
同値クラス情報kでは、上段左側のボックスにおいて、同値クラスkが有効同値クラスであるか無効同値クラスであるかを指定できるようになっている。無効同値クラスが指定された場合、同値クラスkはオールペア法による分析では除外される。また、上段右側のボックスに対して、同値クラスkの範囲を示す条件式を入力できるようになっている。この場合の書式としては、数値データであれば数式を用い、文字列等の場合はリスト形式を用いる。更に、下段左端のボックスにおいて、同値クラスkを除外するかどうかを指定できるようになっている。ここで「除外する」とは、エラーチェック等が行われるために同値クラスk内の値が出現することがない場合に、そのことを明示しておくことにより、同値クラスkがテストされていないと判断されることを防止するための操作である。更にまた、下段中央のボックスに対して、同値クラスkの上限の境界値を、下段右端のボックスに対して、同値クラスkの下限の境界値をそれぞれ入力できるようになっている。但し、境界値が意味をなさない場合、例えば、同値クラスに上限がない場合や、変数の型が文字である場合等は、N/Aを入力する。
尚、この分析設定情報入力画面からの情報入力は、手入力で行ってもよいが、アプリケーションの設計で設計ツールやフレームワークを使用している場合には、その設計ツールやフレームワークからデータをインポートする等の連携を行うことにより入力の手間を軽減することも可能である。
そして、この分析設定情報入力画面からは、分析設定情報が入力され、分析設定情報記憶部53に記憶される。
図11は、この分析設定情報の一例を示した図である。
図中、1行目に示すように、分析設定情報には、画面URIと、パラメータ名と、分析対象フラグと、従属変数フラグと、同値分割フラグと、同値クラス条件kとが含まれる(k=1,2,…)。
画面URIは、分析設定情報入力画面に表示されていた画面URIであり、パラメータ名は、分析設定情報入力画面に表示されていた変数名に対応するパラメータ名である。
分析対象フラグは、対応するパラメータを分析対象とするか分析対象外とするかを示すフラグであり、「ON」が分析対象とすることを、「OFF」が分析対象外とすることを表す。従属変数フラグは、対応するパラメータが従属パラメータであるかどうかを示すフラグであり、「ON」が従属パラメータであることを、「OFF」が従属パラメータでないことを表す。これら2つのフラグには、分析設定情報入力画面のカテゴリの情報が反映される。
同値分割フラグは、対応するパラメータについて同値分割を行うかどうかを示すフラグであり、「ON」が同値分割を行うことを、「OFF」が同値分割を行わないことを表す。このフラグには、分析設定情報入力画面の同値分割情報の「同値分割あり」「同値分割なし」の設定が反映される。
同値クラス条件kは、同値クラスkの範囲及び境界値を決める条件であり、分析設定情報入力画面の同値クラス情報kの範囲の条件式及び境界値から生成される。2行目以降に示した括弧内の記号は、左側から、上限の境界値を決める条件(以下、「上限条件」という)、範囲を決める条件(以下、「範囲条件」という)、下限の境界値を決める条件(以下、「下限条件」という)を表す。
尚、図11では、図4のトレースログには存在しないパラメータとして、従属パラメータ「parx」、及び、繰り返し回数パラメータ「pary」も示している。
その後、ステップ412で、単独因子分析が行われ、単独因子分析結果情報が生成され、分析結果情報記憶部54に記憶される。
図12は、単独因子分析結果情報の一例を示した図である。
図中、1行目に示すように、単独因子分析結果情報には、画面URIと、パラメータ名と、パラメータ値と、同値クラスフラグkとが含まれる(k=1,2,…)。
画面URIは、分析対象の画面のURIであり、パラメータ名は、その画面上の分析対象のパラメータの名前であり、パラメータ値は、そのパラメータに入力された値である。これらの情報は、テストデータの1つのエントリから取り出されたものである。
同値クラスフラグkは、対応するパラメータ値が、対応する画面URI及びパラメータ名に分析設定情報で対応付けられた同値クラス条件kの上限条件、範囲条件、下限条件を満たすかどうかを示すフラグである。「ON」が各条件を満たすことを、「OFF」が各条件を満たさないことを表す。
このようにして単独因子分析結果情報が記憶されると、ステップ413で、単独因子分析結果画面が表示される。
図13は、単独因子分析結果画面(単一パラメータ)の一例を示した図である。
図示するように、単独因子分析結果画面(単一パラメータ)は、画面URIで指定された画面上の変数名で指定された変数に対して、カテゴリ、パラメータ名、同値分割情報、パラメータ値リスト、同値クラス網羅性、境界値網羅性を表示する。
カテゴリ、パラメータ名、同値分割情報については、図10で説明したものと同様なので、説明を省略する。
パラメータ値リストは、分析対象のパラメータに入力されたパラメータ値を同値クラスの範囲及び境界値ごとに分類して示したリストである。例えば、図12において、あるパラメータ値に対応する同値クラスフラグkが(ON,OFF,OFF)であれば、そのパラメータ値は同値クラスkの上限の境界値に対応する欄に表示し、あるパラメータ値に対応する同値クラスフラグkが(OFF,ON,OFF)であれば、そのパラメータ値は同値クラスkの範囲に対応する欄に表示し、あるパラメータ値に対応する同値クラスフラグkが(OFF,OFF,ON)であれば、そのパラメータ値は同値クラスkの下限の境界値に対応する欄に表示する。
尚、図10のカテゴリで「分析対象外」にチェックされた場合は、「境界値」、「同値クラス1の範囲」等の区別を表示せずに、入力されたパラメータ値をそのまま表示するようにしてもよい。また、図10の同値分割情報で「同値分割なし」にチェックされた場合も、「境界値」、「同値クラス1の範囲」等の区別を表示せずに、入力されたパラメータ値をそのまま表示する。更に、図10でN/Aが指定された境界値の行はグレイアウトする。
そして、このパラメータ値リストでは、テストされていない境界値又は同値クラスの範囲の行を強調表示するとよい。例えば、そのような行の背景色を赤色にすることが考えられる。
同値クラス網羅性は、分析対象のパラメータについて、同値クラスが幾つあって、そのうちテスト済の同値クラスが幾つあるかを示す情報である。
境界値の網羅性は、分析対象のパラメータについて、境界値が幾つあって、そのうちテスト済の境界値が幾つあるかを示す情報である。
また、図14は、単独因子分析結果画面(サマリー)の一例を示した図である。
図示するように、単独因子分析結果画面(サマリー)は、分析対象画面URI群に対して、全パラメータの同値クラス網羅性及び同値クラス網羅率、全パラメータの境界値網羅性及び境界値網羅率、パラメータごとの同値クラス網羅性及び同値クラス網羅率、パラメータごとの境界値網羅性及び境界値網羅率を表示する。
パラメータごとの同値クラス網羅性は、各パラメータについて、同値クラスが幾つあって、そのうちテスト済の同値クラスが幾つあるかを示す情報であり、パラメータごとの同値クラス網羅率は、それを百分率で表したものである。尚、図10のカテゴリで「分析対象外」にチェックされたパラメータは、ここでは表示されない。
全パラメータの同値クラス網羅性は、パラメータごとの同値クラス網羅性を全てのパラメータについて集計して得られた情報であり、全パラメータの同値クラス網羅率は、それを百分率で表したものである。
その後、ステップ415で、二次元因子分析が行われる。
二次元因子分析では、ある画面に出現するパラメータと別の画面に出現するパラメータとの組み合わせに関する網羅性を確認する必要がある場合がある。そこで、まず、画面遷移が網羅されているかを確認する必要があるので、画面遷移の分析結果を示す画面遷移実績画面が表示される。尚、画面遷移の分析は、例えば、図9のテストデータにおいて画面URIを時系列に追跡していくことにより行うことができる。
図15は、画面遷移実績画面の一例を示した図である。
図示するように、画面遷移実績画面は、探索モードと、画面遷移表とを表示する。
探索モードとしては、「無制限」、「最大遷移数指定」、「個別会話型探索」の何れかが選択できるようになっている。このうち、「無制限」とは、分析対象指定画面で指定した画面URI始点から画面URI終点までの全範囲で画面を探索するモードである。「最大遷移数指定」は、画面URI始点からの画面遷移数を限定することにより、なるべく不要な画面を巻き込まずに画面を探索するモードである。「個別会話型探索」とは、ある画面を指定してその遷移先画面を探索する操作を繰り返すことにより、注目する画面遷移パスのみを探索していくモードである。
画面遷移表は、遷移元画面URIの画面から遷移先画面URIの画面への遷移が何回行われたかを、遷移元画面URIの行と遷移先画面URIの列とが交差するセル内に表示したものである。ここで、遷移元画面URIには、遷移元画面を認識し易いように、遷移元画面IDを追加で表示している。或いは、headタグを表示するようにしてもよい。また、探索モードで「個別会話型探索」を選択した場合は、遷移先画面URIをクリックするとそれを遷移元画面URIとしてその画面からの遷移先画面の数を表示する行を追加するような構成を採用してもよい。
尚、この画面遷移実績画面に関しても、設計ツールやフレームワークとの連携が可能である。例えば、設計上あり得る画面遷移を設計ツールやフレームワークから取り込み、設計上あり得るのにテストされていない遷移をセルの背景の色を変えて表示することや、URIと画面名との対応を取り込み、URIを表示する際に画面名も表示して分かり易くすることが考えられる。
また、この画面遷移の分析で画面遷移が尽くされていないことが分かった場合、以降の二次元因子分析を行わずに画面遷移を尽くすよう促す方法もあるが、本実施の形態では、画面遷移を尽くしていなくても二次元因子分析を行うようにする。最初から全ての機能を実装したシステムを作成するのではなく、最低限動くシステムをまず作成し、テストと機能追加を繰り返しながらシステムを完成させていくような開発方法も考えられるからである。
そして、二次元因子分析が行われると、二次元因子分析結果情報が生成され、分析結果情報記憶部54に記憶される。
図16は、二次元因子分析結果情報の一例を示した図である。
図中、1行目に示すように、二次元因子分析結果情報には、画面URI1と、パラメータ名1と、パラメータ値1と、画面URI2と、パラメータ名2と、パラメータ値2と、同値クラスフラグk1―k2とが含まれる(k1=1,2,…、k2=1,2,…)。
画面URI1は、分析対象の2つの画面のうち一方の画面のURIであり、パラメータ名1は、その画面上の分析対象のパラメータの名前であり、パラメータ値1は、そのパラメータに入力された値である。画面URI2は、分析対象の2つの画面のうちもう一方の画面のURIであり、パラメータ名2は、その画面上の分析対象のパラメータの名前であり、パラメータ値2は、そのパラメータに入力された値である。これらの情報は、テストデータの1つのエントリから取り出されたものである。
同値クラスフラグk1−k2は、対応するパラメータ値1が、対応する画面URI1及びパラメータ名1に分析設定情報で対応付けられた同値クラス条件k1の範囲条件を満たし、かつ、対応するパラメータ値2が、対応する画面URI2及びパラメータ名2に分析設定情報で対応付けられた同値クラス条件k2の範囲条件を満たすかどうかを示すフラグである。「ON」が両範囲条件を満たすことを、「OFF」が何れかの範囲条件を満たさないことを表す。
このようにして二次元因子分析結果情報が記憶されると、ステップ416で、二次元因子分析結果画面が表示される。
図17は、二次元因子分析結果画面(単一組み合わせ)の一例を示した図である。
図示するように、二次元因子分析結果画面(単一組み合わせ)は、第1の画面URIで指定された画面上の第1のパラメータと第2の画面URIで指定された画面上の第2のパラメータの組み合わせに対して、因子組み合わせ総数、禁則組み合わせ総数、テスト済み組み合わせ総数、総テスト回数、テスト未実施組み合わせ総数、パラメータ値表を表示する。
パラメータ値表は、第1のパラメータに入力されたパラメータ値を含む同値クラスの行と、第2のパラメータに入力されたパラメータ値を含む同値クラスの列とが交差するセルに、第1のパラメータに入力されたパラメータ値と、第2のパラメータに入力されたパラメータ値とを、これらを識別可能な形式で表示したものである。図では、一例として、第1のパラメータに入力されたパラメータ値をスラッシュの左側に、第2のパラメータに入力されたパラメータ値をスラッシュの右側に示す形式を採用している。具体的には、図16の二次元因子分析結果情報の2行目では、同値クラスフラグ1−1が「ON」なので、第1のパラメータ(parb1)の同値クラス1の行と第2のパラメータ(parc1)の同値クラス1の列とが交差するセルに、「valb11/valc11」と表示する。
そして、このパラメータ値表では、テストされていない同値クラスの組み合わせに対応するセルを強調表示するとよい。例えば、そのようなセルには「未実施」と表示し、背景色を赤色にすることが考えられる。
また、特定の同値クラスの組み合わせがテスト不能であったり、テストする意味がなかったりする場合は、その組み合わせに対応するセルをクリックすることで、その組み合わせを除外する処理(禁則処理)を行う旨を入力できるようにする。この場合も、そのようなセルには「禁則」と表示し、背景色で禁則処理を行うことを示すことが考えられる。そして、「禁則」と表示された同値クラスの組み合わせは、因子組み合わせ総数から除外する。
即ち、パラメータ値表中の全てのセルの数18のうち、「禁則」と表示されたセルを除くセルの数17が、因子組み合わせ総数として表示される。
また、「禁則」と表示されたセルの数1が禁則組み合わせ総数として、「未実施」と表示されたセル及び「禁則」と表示されたセルを除くセルの数15がテスト済組み合わせ総数として、それぞれ表示される。
更に、第1のパラメータと第2のパラメータとの組み合わせについて28回のテストが行われているので、このテスト回数28が総テスト回数として表示される。
更にまた、「未実施」と表示されたセルの数2が、テスト未実施組み合わせ総数として表示される。
尚、この二次元因子分析結果画面に関しても、設計ツールやフレームワークとの連携が可能である。例えば、設計ツールやフレームワークから「禁則」となるパラメータの組み合わせの情報を取り込むことができれば、そのようにして取り込んだ情報に基づいて「禁則」の表示を行うことが考えられる。
また、図18は、二次元因子分析結果画面(サマリー)の一例を示した図である。
図示するように、二次元因子分析結果画面(サマリー)は、解析対象水準の網羅性及び網羅率、解析対象因子の網羅性及び網羅率、パラメータ組み合わせ表を表示する。
パラメータ組み合わせ表は、第1のパラメータの行と第2のパラメータの列とが交差するセルに、第1のパラメータの同値クラスと第2のパラメータの同値クラスの組み合わせのうち、幾つの組み合わせがテスト済みかを表示したものである。具体的には、分母が第1のパラメータの同値クラスと第2のパラメータの同値クラスの組み合わせの数を表し、分子がテスト済の同値クラスの組み合わせの数を表す。例えば、パラメータ「parb1」とパラメータ「parb2」の組み合わせについては、6個の同値クラスの組み合わせの全てがテスト済である。これに対し、パラメータ「parb1」とパラメータ「parc1」の組み合わせについては、図17に示したように、禁則を除く17個の同値クラスの組み合わせのうち15個の組み合わせのみがテスト済である。そこで、図では、前者のように未実施の組み合わせがないことをセルの背景色を白色とすることで示しており、後者のように未実施の組み合わせがあることをセルの背景色を黒色とすることで示している。
そして、このパラメータ組み合わせ表では、各セルをクリックすると、対応するパラメータの組み合わせに関する詳細画面が表示されるようになっている。例えば、パラメータ「parb1」の行とパラメータ「parc1」の行とが交差するセルをクリックすると、図17の画面が表示される。
解析対象水準の網羅性は、パラメータの組み合わせが幾つあって、そのうち同値クラスの全組み合わせがテスト済のパラメータの組み合わせが幾つあるかを示す情報であり、解析対象水準の網羅率は、それを百分率で表したものである。即ち、分母が、組み合わせ図の斜め線の右上部分のセルの数を表し、分子が、組み合わせ図の白色背景で数値が表示されたセルの数を表す。
解析対象因子の網羅性は、同値クラスの組み合わせが幾つあって、そのうちテスト済の同値クラスの組み合わせが幾つあるかを示す情報であり、解析対象因子の網羅率は、それを百分率で表したものである。即ち、分母が、組み合わせ図のセル内のスラッシュの右側の数の合計を表し、分子が、組み合わせ図のセル内の左側の数の合計を表す。
以上、本発明の実施の形態の構成及び動作について具体的に説明した。
次に、まとめとして、本発明の実施の形態の構成及び効果について述べる。
1.本実施の形態では、テストケースの実行結果から、入力されたパラメータ値等の因子となり得るデータを解析し、組み合わせテストで同値分割法やオールペア法を適用した場合のテスト網羅性を基準としたテスト網羅率を算出するようにした。また、網羅率を向上させるためにはどのような組み合わせのテストケースを追加実行すればよいかの情報も提供するようにした。
これにより、テスト設計の工数を抑えることができ、気軽にテストを開始することができるようになる。また、テスト可能な機能のみで網羅率を算出しその範囲での網羅率を向上することが可能となるので、テストを繰り返しながら実装する機能を増やしていくアジャイル開発との親和性がよい。
2.本実施の形態では、特定の画面又は画面遷移を起点に解析を行うようにし、インタラクティブに解析対象を追加するためのインターフェイス(分析対象指定画面等)を設けた。
これにより、重要な部分から解析を開始し、注目する必要のない部分は解析対象から除外することで、解析対象の組み合わせ爆発を回避することができる。
3.本実施の形態では、解析対象因子を選択式にし、対話形式で追加又は削除するためのインターフェイス(分析設定情報入力画面等)を設けた。
これにより、重要な因子を優先的に解析するという効率的な解析が可能となった。即ち、パラメータには因子としては無意味なものがあり、それらを自動的に含めると組み合わせ爆発が起き易いが、このような事態を回避できるようになった。また、対話式に解析対象のパラメータの情報を追加するので、必要に応じて解析の内容を深めることもできる。
4.本実施の形態では、同じ画面の通過回数をカウントし、同じ画面を表示する操作の繰り返し回数も因子として網羅率の解析に統合するようにした。
これにより、ウェブアプリケーションによくある操作の繰り返しを組み合わせの因子として網羅性を判断できるようになる。
5.本実施の形態では、ウェブシステム10からの応答として表示された画面から抽出したパラメータも因子として網羅率の解析に統合するようにした。
これにより、ウェブシステム10へ送信されたパラメータのみを用いる手法では不可能であった従属パラメータとの組み合わせの網羅率の判断が可能となる。
6.本実施の形態では、禁則処理(テスト不能又はテスト不要の組み合わせを除外する処理)を実行可能なテスト済一覧画面(二次元因子分析結果画面(単一組み合わせ)等)を表示するようにした。
これにより、全ての組み合わせを対象に机上で行わなければならなかった禁則処理を、テストされていない組み合わせのみを対象にそれがテスト不能又はテスト不要な組み合わせであるかを判断することによって行えるようになるので、禁則処理が容易になる。
尚、本実施の形態では述べなかったが、画面遷移も1つの因子として網羅率の解析に統合してもよい。これにより、画面遷移と入力されたパラメータ値との組み合わせについての網羅性を判断できるようになる。
また、システムから応答として表示された画面から、埋め込まれたボタンの名前とダイレクトリンクを読み取り、そのうちのどれがテスト中に実行されたかを表示するようにしてもよい。これにより、複数のボタンが画面にある場合、入力パラメータとボタンの組み合わせも解析できる。ダイレクトリンクがどれだけテストされたかの網羅性も示すことができる。
ところで、本実施の形態では、最初の解析をおこなうまでに、ある程度の網羅性を持ったテストを実行する必要がある。特に、アプリケーション機能の解析対象部分での画面の網羅性(解析が必要な画面が最低1回は出現すること)が必要である。しかしながら、通常のシステム開発では画面設計ドキュメントがあるので、この点は対応可能である。例えば、網羅率計測装置40での画面遷移解析結果と画面設計ドキュメントとを比較し、出現していない画面がないことを確認すればよい。
最後に、本実施の形態を適用するのに好適なコンピュータのハードウェア構成について説明する。図19は、このようなコンピュータのハードウェア構成の一例を示した図である。図示するように、コンピュータは、演算手段であるCPU(Central Processing Unit)90aと、M/B(マザーボード)チップセット90bを介してCPU90aに接続されたメインメモリ90cと、同じくM/Bチップセット90bを介してCPU90aに接続された表示機構90dとを備える。また、M/Bチップセット90bには、ブリッジ回路90eを介して、ネットワークインターフェイス90fと、磁気ディスク装置(HDD)90gと、音声機構90hと、キーボード/マウス90iと、フレキシブルディスクドライブ90jとが接続されている。
尚、図19において、各構成要素は、バスを介して接続される。例えば、CPU90aとM/Bチップセット90bの間や、M/Bチップセット90bとメインメモリ90cの間は、CPUバスを介して接続される。また、M/Bチップセット90bと表示機構90dとの間は、AGP(Accelerated Graphics Port)を介して接続されてもよいが、表示機構90dがPCI Express対応のビデオカードを含む場合、M/Bチップセット90bとこのビデオカードの間は、PCI Express(PCIe)バスを介して接続される。また、ブリッジ回路90eと接続する場合、ネットワークインターフェイス90fについては、例えば、PCI Expressを用いることができる。また、磁気ディスク装置90gについては、例えば、シリアルATA(AT Attachment)、パラレル転送のATA、PCI(Peripheral Components Interconnect)を用いることができる。更に、キーボード/マウス90i、及び、フレキシブルディスクドライブ90jについては、USB(Universal Serial Bus)を用いることができる。
ここで、本発明は、全てハードウェアで実現してもよいし、全てソフトウェアで実現してもよい。また、ハードウェア及びソフトウェアの両方により実現することも可能である。また、本発明は、コンピュータ、データ処理システム、コンピュータプログラムとして実現することができる。このコンピュータプログラムは、コンピュータにより読取り可能な媒体に記憶され、提供され得る。ここで、媒体としては、電子的、磁気的、光学的、電磁的、赤外線又は半導体システム(装置又は機器)、或いは、伝搬媒体が考えられる。また、コンピュータにより読取り可能な媒体としては、半導体、ソリッドステート記憶装置、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、リジッド磁気ディスク、及び光ディスクが例示される。現時点における光ディスクの例には、コンパクトディスク−リードオンリーメモリ(CD−ROM)、コンパクトディスク−リード/ライト(CD−R/W)及びDVDが含まれる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
10…ウェブシステム、20,69…クライアント、30…ネットワークトレーサ、35…トレースログ記憶装置、40…網羅率計測装置、41…トレースログ抽出部、42…パラメータ抽出部、43…テストデータ生成部、44…単独因子分析部、45…二次元因子分析部、46…入出力制御部、49…コンソール、51…分析対象トレースログ記憶部、52…テストデータ記憶部、53…分析設定情報記憶部、54…分析結果情報記憶部、60…画面再生装置

Claims (9)

  1. サーバで動作するソフトウェアのテストをクライアントから行う際の当該テストの網羅性を評価する装置であって、
    前記クライアントに表示された特定の画面を用いた複数回のテストのそれぞれにおいて当該特定の画面上の特定の入力フィールドに入力され前記サーバへ送信された入力値からなる複数の入力値を含む当該複数回のテストのログデータを記憶する記憶部と、
    前記記憶部に記憶された前記ログデータに含まれる前記複数の入力値が、前記複数回のテストにおいて前記特定の入力フィールドに入力すべき値のどの程度を網羅しているかを解析する解析部と、
    前記解析部による解析結果を出力する出力部と
    を含む、装置。
  2. 前記特定の画面上の複数の入力フィールドからの前記特定の入力フィールドの選択を受け付ける受付部を更に含む、請求項1の装置。
  3. 前記記憶部は、前記複数回のテストのそれぞれにおいて前記サーバで前記入力値に応じて設定され前記クライアントへ送信された設定値からなる複数の設定値を更に含む前記ログデータを記憶し、
    前記解析部は、前記記憶部に記憶された前記ログデータに含まれる前記複数の設定値が、前記複数回のテストにおいて前記特定の入力フィールドに入力された値に応じて設定されるべき値のどの程度を網羅しているかを解析する、請求項1又は請求項2の装置。
  4. 前記記憶部は、前記複数回のテストのそれぞれにおいて前記特定の画面の表示が繰り返された回数が分かるように前記ログデータを記憶し、
    前記解析部は、前記記憶部に記憶された前記ログデータから得られる前記特定の画面の表示の複数の繰り返し回数が、前記複数回のテストにおいて当該特定の画面の表示を繰り返すべき回数のどの程度を網羅しているかを解析する、請求項1乃至請求項3の何れかの装置。
  5. サーバで動作するソフトウェアのテストをクライアントから行う際の当該テストの網羅性を評価する装置であって、
    前記クライアントに表示された少なくとも1つの画面を用いた複数回のテストのそれぞれにおいて当該少なくとも1つの画面上の2つの入力フィールドに入力され前記サーバへ送信された入力値の組からなる複数の入力値の組を含む当該複数回のテストのログデータを記憶する記憶部と、
    前記記憶部に記憶された前記ログデータに含まれる前記複数の入力値の組が、前記複数回のテストにおいて前記2つの入力フィールドに入力すべき値の組のどの程度を網羅しているかを解析する解析部と、
    前記解析部による解析結果を出力する出力部と
    を含む、装置。
  6. 前記複数の入力値の組のうちテスト対象から除外すべき特定の値の組の指定を受け付ける受付部を更に備え、
    前記解析部は、前記記憶部に記憶された前記ログデータに含まれる前記複数の入力値の組が、前記複数回のテストにおいて前記2つの入力フィールドに入力すべき値の組から前記特定の値の組を除外して得られる値の組のどの程度を網羅しているかを解析する、請求項5の装置。
  7. サーバで動作するソフトウェアのテストをクライアントから行う際の当該テストの網羅性を評価する装置であって、
    前記クライアントに表示された少なくとも1つの画面を用いた複数回のテストのそれぞれについて、当該少なくとも1つの画面上の複数の入力フィールドの各入力フィールドと当該各入力フィールドに入力され前記サーバへ送信された入力値とを対応付けた対応情報を含む当該複数回のテストのログデータを記憶する記憶部と、
    前記記憶部に記憶された前記ログデータに含まれる前記対応情報から前記複数の入力フィールドを抽出する抽出部と、
    前記抽出部により抽出された前記複数の入力フィールドからの少なくとも2つの入力フィールドの選択を受け付ける受付部と、
    前記少なくとも2つの入力フィールドのうちの特定の入力フィールドに前記対応情報において対応付けられた入力値からなる複数の入力値が、前記複数回のテストにおいて当該特定の入力フィールドに入力すべき値のどの程度を網羅しているかを解析する第1の解析部と、
    前記少なくとも2つの入力フィールドのうちの第1の入力フィールドに前記対応情報において対応付けられた入力値及び前記少なくとも2つの入力フィールドのうちの第2の入力フィールドに前記対応情報において対応付けられた入力値の組からなる複数の入力値の組が、前記複数回のテストにおいて当該第1の入力フィールド及び当該第2の入力フィールドに入力すべき値の組のどの程度を網羅しているかを解析する第2の解析部と、
    前記第1の解析部による解析結果と前記第2の解析部による解析結果とを出力する出力部と
    を含む、装置。
  8. サーバで動作するソフトウェアのテストをクライアントから行う際の当該テストの網羅性を評価する方法であって、
    前記クライアントに表示された特定の画面を用いた複数回のテストのそれぞれにおいて当該特定の画面上の特定の入力フィールドに入力され前記サーバへ送信された入力値からなる複数の入力値を含む当該複数回のテストのログデータを記憶部に記憶するステップと、
    前記記憶部に記憶された前記ログデータに含まれる前記複数の入力値が、前記複数回のテストにおいて前記特定の入力フィールドに入力すべき値のどの程度を網羅しているかの解析を行うステップと、
    前記解析の結果を出力するステップと
    を含む、方法。
  9. サーバで動作するソフトウェアのテストをクライアントから行う際の当該テストの網羅性を評価する装置としてコンピュータを機能させるプログラムであって、
    前記コンピュータを、
    前記クライアントに表示された特定の画面を用いた複数回のテストのそれぞれにおいて当該特定の画面上の特定の入力フィールドに入力され前記サーバへ送信された入力値からなる複数の入力値を含む当該複数回のテストのログデータを記憶部に書き込む書込み部と、
    前記記憶部に書き込まれた前記ログデータに含まれる前記複数の入力値が、前記複数回のテストにおいて前記特定の入力フィールドに入力すべき値のどの程度を網羅しているかを解析する解析部と、
    前記解析部による解析結果を出力する出力部と
    して機能させる、プログラム。
JP2010287341A 2010-12-24 2010-12-24 テストの網羅性を評価する装置及び方法 Expired - Fee Related JP5767471B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010287341A JP5767471B2 (ja) 2010-12-24 2010-12-24 テストの網羅性を評価する装置及び方法
US13/328,151 US9164878B2 (en) 2010-12-24 2011-12-16 Evaluating coverage of a software test

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010287341A JP5767471B2 (ja) 2010-12-24 2010-12-24 テストの網羅性を評価する装置及び方法

Publications (2)

Publication Number Publication Date
JP2012133721A true JP2012133721A (ja) 2012-07-12
JP5767471B2 JP5767471B2 (ja) 2015-08-19

Family

ID=46318628

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010287341A Expired - Fee Related JP5767471B2 (ja) 2010-12-24 2010-12-24 テストの網羅性を評価する装置及び方法

Country Status (2)

Country Link
US (1) US9164878B2 (ja)
JP (1) JP5767471B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016048471A (ja) * 2014-08-27 2016-04-07 日本電気株式会社 アプリケーション開発支援装置、そのデータ処理方法、およびプログラム
WO2020085129A1 (ja) * 2018-10-25 2020-04-30 日本電信電話株式会社 テストデータ生成装置、テストデータ生成方法及びプログラム
WO2020209227A1 (ja) * 2019-04-09 2020-10-15 日本電信電話株式会社 解析装置、解析方法、及びプログラム
WO2022230188A1 (ja) * 2021-04-30 2022-11-03 日本電信電話株式会社 テスト支援装置、テスト支援方法及びプログラム

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5767471B2 (ja) * 2010-12-24 2015-08-19 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テストの網羅性を評価する装置及び方法
CN103246602B (zh) * 2012-02-14 2017-03-01 阿里巴巴集团控股有限公司 代码覆盖率确定方法及系统、代码覆盖检测方法及系统
WO2014171950A1 (en) * 2013-04-19 2014-10-23 Hewlett-Packard Development Company, L.P. Unused parameters of application under test
CN103235757B (zh) * 2013-04-28 2016-01-06 中国工商银行股份有限公司 基于自动化造数对输入域测试对象进行测试的装置和方法
US9286195B2 (en) 2013-09-23 2016-03-15 Globalfoundries Inc. Derivation of generalized test cases
US9454467B2 (en) * 2013-12-12 2016-09-27 Tencent Technology (Shenzhen) Company Limited Method and apparatus for mining test coverage data
US9405662B2 (en) 2013-12-18 2016-08-02 Google Inc. Process for displaying test coverage data during code reviews
US10552300B2 (en) * 2015-04-07 2020-02-04 United States Of America, As Represented By The Secretary Of Commerce Oracle-free match testing of a program using covering arrays and equivalence classes
CN106155897B (zh) * 2015-04-16 2020-12-08 腾讯科技(深圳)有限公司 一种业务处理方法及装置
CN107038108B (zh) * 2015-08-20 2020-11-03 腾讯科技(深圳)有限公司 软件的测试方法和装置
EP3365790A1 (en) * 2015-10-19 2018-08-29 Leaptest A/S Method, apparatus and system for task automation of computer operations based on visual flowchart script design and image/text recognition
US10175960B2 (en) * 2015-11-13 2019-01-08 International Business Machines Corporation User interface area coverage
US9703683B2 (en) 2015-11-24 2017-07-11 International Business Machines Corporation Software testing coverage
US10133656B2 (en) * 2016-02-08 2018-11-20 Tata Consultancy Services Limited Systems and methods for generating optimized covering arrays
CN106874187B (zh) * 2016-12-29 2020-09-11 腾讯科技(深圳)有限公司 代码覆盖率收集方法和装置
US10831509B2 (en) 2017-02-23 2020-11-10 Ab Initio Technology Llc Dynamic execution of parameterized applications for the processing of keyed network data streams
US11947978B2 (en) 2017-02-23 2024-04-02 Ab Initio Technology Llc Dynamic execution of parameterized applications for the processing of keyed network data streams
CN107341109B (zh) * 2017-07-07 2021-07-16 中国银行股份有限公司 一种测试数据的生成方法和系统
US10630480B2 (en) * 2017-11-29 2020-04-21 Oracle International Corporation Trusted client security factor-based authorizations at a server
KR102180592B1 (ko) * 2018-12-14 2020-11-18 주식회사 엘지씨엔에스 It 시스템 검증 방법 및 시스템
CN111782532B (zh) * 2020-07-02 2022-04-05 北京航空航天大学 一种基于网络异常节点分析的软件故障定位方法及系统
CN112162929B (zh) * 2020-10-15 2022-02-15 珠海格力电器股份有限公司 测试数据生成方法、装置、计算机设备和存储介质
CN112506800B (zh) * 2020-12-22 2023-08-18 北京百度网讯科技有限公司 测试代码的方法、装置、设备、介质和程序产品

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6324425A (ja) * 1986-07-17 1988-02-01 Nec Corp テスト網羅状態検出方式
JPS63148339A (ja) * 1986-12-12 1988-06-21 Fujitsu Ltd プログラムテスト処理方式
JPH03262050A (ja) * 1990-03-13 1991-11-21 Fujitsu Ltd パラメータパターンデータ作成装置
JPH04275643A (ja) * 1991-03-01 1992-10-01 Nec Corp プログラムのテストシステム
US6044398A (en) * 1997-11-21 2000-03-28 International Business Machines Corporation Virtual dynamic browsing system and method for automated web server and testing
JP2003044318A (ja) * 2001-08-02 2003-02-14 Fujitsu Ltd テスト支援プログラムおよびテスト支援方法
US20030120463A1 (en) * 2001-12-21 2003-06-26 International Business Machines Corporation Scenario based testing and load generation for web applications
JP2005107823A (ja) * 2003-09-30 2005-04-21 Fujitsu Ltd 画面遷移図モデルを用いたソフトウエアテストプログラム、方法及び装置
JP2006227958A (ja) * 2005-02-18 2006-08-31 Nomura Research Institute Ltd テストデータ生成システム及びテストデータ生成方法
JP2009181560A (ja) * 2008-02-01 2009-08-13 Anritsu Engineering Kk 試験項目生成装置及び方法、ネットワーク試験支援装置及び方法、試験項目生成装置及びネットワーク試験支援装置を実現するためのコンピュータプログラム
JP2010113551A (ja) * 2008-11-06 2010-05-20 Kyushu Hitachi Maxell Ltd テスト計画表作成装置及びそのプログラム

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6212675B1 (en) * 1998-09-16 2001-04-03 International Business Machines Corporation Presentation of visual program test coverage information
JP2000112784A (ja) 1998-09-30 2000-04-21 Hitachi Software Eng Co Ltd プログラムテスト支援装置及びプログラムテスト支援プログラムを記録した記録媒体
JP2000267888A (ja) 1999-03-19 2000-09-29 Ntt Communicationware Corp ソフトウェア試験実施網羅率測定方法、ソフトウェア試験実施網羅率測定装置および記録媒体
US7114111B2 (en) * 1999-06-08 2006-09-26 Cadence Design (Isreal) Ii Ltd. Method and apparatus for maximizing test coverage
US7912978B2 (en) * 2000-07-19 2011-03-22 Akamai Technologies, Inc. Method for determining metrics of a content delivery and global traffic management network
AU2002317618A1 (en) * 2001-08-06 2003-02-24 Mercury Interactive Corporation System and method for automated analysis of load testing results
US7024589B2 (en) * 2002-06-14 2006-04-04 International Business Machines Corporation Reducing the complexity of finite state machine test generation using combinatorial designs
US7065677B1 (en) * 2003-04-10 2006-06-20 Microsoft Corporation Method for testing operating system components
US7685273B1 (en) * 2004-03-31 2010-03-23 Compuware Corporation Methods and apparatus for collecting and displaying performance metrics from a web site
US8065410B1 (en) * 2004-03-31 2011-11-22 Compuware Corporation Methods and apparatus for collecting performance metrics from a web site
JP2006113993A (ja) 2004-10-15 2006-04-27 Odaiba Systems:Kk インターネットシステムのためのテストシステム
US7792919B2 (en) * 2005-04-15 2010-09-07 Microsoft Corporation Methods and apparatus for performing diagnostics of web applications and services
JP2007026360A (ja) 2005-07-21 2007-02-01 Jfe Systems Inc テスト支援方法及び装置
US8255861B2 (en) * 2005-10-17 2012-08-28 Freescale Semiconductor, Inc. Efficient replaying of autograded coverage regressions and performance verification with directed testcases
JP4516001B2 (ja) 2005-11-14 2010-08-04 富士通株式会社 ソフトウェアテスト管理プログラム、ソフトウェアテスト管理装置、ソフトウェアテスト管理方法
US7412349B2 (en) * 2005-12-09 2008-08-12 Sap Ag Interface for series of tests
JP2007328447A (ja) 2006-06-06 2007-12-20 Sharp Corp ソフトウェア試験項目選択装置、ソフトウェア試験項目選択プログラム、ソフトウェア試験項目選択プログラムが格納された記憶媒体およびソフトウェア試験項目選択方法
US7904890B1 (en) * 2006-09-19 2011-03-08 Oracle America, Inc. Software test coverage metrics
JP2008158634A (ja) 2006-12-21 2008-07-10 Nec Corp 情報処理装置、ソフトウェアトレースデータ記録方法及びソフトウェアトレースデータ記録プログラム
JP2008262473A (ja) 2007-04-13 2008-10-30 Mitsubishi Electric Corp 設備保全管理システム
US8024709B2 (en) * 2007-05-07 2011-09-20 Oracle International Corporation Facilitating assessment of a test suite of a software product
JP2009157456A (ja) * 2007-12-25 2009-07-16 Toshiba Corp プログラム検証装置、プログラム検証方法、検証プログラム
JP5104545B2 (ja) 2008-05-27 2012-12-19 富士通株式会社 検証データ作成方法,検証データ作成装置及び検証データ作成プログラム
JP4893695B2 (ja) 2008-06-10 2012-03-07 トヨタ自動車株式会社 カバレージ測定装置、カバレージ測定方法、カバレージ測定プログラム
US8185910B2 (en) * 2008-08-27 2012-05-22 Eric Sven-Johan Swildens Method and system for testing interactions between web clients and networked servers
WO2010041973A1 (en) * 2008-10-09 2010-04-15 Siemens Aktiengesellschaft Method and apparatus for test coverage analysis
US8141158B2 (en) * 2008-12-31 2012-03-20 International Business Machines Corporation Measuring coverage of application inputs for advanced web application security testing
US20100287534A1 (en) * 2009-05-07 2010-11-11 Microsoft Corporation Test case analysis and clustering
US8495575B2 (en) * 2009-12-09 2013-07-23 Sap Ag Systems and methods for analyzing test coverage at an organizational level
US8561021B2 (en) * 2010-02-08 2013-10-15 Microsoft Corporation Test code qualitative evaluation
US8479171B2 (en) * 2010-05-24 2013-07-02 Fujitsu Limited Generating test sets using intelligent variable selection and test set compaction
JP5767471B2 (ja) * 2010-12-24 2015-08-19 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テストの網羅性を評価する装置及び方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6324425A (ja) * 1986-07-17 1988-02-01 Nec Corp テスト網羅状態検出方式
JPS63148339A (ja) * 1986-12-12 1988-06-21 Fujitsu Ltd プログラムテスト処理方式
JPH03262050A (ja) * 1990-03-13 1991-11-21 Fujitsu Ltd パラメータパターンデータ作成装置
JPH04275643A (ja) * 1991-03-01 1992-10-01 Nec Corp プログラムのテストシステム
US6044398A (en) * 1997-11-21 2000-03-28 International Business Machines Corporation Virtual dynamic browsing system and method for automated web server and testing
JP2003044318A (ja) * 2001-08-02 2003-02-14 Fujitsu Ltd テスト支援プログラムおよびテスト支援方法
US20030120463A1 (en) * 2001-12-21 2003-06-26 International Business Machines Corporation Scenario based testing and load generation for web applications
JP2005107823A (ja) * 2003-09-30 2005-04-21 Fujitsu Ltd 画面遷移図モデルを用いたソフトウエアテストプログラム、方法及び装置
JP2006227958A (ja) * 2005-02-18 2006-08-31 Nomura Research Institute Ltd テストデータ生成システム及びテストデータ生成方法
JP2009181560A (ja) * 2008-02-01 2009-08-13 Anritsu Engineering Kk 試験項目生成装置及び方法、ネットワーク試験支援装置及び方法、試験項目生成装置及びネットワーク試験支援装置を実現するためのコンピュータプログラム
JP2010113551A (ja) * 2008-11-06 2010-05-20 Kyushu Hitachi Maxell Ltd テスト計画表作成装置及びそのプログラム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016048471A (ja) * 2014-08-27 2016-04-07 日本電気株式会社 アプリケーション開発支援装置、そのデータ処理方法、およびプログラム
WO2020085129A1 (ja) * 2018-10-25 2020-04-30 日本電信電話株式会社 テストデータ生成装置、テストデータ生成方法及びプログラム
JP2020067859A (ja) * 2018-10-25 2020-04-30 日本電信電話株式会社 テストデータ生成装置、テストデータ生成方法及びプログラム
JP7070328B2 (ja) 2018-10-25 2022-05-18 日本電信電話株式会社 テストデータ生成装置、テストデータ生成方法及びプログラム
WO2020209227A1 (ja) * 2019-04-09 2020-10-15 日本電信電話株式会社 解析装置、解析方法、及びプログラム
JP2020173570A (ja) * 2019-04-09 2020-10-22 日本電信電話株式会社 解析装置、解析方法、及びプログラム
JP7211228B2 (ja) 2019-04-09 2023-01-24 日本電信電話株式会社 解析装置、解析方法、及びプログラム
WO2022230188A1 (ja) * 2021-04-30 2022-11-03 日本電信電話株式会社 テスト支援装置、テスト支援方法及びプログラム

Also Published As

Publication number Publication date
JP5767471B2 (ja) 2015-08-19
US9164878B2 (en) 2015-10-20
US20120167059A1 (en) 2012-06-28

Similar Documents

Publication Publication Date Title
JP5767471B2 (ja) テストの網羅性を評価する装置及び方法
US9251046B2 (en) Method and system for generating and processing black box test cases
US9454466B2 (en) Explaining partially illegal combinations in combinatorial models
US20060229860A1 (en) Efficient presentation of functional coverage results
US20140372083A1 (en) Derived restrictions in a combinatorial model
US20080008101A1 (en) Computer-readable medium storing test support program, test support apparatus, and test support method
JP5377534B2 (ja) Gui要素を識別する方法、装置およびシステム
WO2017123203A1 (en) Determining visual testing coverages
CN112035376B (zh) 一种生成覆盖率报告的方法、装置、设备及存储介质
US7827209B2 (en) Data object based data analysis
US20070092857A1 (en) Method and apparatus for supporting training, and computer product
CN106959919B (zh) 基于测试路径图的软件测试方法及装置
CN113448845A (zh) 一种ui自动化测试方法及系统
CN115562656A (zh) 页面的生成方法、装置、存储介质及计算机设备
Dashuber et al. Trace visualization within the software city metaphor: Controlled experiments on program comprehension
CN112667517A (zh) 自动化测试脚本的获取方法、装置、设备及存储介质
CN105550250B (zh) 一种访问日志的处理方法及装置
CN111708712A (zh) 用户行为测试用例的生成方法、流量回放方法及电子设备
CN107609401A (zh) 自动测试方法及装置
JP5772233B2 (ja) プログラム実行トレース情報集約プログラム、装置、及び方法
JP4176691B2 (ja) 問題作成プログラムおよび問題作成装置
CN111104328A (zh) 用例生成方法、装置、计算机设备和可读存储介质
CN112799956B (zh) 资产识别能力测试方法、装置及系统装置
CN117077592B (zh) 回归数据监控方法、监控装置及监控系统
US8914757B1 (en) Explaining illegal combinations in combinatorial models

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131003

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140916

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141209

TRDD Decision of grant or rejection written
RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20150602

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150602

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150619

R150 Certificate of patent or registration of utility model

Ref document number: 5767471

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees