JP5198132B2 - 状態遷移テスト支援装置、状態遷移テスト支援プログラム、および状態遷移テスト支援方法 - Google Patents

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

Info

Publication number
JP5198132B2
JP5198132B2 JP2008112490A JP2008112490A JP5198132B2 JP 5198132 B2 JP5198132 B2 JP 5198132B2 JP 2008112490 A JP2008112490 A JP 2008112490A JP 2008112490 A JP2008112490 A JP 2008112490A JP 5198132 B2 JP5198132 B2 JP 5198132B2
Authority
JP
Japan
Prior art keywords
test
state transition
executed
cell
case
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.)
Expired - Fee Related
Application number
JP2008112490A
Other languages
English (en)
Other versions
JP2009265810A (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.)
Screen Holdings Co Ltd
Dainippon Screen Manufacturing Co Ltd
Original Assignee
Screen Holdings Co Ltd
Dainippon Screen Manufacturing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Screen Holdings Co Ltd, Dainippon Screen Manufacturing Co Ltd filed Critical Screen Holdings Co Ltd
Priority to JP2008112490A priority Critical patent/JP5198132B2/ja
Priority to US12/403,658 priority patent/US20090271661A1/en
Publication of JP2009265810A publication Critical patent/JP2009265810A/ja
Application granted granted Critical
Publication of JP5198132B2 publication Critical patent/JP5198132B2/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/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、ソフトウェアシステムの設計・開発・保守等を効率的に行うことを支援する装置に関し、更に詳しくは、システムの内部状態の遷移を記述した状態遷移表を用いたテスト(以下、「状態遷移テスト」という。)の効率的な実行を支援する状態遷移テスト支援装置に関する。
従来より、ソフトウェアシステムの設計・開発に際して、システムの内部状態の遷移(変化)を記述した状態遷移表が作成されることがよくある。この状態遷移表は縦横の線で区切られた複数のマス目(各マス目は「セル」と呼ばれている。)で構成され、各列(あるいは各行)にはシステムの取り得る内部状態が対応付けられ、各行(あるいは各列)にはシステムで生じ得るイベントが対応付けられる。そして、列と行とが交差するセルには、当該列に対応付けられている内部状態のときに当該行に対応付けられているイベントが生じた場合に「いかなる処理(「振舞い」、「アクション」などと呼ばれている。)が実行され、どの内部状態に遷移するのか」が記述(入力)される。この状態遷移表により、「システムの内部状態とイベントとの組み合わせ」に対応するシステムの動作が漏れなく表され、開発漏れによる異常動作の発生等が抑制される。特に、組み込み系のソフトウェアシステム(産業機器、家庭用電化製品、携帯電話などの電子機器に組み込まれマイコン上で動作するソフトウェアシステム)の設計・開発においては、状態遷移表を用いてシステムの動作を記述することおよび状態遷移のテストをすることは必須とされている。
状態遷移表に関する従来技術としては、例えば以下のようなものがある。特開平1−261726号公報には、状態の遷移関係をツリー状に表現することにより状態遷移表の編集作業を効率的に行う方式(状態遷移情報編集方式)についての開示がなされている。特開平6−75817号公報には、状態遷移を矢印を用いて表示することによりデバッグの効率化を図る方法(状態遷移ルールの動作履歴表示方法)についての開示がなされている。特開平11−110351号公報には、状態遷移表に基づいて或る状態から他の或る状態への遷移を制御する方法(状態遷移制御方法)についての開示がなされている。特開2002−230062号公報には、状態遷移表形式に入力された処理内容(プログラム)を実行可能なシステムに変換するシステム生成手段を備えることによりシステム設計を支援する装置(設計支援装置)についての開示がなされている。特開2006−112852号公報には、複数のシナリオ生成アルゴリズムで生成されたシナリオを組み合わせることによってテストシナリオを作成する方法(テストシナリオ作成方法)についての開示がなされている。
特開平1−261726号公報 特開平6−75817号公報 特開平11−110351号公報 特開2002−230062号公報 特開2006−112852号公報
状態遷移テストの実行に関しては、従来より次のような問題点がある。システムの設計者と状態遷移テストの実施者が異なる場合、テスト実施者にとっては、テストを開始する「システムの内部状態とイベントとの組み合わせ」を特定することが困難であり、テスト開始後についても、上記組み合わせを見つけることが困難である。また、様々な状態遷移が生じ得るシステムの場合には、どのルート(後述のテストパス)についてのテストが実行済みであるのかが把握されにくいので、状態遷移テストを効率的に実行することが困難である。さらに、テストでエラーが生じたときに、そのエラーの再現手順の把握が困難である。以上のように、「状態遷移テストをいかにして効率的に実行するか」という点が課題となっている。
上記特許文献1〜4には、状態遷移の制御あるいは状態遷移表の編集等に関する記載はなされているが、状態遷移テストについては言及されていない。また、上記特許文献5では、テストシナリオの作成については言及されているが、状態遷移テストが効率的に行われるわけではない。
そこで、本発明では、状態遷移テストの効率的な実行を支援する状態遷移テスト支援装置を提供することを目的とする。
第1の発明は、システムの取り得る内部状態の遷移についてのテストであって複数のテストケースからなる状態遷移テストの実行を支援する状態遷移テスト支援装置であって、
横方向又は縦方向の一方の方向に前記内部状態を列記するために設けられた内部状態用セルと、横方向又は縦方向のうち前記内部状態用セルとは異なる方向に前記システムで生じ得るイベントを列記するために設けられたイベント用セルと、前記内部状態用セルに記述されている内部状態と前記イベント用セルに記述されているイベントとの組み合わせに対応する情報として処理内容と遷移先の内部状態とを特定するための動作特定情報または前記システムにおいて生じることのない内部状態とイベントとの組み合わせであることを示す利用不可情報を記述するためにマトリクス状に設けられ前記状態遷移テストに含まれるテストケースに対応付けられ得る組み合わせ情報用セルとから成る状態遷移表を生成する状態遷移表生成手段と、
前記組み合わせ情報用セルへの前記動作特定情報の入力を受け付ける動作特定情報入力受付手段と、
前記動作特定情報入力受付手段によって受け付けられた動作特定情報に基づいて、前記状態遷移テストとして実行されるべき一連のテストケースからなるテストパスを生成するテストパス生成手段と、
前記テストパス生成手段によって生成されたテストパスに含まれる各テストケースについてのテスト結果と、テストが実行された順序を特定するための実行順特定情報とを保持するためのテスト結果保持手段と、
各テストケースについての外部から入力されるテスト結果を前記実行順特定情報とともに前記テスト結果保持手段に記録するテスト結果記録手段と
前記テスト結果保持手段に保持されているテスト結果に基づいて、テストが実行されていないテストケースを含むテストパスが複数ある場合に当該複数のテストパスを表示するテストパス候補表示手段と、
前記テスト結果保持手段に保持されているテスト結果に基づいて、テストが実行されているテストケースについてのテスト結果をテストケースを特定するための情報とともに表示するテスト結果履歴表示手段と
を備え、
前記テストパス候補表示手段によって表示されたテストパスの中からいずれかのテストパスが選択されると、その選択されたテストパスに含まれるテストケースの中から今回実行されるべきテストケースが抽出されることを特徴とする。
第2の発明は、第1の発明において、
前記テストパス生成手段によって生成されたテストパスに基づいて、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルを強調表示するテストセル強調表示手段を更に備えることを特徴とする。
第3の発明は、第2の発明において、
前記テストセル強調表示手段は、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルをそれ以外の組み合わせ情報用セルとは異なる色で表示することを特徴とする。
第4の発明は、第2または第3の発明において、
前記テストセル強調表示手段は、前記状態遷移表に含まれる1または複数のセルを選択するためのカーソルを、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルに移動させることを特徴とする。
の発明は、第1から第までのいずれかの発明において、
前記テスト結果履歴表示手段は、前記テスト結果保持手段に保持されている実行順特定情報に基づいて、テストが実行されているテストケースについてのテスト結果をテストが実行された順序で表示することを特徴とする。
の発明は、第1から第5までのいずれかの発明において、
前記テスト結果履歴表示手段は、外部から指定された組み合わせ情報用セルに対応付けられているテストケースを有するテストパスに含まれるテストケースについてのテスト結果を表示することを特徴とする。
の発明は、第1から第6までのいずれかの発明において、
前記テスト結果履歴表示手段は、前記テストケースを特定するための情報として、各テストケースに対応付けられている組み合わせ情報用セルを示す番号と当該組み合わせ情報用セルに記述されている処理内容とを少なくとも表示することを特徴とする。
の発明は、第1から第までのいずれかの発明において、
前記テスト結果保持手段には、前記テスト結果としてテストが成功であったか失敗であったかを示す情報が保持され、
前記テスト結果保持手段に保持されている各テストケースについてのテスト結果と実行順特定情報とに基づいて、前記テスト結果が失敗であるテストケースがあるときに該テストケースのテストが実行されるまでに実行された1以上のテストケースについての実行方法を、前記1以上のテストケースについてのテストが実行された順序で並べて表示する失敗テスト再現手順表示手段を更に備えることを特徴とする。
の発明は、第の発明において、
前記失敗テスト再現手順表示手段は、前記テスト結果が失敗であるテストケースを含むテストパスについて、最初に実行されるべきテストケースから前記テスト結果が失敗であるテストケースまでのテストケースについての実行方法を表示することを特徴とする。
10の発明は、第または第の発明において、
前記失敗テスト再現手順表示手段は、前記実行方法として、各テストケースに対応付けられている内部状態とイベントとを少なくとも表示することを特徴とする。
11の発明は、第1から第10までのいずれかの発明において、
前記テスト結果保持手段に保持されている各テストケースについてのテスト結果に基づいて、前記状態遷移テストの進捗状況を表示する進捗表示手段を更に備えることを特徴とする。
12の発明は、第11の発明において、
前記進捗表示手段は、テストが実行されていないテストケースを含むテストパスとそれ以外のテストパスとを区別して表示することを特徴とする。
13の発明は、第11または第12の発明において、
前記進捗表示手段は、テストが実行されているテストケースに対応付けられている組み合わせ情報用セルとテストが実行されていないテストケースに対応付けられている組み合わせ情報用セルとを区別して表示することを特徴とする。
14の発明は、第1から第13までのいずれかの発明において、
前記実行順特定情報は、各テストケースについてのテストが実行された年月日と時刻であることを特徴とする。
15の発明は、システムの取り得る内部状態の遷移についてのテストであって複数のテストケースからなる状態遷移テストの実行を支援する状態遷移テスト支援プログラムであって、
横方向又は縦方向の一方の方向に前記内部状態を列記するために設けられた内部状態用セルと、横方向又は縦方向のうち前記内部状態用セルとは異なる方向に前記システムで生じ得るイベントを列記するために設けられたイベント用セルと、前記内部状態用セルに記述されている内部状態と前記イベント用セルに記述されているイベントとの組み合わせに対応する情報として処理内容と遷移先の内部状態とを特定するための動作特定情報または前記システムにおいて生じることのない内部状態とイベントとの組み合わせであることを示す利用不可情報を記述するためにマトリクス状に設けられ前記状態遷移テストに含まれるテストケースに対応付けられ得る組み合わせ情報用セルとから成る状態遷移表を生成する状態遷移表生成ステップと、
前記組み合わせ情報用セルへの前記動作特定情報の入力を受け付ける動作特定情報入力受付ステップと、
前記動作特定情報入力受付ステップで受け付けられた動作特定情報に基づいて、前記状態遷移テストとして実行されるべき一連のテストケースからなるテストパスを生成するテストパス生成ステップと、
前記テストパス生成ステップで生成されたテストパスに含まれる各テストケースについての外部から入力されるテスト結果を、テストが実行された順序を特定するための実行順特定情報とともに所定のテスト結果保持部に記録するテスト結果記録ステップと
前記テスト結果保持部に保持されているテスト結果に基づいて、テストが実行されていないテストケースを含むテストパスが複数ある場合に当該複数のテストパスを表示するテストパス候補表示ステップと、
前記テスト結果保持部に保持されているテスト結果に基づいて、テストが実行されているテストケースについてのテスト結果をテストケースを特定するための情報とともに表示するテスト結果履歴表示ステップと
をコンピュータのCPUがメモリにおいて実行させ
前記テストパス候補表示ステップで表示されたテストパスの中からいずれかのテストパスが選択されると、その選択されたテストパスに含まれるテストケースの中から今回実行されるべきテストケースが抽出されることを特徴とする。
16の発明は、第15の発明において、
前記テストパス生成ステップで生成されたテストパスに基づいて、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルを強調表示するテストセル強調表示ステップを更に含むことを特徴とする。
17の発明は、第16の発明において、
前記テストセル強調表示ステップでは、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルがそれ以外の組み合わせ情報用セルとは異なる色で表示されることを特徴とする。
18の発明は、第16または第17の発明において、
前記テストセル強調表示ステップでは、前記状態遷移表に含まれる1または複数のセルを選択するためのカーソルが、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルに移動させられることを特徴とする。
19の発明は、第15から第18までのいずれかの発明において、
前記テスト結果履歴表示ステップでは、前記テスト結果保持部に保持されている実行順特定情報に基づいて、テストが実行されているテストケースについてのテスト結果が、テストが実行された順序で表示されることを特徴とする。
20の発明は、第15から第19までのいずれかの発明において、
前記テスト結果履歴表示ステップでは、外部から指定された組み合わせ情報用セルに対応付けられているテストケースを有するテストパスに含まれるテストケースについてのテスト結果が表示されることを特徴とする。
21の発明は、第15から第20までのいずれかの発明において、
前記テスト結果履歴表示ステップでは、前記テストケースを特定するための情報として、各テストケースに対応付けられている組み合わせ情報用セルを示す番号と当該組み合わせ情報用セルに記述されている処理内容とが少なくとも表示されることを特徴とする。
22の発明は、第15から第21までのいずれかの発明において、
前記テスト結果保持部には、前記テスト結果としてテストが成功であったか失敗であったかを示す情報が保持され、
前記テスト結果保持部に保持されている各テストケースについてのテスト結果と実行順特定情報とに基づいて、前記テスト結果が失敗であるテストケースがあるときに該テストケースのテストが実行されるまでに実行された1以上のテストケースについての実行方法を、前記1以上のテストケースについてのテストが実行された順序で並べて表示する失敗テスト再現手順表示ステップを更に含むことを特徴とする。
23の発明は、第22の発明において、
前記失敗テスト再現手順表示ステップでは、前記テスト結果が失敗であるテストケースを含むテストパスについて、最初に実行されるべきテストケースから前記テスト結果が失敗であるテストケースまでのテストケースについての実行方法が表示されることを特徴とする。
24の発明は、第22または第23の発明において、
前記失敗テスト再現手順表示ステップでは、前記実行方法として、各テストケースに対応付けられている内部状態とイベントとが少なくとも表示されることを特徴とする。
25の発明は、第15から第24までのいずれかの発明において、
前記テスト結果保持部に保持されている各テストケースについてのテスト結果に基づいて、前記状態遷移テストの進捗状況を表示する進捗表示ステップを更に含むことを特徴とする。
26の発明は、第25の発明において、
前記進捗表示ステップでは、テストが実行されていないテストケースを含むテストパスとそれ以外のテストパスとが区別して表示されることを特徴とする。
27の発明は、第25または第26の発明において、
前記進捗表示ステップでは、テストが実行されているテストケースに対応付けられている組み合わせ情報用セルとテストが実行されていないテストケースに対応付けられている組み合わせ情報用セルとが区別して表示されることを特徴とする。
28の発明は、第15から第27までのいずれかの発明において、
前記実行順特定情報は、各テストケースについてのテストが実行された年月日と時刻であることを特徴とする。
29の発明は、システムの取り得る内部状態の遷移についてのテストであって複数のテストケースからなる状態遷移テストの実行を支援する状態遷移テスト支援方法であって、
横方向又は縦方向の一方の方向に前記内部状態を列記するために設けられた内部状態用セルと、横方向又は縦方向のうち前記内部状態用セルとは異なる方向に前記システムで生じ得るイベントを列記するために設けられたイベント用セルと、前記内部状態用セルに記述されている内部状態と前記イベント用セルに記述されているイベントとの組み合わせに対応する情報として遷移先の内部状態と処理内容とを特定するための動作特定情報または前記システムにおいて生じることのない内部状態とイベントとの組み合わせであることを示す利用不可情報を記述するためにマトリクス状に設けられ前記状態遷移テストに含まれるテストケースと対応付けられ得る組み合わせ情報用セルとから成る状態遷移表を生成する状態遷移表生成ステップと、
前記組み合わせ情報用セルへの前記動作特定情報の入力を受け付ける動作特定情報入力受付ステップと、
前記動作特定情報入力受付ステップで受け付けられた動作特定情報に基づいて、前記状態遷移テストとして実行されるべき一連のテストケースからなるテストパスを生成するテストパス生成ステップと、
前記テストパス生成ステップで生成されたテストパスに含まれる各テストケースについての外部から入力されるテスト結果を、テストが実行された順序を特定するための実行順特定情報とともに所定のテスト結果保持部に記録するテスト結果記録ステップと
前記テスト結果保持部に保持されているテスト結果に基づいて、テストが実行されていないテストケースを含むテストパスが複数ある場合に当該複数のテストパスを表示するテストパス候補表示ステップと、
前記テスト結果保持部に保持されているテスト結果に基づいて、テストが実行されているテストケースについてのテスト結果をテストケースを特定するための情報とともに表示するテスト結果履歴表示ステップと
を含み、
前記テストパス候補表示ステップで表示されたテストパスの中からいずれかのテストパスが選択されると、その選択されたテストパスに含まれるテストケースの中から今回実行されるべきテストケースが抽出されることを特徴とする。
上記第1の発明によれば、状態遷移表のセル(組み合わせ情報用セル)にオペレータが入力した「内部状態とイベントとの組み合わせ」に基づいて、状態遷移テストとして実行されるべきテストパスがテストパス生成手段によって生成される。このため、テストパス生成に要する時間が従来よりも大幅に短縮される。また、状態遷移テストが実行されると、オペレータによる入力に基づき、テストパスに含まれる各テストケースについてのテスト結果およびテストが実行された順序を特定するための情報(実行順特定情報)がテスト結果保持手段に記録される。このため、テスト結果保持手段に保持されているデータに基づいて、いずれのテストパスのいずれのテストケースまでのテストが実行済みであるのかを判断することが可能となる。
また、状態遷移テストの実行中に、未実行のテストケースを含むテストパスが、次にテストが実行されるべきテストパスの候補として表示される。そして、いずれかのテストパスが選択されると、その選択されたテストパスに含まれるテストケースの中から今回実行されるべきテストケースが抽出される。このため、テストすべきテストパスやテストケースをオペレータ自身によって探す必要がなくなり、状態遷移テストの迅速な実行が可能となる。さらに、それらのテスト結果も容易に把握できる。
上記第2の発明によれば、状態遷移テストの実行中に、次に実行されるべきテストケースに対応付けられた組み合わせ情報用セル(以下、「テストセル」という。)が強調表示される。このため、オペレータ自身によってテストセルを探す必要がなくなり、状態遷移テストの迅速な実行が可能となる。
上記第3の発明によれば、状態遷移テストの実行中に、テストセルがそれ以外のセルとは異なる色で表示される。このため、オペレータによるテストセルの特定が容易になり、状態遷移テストの迅速な実行が可能となる。
上記第4の発明によれば、各テストケースについてのテストが実行される都度、オペレータの操作によることなく、テストセルにカーソルが移動する。このため、オペレータによるテストセルの特定が容易になり、状態遷移テストの迅速な実行が可能となる。
上記第の発明によれば、一連の状態遷移テストのうち実行済みのテストケースについてのテスト結果がテストの実行順に並べて表示される。このため、状態遷移テストの実行状況(どのような順序でテストが実行されているか、各テストケースについてのテスト結果はどうなっているか等)の把握が容易になる。
上記第の発明によれば、実行済みのテストのテスト結果のうちオペレータが指定した組み合わせ情報用セルに記述されている「内部状態とイベントとの組み合わせ」を含む一連の状態遷移についてのテスト結果のみが表示される。このため、オペレータにとって必要な情報のみが表示され、状態遷移テストの実行状況の把握がより容易になる。
上記第の発明によれば、組み合わせ情報用セルを示す番号と当該セルに記述されている処理内容とがテスト結果とともに表示される。このため、どのような内部状態の変化やどのような処理内容についてのテストが実行されているのかを容易に把握することが可能となる。
上記第の発明によれば、テスト結果がエラー(失敗)となったテストケースがあるときに、そのエラーを再現させるためのテストの実行手順が表示される。このため、オペレータにとって、従来よりもエラーの再現が容易なものとなる。これにより、エラー原因の追究が容易となり、システム開発の効率化を図ることができる。
上記第の発明によれば、テスト結果がエラー(失敗)となったテストケースがあるときに、最初に実行されるべきテストケースからエラーとなったテストケースまでについてのテストの実行手順が表示される。これにより、上記第の発明と同様、エラー原因の追究が容易となり、システム開発の効率化を図ることができる。
上記第10の発明によれば、各テストケースに対応付けられている内部状態とイベントを表す記載が、エラーを再現させるための実行手順の表示に含められる。このため、「どのような状態遷移があったときにエラーが生じるのか」という点についての把握が容易になり、上記第の発明と同様、エラー原因の追究が容易となり、システム開発の効率化を図ることができる。
上記第11の発明によれば、状態遷移テストの進捗状況が表示される。このため、状態遷移テストを含むシステム開発の進捗の管理が容易となる。
上記第12の発明によれば、テストパス毎にテストが実行済みであるか否かを把握することが可能となる。
上記第13の発明によれば、各テストケースに対応付けられている組み合わせ情報用セル毎にテストが実行済みであるか否かを把握することが可能となる。
上記第14の発明によれば、テストが実行された年月日および時刻が実行順特定情報としてテスト結果保持手段に記録される。年月日や時刻の情報は容易に取得することができるので、テストの実行順を特定するための情報を比較的簡単にテスト結果保持手段に保持することが可能となる。
以下、添付図面を参照しつつ、本発明の一実施形態について説明する。
<1.全体構成>
図1は、本発明の一実施形態におけるシステム全体のハードウェア構成図である。このシステムは、サーバ機7と複数のパソコン8とによって構成され、サーバ機7および各パソコン8はLAN9によって互いに接続されている。パソコン8では、ソフトウェアシステムの開発のためのプログラミング等の作業、テストの実行等が行われる。サーバ機7は、各パソコン8からの要求に応じた処理の実行や各パソコン8から共通して参照等可能なファイル、データベース等の格納などを行う。また、サーバ機7は、状態遷移テストの実行を支援するための各種機能を提供する。なお、状態遷移テストの実行を支援するための機能を実現する後述のプログラム(状態遷移表生成プログラム、状態遷移表設計支援プログラム、テスト支援プログラム)はサーバ機7またはパソコン8のいずれにインストールされても良いが、本実施形態ではサーバ機7にインストールされるものとして説明する。従って、以下においては、サーバ機7のことを「状態遷移テスト支援装置」という。
図2は、状態遷移テスト支援装置7の構成を示すブロック図である。この状態遷移テスト支援装置7は、CPU10と表示部40と入力部50とメモリ60と補助記憶装置70とを備えている。補助記憶装置70には、ファイル格納部(例えば「フォルダ」)20とデータベース30とが含まれている。CPU10は、与えられた命令に従い演算処理を行う。ファイル格納部20には、状態遷移表21と、プログラム名をそれぞれ「状態遷移表生成」、「状態遷移表設計支援」、および「テスト支援」とする3つのプログラム(実行モジュール)22〜24が格納されている。データベース30には、状態遷移テストのテスト結果を保持するためのテスト結果保持テーブル31が格納されている。表示部40は、例えば、オペレータが状態遷移表21にデータを入力する際の操作用画面を表示する。入力部50は、マウスやキーボードによるオペレータからの入力を受け付ける。メモリ60には、CPU10の演算処理に必要なデータが一時的に格納される。なお、ファイル格納部20には上述した3つのプログラム以外のプログラムが含まれていても良く、データベース30にはテスト結果保持テーブル31以外のテーブルが含まれていても良い。
なお、以下の説明においては、状態遷移表21を用いて内部状態の遷移のテストをしようとしているシステムのことを(本実施形態に係る状態遷移テスト支援装置7を実現するシステムと区別するために)「対象システム」という。
<2.状態遷移表>
図3は、本実施形態における状態遷移表21の構成を示す図である。この状態遷移表21には、内部状態入力表示部211とイベント入力表示部212と組み合わせ情報入力表示部213と列番号表示部214と行番号表示部215とが含まれている。内部状態入力表示部211は、オペレータによるデータの入力を受け付け、その入力されたデータをシステムの内部状態を表す記述として表示する。イベント入力表示部212は、オペレータによるデータの入力を受け付け、その入力されたデータをイベントを表す記述として表示する。組み合わせ情報入力表示部213は、オペレータによるデータの入力を受け付け、その入力されたデータを「遷移先の内部状態」と「処理内容」とを表す記述または対象システムで生じることのない「内部状態とイベントとの組み合わせ」であることを表す記述として表示する。列番号表示部214には、列を一意に特定するための番号が表示される。行番号表示部215には、行を一意に特定するための番号が表示される。なお、以下においては、内部状態入力表示部211に含まれる各セルのことを「内部状態用セル」といい、イベント入力表示部212に含まれる各セルのことを「イベント用セル」といい、組み合わせ情報入力表示部213に含まれる各セルのことを「組み合わせ情報用セル」という。
組み合わせ情報用セルは、列番号と行番号との組み合わせ(以下、「行列番号」という。)によって一意に特定される。例えば、図3で符号219で示す組み合わせ情報用セルは、「列番号=3」の列と「行番号=5」の行とが交差する位置に在るので、(3,5)という行列番号で特定される。組み合わせ情報用セルには、例えば図4(a)または(b)に示すようなデータが入力される。組み合わせ情報用セルに対応する「内部状態とイベントとの組み合わせ」が対象システムで生じることがない場合には、当該組み合わせ情報用セルには図4(a)に示すように「NA」という記述が入力される。一方、組み合わせ情報用セルに対応する「内部状態とイベントとの組み合わせ」が対象システムで生じることがある場合には、当該組み合わせ情報用セルには例えば図4(b)に示すような記述が入力される。図4(b)に示す記述のうち上段の記述は、当該組み合わせ情報用セルに対応する「内部状態とイベントとの組み合わせ」が生じたときの遷移先の内部状態を表している。図4(b)に示す記述のうち下段の記述は、当該組み合わせ情報用セルに対応する「内部状態とイベントとの組み合わせ」が生じたときに対象システムで行われる処理内容を表している。また、組み合わせ情報用セルは、テスト結果の入力が可能なように構成されており、状態遷移テストが実行されると、オペレータによって各組み合わせ情報用セルに対応するテストについてのテスト結果の入力が行われる。また、組み合わせ情報用セルには、オペレータによるメモの入力が可能となるように、「備考欄」というデータ入力域が設けられている。なお、以下においては、組み合わせ情報用セルに上述の「NA」という記述を入力することを「(当該セルに対して)“利用不可設定”を行う」という。
ところで、この状態遷移表21においては、内部状態やイベントを階層構造で表現することができる。例えば、「“状態A”という内部状態には“状態A1”と“状態A2”という2つの内部状態が含まれている」ということを表現することができる。図5は、内部状態およびイベントが階層構造にされていない状態遷移表21の一例を示す図である。また、図6は、内部状態およびイベントが階層構造にされている状態遷移表21の一例を示す図である。なお、内部状態またはイベントのいずれか一方のみを階層構造にすることもできる。
図7は、リカバリー関連のシステムにおける状態遷移表21の一部を示す図である。本実施形態に係る状態遷移テスト支援装置7は、このような状態遷移表21を用いて行われる(対象システムの)状態遷移テストが効率的に行われるように、後述する各種機能を提供する。
<3.機能的な構成>
図8は、この状態遷移テスト支援装置7を機能的な観点からみた機能ブロック図である。この状態遷移テスト支援装置7は、状態遷移表生成部220と状態遷移表設計支援部230とテスト支援部240とを備えている。状態遷移表生成部220には、内部状態入力受付部221とイベント入力受付部222と利用不可情報入力受付部223とが含まれている。状態遷移表設計支援部230には、動作特定情報入力受付部231とテストパス生成部232とが含まれている。テスト支援部240には、テスト結果記録部241とテストセル強調表示部242とテストパス候補表示部243とテスト結果履歴表示部244と失敗テスト再現手順表示部245と進捗表示部246とが含まれている。なお、これらの各機能は、ファイル格納部20に格納されている上述したプログラムがCPU10によってメモリ60を利用して実行されることによって実現される。すなわち、状態遷移表生成部220は、状態遷移表生成プログラム22が実行されることによって実現される。また、状態遷移表設計支援部230は、状態遷移表設計支援プログラム23が実行されることによって実現される。さらに、テスト支援部240は、テスト支援プログラム24が実行されることによって実現される。
状態遷移表生成部220は、オペレータによって入力されるデータに基づいて、状態遷移表21の生成を行う。なお、ここでの「状態遷移表の生成」とは、内部状態入力表示部211への内部状態の入力、イベント入力表示部212へのイベントの入力、および組み合わせ情報用セルへの利用不可設定が終了した状態の状態遷移表21を生成することを意味する。内部状態入力受付部221は、対象システムの取り得る内部状態を表す記述のオペレータによる入力を受け付ける。イベント入力受付部222は、対象システムで発生し得るイベントを表す記述のオペレータによる入力を受け付ける。利用不可情報入力受付部223は、「内部状態とイベントとの組み合わせ」が対象システムで生じることがない組み合わせ情報用セルへのオペレータによる利用不可設定を受け付ける。
状態遷移表設計支援部230は、オペレータによる状態遷移表21の設計が効率的に行われるように、状態遷移表21の設計が行われている時にオペレータに各種機能を提供する。なお、ここでの「状態遷移表の設計」とは、状態遷移表生成部220で生成された状態遷移表21に対して、利用不可設定が施された組み合わせ情報用セル以外の組み合わせ情報用セルに「遷移先の内部情報」および「処理内容」を入力することを意味する。動作特定情報入力受付部231は、オペレータによる組み合わせ情報用セルへの「遷移先の内部状態」と「処理内容」とを表す記述の入力を受け付ける。テストパス生成部232は、組み合わせ情報用セルに入力された「遷移先の内部状態」に基づいてテストパスを生成する。なお、テストパスについての詳しい説明は後述する。
テスト支援部240は、後述する各種機能を提供して、オペレータによる状態遷移テストの効率的な実行を支援する。テスト結果記録部241は、オペレータによるテスト結果の入力に基づき、当該テスト結果等をテスト結果保持テーブル31に書き込む。テストセル強調表示部242は、状態遷移テストの実行中に、次にテストが実行されるべきテストケースに対応付けられている組み合わせ情報用セルを強調表示する。テストパス候補表示部243は、テストが実行されていないテストケースを含むテストパスが複数ある場合に、それらのテストパスを次にテストが実行されるべきテストパスの候補として表示する。テスト結果履歴表示部244は、実行済みのテストケースについてのテスト結果をテストが実行された順で表示部40に表示する。失敗テスト再現手順表示部245は、テスト結果が失敗(エラー)のテストケースについて、テストの再現手順を表示部40に表示する。進捗表示部246は、状態遷移テストの進捗状況を示す情報を表示部40に表示する。
<4.テーブル>
次に、この状態遷移テスト支援装置7で使用されるテーブルについて説明する。図9は、テスト結果保持テーブル31のレコードフォーマットを示す図である。テスト結果保持テーブル31には、項目名をそれぞれ「作成年月日」、「テスト仕様書No」、「テストケース番号」、「実行セル」、「実行日時」、「テスト結果」、および「備考」とする複数の項目が含まれている。テスト結果保持テーブル31の各項目のフィールド(個々のデータが格納される領域)には、それぞれ以下のような内容のデータが格納される。「作成年月日」には、当該レコードが作成された日付(テスト結果保持テーブル31にレコードが挿入された日付)が格納される。「テスト仕様書No」には、テスト仕様書を識別するための番号が格納される。「テストケース番号」には、テストケースを識別するための番号が格納される。「実行セル」には、状態遷移表21のいずれの組み合わせ情報用セルに係るテストであるのかを特定するための当該組み合わせ情報用セルの行列番号が格納される。「実行日時」には、テストを実行した日時(例えば、年月日と時刻)が格納される。「テスト結果」には、テストを実行した結果(例えば、「成功」,「失敗」,「未実行」)が格納される。「備考」には、オペレータによって入力されたテキスト形式のメモが格納される。
テスト結果保持テーブル31に格納されているレコードは、「作成年月日」と「テスト仕様書No」と「テストケース番号」との組み合わせによって一意に特定される。これについて、図10を参照しつつ説明する。ソフトウェアシステムの開発においては、1つのテストが繰り返し実行されることが多々ある。すなわち、「或るテスト仕様書に含まれる或るテストケースについてのテストが繰り返し実行される。」ということがある。このため、テストが繰り返し実行されたテストケースについては、実行された回数分のテスト結果を示すデータが保持される。例えば、図10において、「テスト仕様書No=1」かつ「テストケース番号=1」のレコードは3件(符号311、312、および313のレコード)ある。このため、「テスト仕様書No」と「テストケース番号」のみの組み合わせによっては、レコードは一意に特定されない。ここで、上記3件のレコードの作成年月日はそれぞれ異なっている。従って、「作成年月日」と「テスト仕様書No」と「テストケース番号」との組み合わせによってレコードは一意に特定される。
<5.動作>
次に、本実施形態に係る状態遷移テスト支援装置7の動作について説明する。
<5.1 状態遷移表生成処理>
図11は、本実施形態における状態遷移表生成処理の手順を示すフローチャートである。オペレータによるメニュー等の選択により、状態遷移表生成部220は、状態遷移表21を生成するための画面を表示部40に表示する。オペレータによって内部状態用セルへのデータの入力が行われると、内部状態入力受付部221は、当該データを内部状態を表す記述として受け付ける(ステップS110)。また、オペレータによってイベント用セルへのデータの入力が行われると、イベント入力受付部222は、当該データをイベントを表す記述として受け付ける(ステップS120)。さらに、利用不可情報入力受付部223は、組み合わせ情報用セルに対する利用不可設定(「NA」の入力)を受け付ける(ステップS130)。なお、図11では「ステップS110、ステップS120、ステップS130」の順序で記載しているが、ステップの順序はこれに限定されない。また、例えば、内部状態の入力後にイベントの入力が行われた後、再度内部状態の入力が行われても良い。オペレータによる内部状態の入力、イベントの入力、および利用不可設定が終了すると、状態遷移表生成処理は終了する。
<5.2 状態遷移表設計支援処理>
図12は、本実施形態における状態遷移表設計支援処理の手順を示すフローチャートである。状態遷移表21を設計するためのメニュー等がオペレータによって選択されると、状態遷移表設計支援部230は、データ未入力セル(利用不可設定が施されていない組み合わせ情報用セルで、遷移先の内部状態や処理内容が入力されていない組み合わせ情報用セル)の存在する内部状態(列)のリストを「今から状態遷移の設計を行う(内部状態の)候補」として表示部40に表示する(ステップS200)。例えば、「状態X」という内部状態の列と「状態Y」という内部状態の列とにデータ未入力セルが存在すれば、状態遷移表設計支援部230は、「状態X」または「状態Y」のいずれかをオペレータに選択させるための画面を表示部40に表示する。ステップS200の終了後、ステップS210に進み、状態遷移表設計支援部230は、オペレータによる内部状態の選択を受け付ける。ステップS210の終了後、ステップS220に進む。
ステップS220では、状態遷移表設計支援部230は、編集中のテストパスが有るか否かを判定する。ここで、図13を参照しつつ、テストパスについて説明する。図13(a)に示すような状態遷移表21が在るときに、行列番号(1,1)の組み合わせ情報用セルに図13(b)に示すようにデータの入力が行われるとする。次に、行列番号(1,1)の組み合わせ情報用セルに入力された「遷移先の内部状態(状態B)」の列に属する組み合わせ情報用セルのうちイベントが「イベントB」の行に属する組み合わせ情報用セルすなわち行列番号(2,2)の組み合わせ情報用セルに図13(c)に示すようにデータの入力が行われるとする。さらに、行列番号(2,2)の組み合わせ情報用セルに入力された「遷移先の内部状態(状態D)」の列に属する組み合わせ情報用セルのうちイベントが「イベントC」の行に属する組み合わせ情報用セルすなわち行列番号(4,3)の組み合わせ情報用セルに図13(d)に示すようにデータの入力が行われるとする。以上のような入力が行われると、対象システムでは、スタート時の内部状態を「状態A」として「(1,1)、(2,2)、(4,3)」の順序で状態が遷移するということが起こり得ることになる。このため、「(1,1)、(2,2)、(4,3)」の順序での状態の遷移について正常に行われるか否かがテストされなければならない。1つの行列番号に対応する組み合わせ情報用セルに関するテストは1件のテストケースに対応付けられるところ、テストパスとは、複数のテストケースからなり、テストの実行順をも含む概念である。
上述の例においては、図14(a)に示すようなテストパスが生成されることになる。従って、テストパスが図14(b)あるいは図14(c)に示すようなものになっている時点においては、当該テストパスは「編集中」と判定(判断)される。
図12のステップS220での判定の結果、編集中のテストパスがなければ、ステップS230に進む。一方、編集中のテストパスがあれば、ステップS232に進む。なお、図14においては行列番号と矢印のみを用いてテストパスを簡単に表しているが、この状態遷移テスト支援装置7においては、例えば図15に示すようなリスト構造のデータがテストパスデータとして作成される。図15において、符号341,342,および343で示すデータはそれぞれ行列番号(1,1),(2,2),および(4,3)の組み合わせ情報用セルに対応するデータである。また、符号341,342,および343で示すデータはそれぞれが1件のテストケースに相当する。従って、テストパスデータに関する説明においては、符号341〜343で示すようなデータのことを単に「テストケース」という。
ステップS230では、テストパス生成部232は、テストパスの新規生成を行う。なお、ここでの「テストパスの新規生成」とは、図16で符号35で示すデータのようにヘッダー部のみを有するテストパスデータを生成することを意味する。ステップS230の終了後、ステップS240に進む。
ステップS232では、テストパス生成部232は、ステップS210で受け付けた内部状態を、編集中のテストパスデータのうち最後尾のテストケースについての「遷移先の内部状態」として記録する。例えば、編集中のテストパスデータが図17(a)に示すようなものになっているときにステップS210で「状態B」という内部状態が受け付けられた場合には、図17(b)で符号36で示すように、当該編集中のテストパスデータに「遷移先の内部状態」を表す記述(ここでは「状態B」)が追加される。ステップS232の終了後、ステップS240に進む。
ステップS240では、テストパス生成部232は、テストパスデータへのテストケースの追加を行う。なお、ここでの「テストケースの追加」とは、図18で符号37で示すデータのように実質的な内容が未入力の状態のデータをテストパスデータに追加することを意味する。ステップS240の終了後、ステップS250に進む。
ステップS250では、テストパス生成部232は、ステップS210で受け付けた内部状態を、編集中のテストパスデータのうち最後尾のテストケースについての内部状態として記録する。例えば、編集中のテストパスデータが図19(a)に示すようなものになっているときにステップS210で「状態B」という内部状態が受け付けられた場合には、図19(b)で符号38で示すように、当該編集中のテストパスデータに内部状態を表す記述(ここでは「状態B」)が追加される。ステップS250の終了後、ステップS260に進む。
ステップS260では、状態遷移表設計支援部230は、状態遷移表21が表示されている画面において、ステップS210で受け付けた内部状態の列にカーソルを移動させる。ステップS260の終了後、ステップS270に進む。
ステップS270では、状態遷移表設計支援部230は、ステップS210で受け付けた内部状態の列に属する組み合わせ情報用セルにデータ未入力セルがあるか否かを判定する。判定の結果、データ未入力セルがあれば、ステップS282に進む。一方、データ未入力セルがなければ、ステップS288に進む。
ステップS282では、状態遷移表設計支援部230は、データ未入力セルに対応するイベントを、テストパスデータに追加するイベントの候補として表示部40に表示する。ステップS282の終了後、ステップS284に進み、動作特定情報入力受付部231は、オペレータによるイベントの選択を受け付ける。これにより、テストパス生成部232は、オペレータによって選択されたイベントを、編集中のテストパスデータのうち最後尾のテストケースについてのイベントとして記録する。例えば、編集中のテストパスデータが図20(a)に示すようなものになっているときにオペレータによって「イベントA」というイベントが選択された場合には、図20(b)で符号39で示すように、当該編集中のテストパスデータにイベントを表す記述(ここでは「イベントA」)が追加される。ステップS284の終了後、ステップS286に進む。ステップS286では、動作特定情報入力受付部231は、オペレータによる組み合わせ情報用セルへの処理内容の入力を受け付ける。ステップS288の終了後、ステップS290に進む。
ステップS288では、テストパス生成部232は、テストパスのクローズを行う。なお、「テストパスのクローズ」とは、編集中のテストパスにそれ以上テストケースを追加できないようにすることを意味する。テストパスのクローズが行われると、当該テストパスを示すデータがテスト結果保持テーブル31に生成される。例えば、「(1,1)、(2,1)、(3,1)、(4,3)」の順序で遷移するテストパスがクローズされた時には、図21に示すようなデータがテスト結果保持テーブル31に生成される。このように、クローズしたテストパスに4つのテストケースが含まれている場合、4件のレコードがテスト結果保持テーブル31に追加される。ステップS288の終了後、ステップS290に進む。
ステップS290では、状態遷移表設計支援部230は、この状態遷移表21に含まれる内部状態の列にデータ未入力セルを含む列があるか否かを判定する。判定の結果、データ未入力セルを含む列があれば、ステップS200に戻る。一方、データ未入力セルを含む列がなければ、状態遷移表設計支援処理は終了する。
以上のような状態遷移表設計支援処理によって、状態遷移表21内の全ての組み合わせ情報用セルにデータの入力が行われ、オペレータはデータ未入力セルを残すことなく状態遷移表の設計作業を終了することができる。また、この状態遷移表設計支援処理によって、状態遷移テストが効率的に実行されるよう、オペレータに作業負荷をかけることなくテストパスが生成される。
ところで、システムの内部状態の遷移については、同じような状態遷移が複数回繰り返されることがある。例えば、図22に示すような状態遷移表21を持つシステムでは、「状態A」と「状態B」とが何回も繰り返されることがある。このため、例えば「(1,1)、(2,1)、(1,1)、(2,1)、(1,2)、(3,2)」という順序での状態の遷移についてのテストが要求されることがある。このような場合、本実施形態においては、繰り返される「内部状態とイベントとの組み合わせ」に対応する行列番号とその繰り返しの回数とを表す記述(例えば図23に示すような記述)などを組み合わせ情報用セルの備考欄に予め入力しておき、状態遷移テストの際にオペレータが当該備考欄を見て、繰り返しのテストを実行するようにすれば良い。図23に示すような記述がなされた後にテストパスがクローズされると、テスト結果保持テーブル31には図24に示すようなレコードが追加される。
<5.3 テスト支援処理>
<5.3.1 処理手順>
図25は、本実施形態におけるテスト支援処理の手順を示すフローチャートである。なお、ここでは、図26に示すような状態遷移表21が既に生成されているものと仮定して説明する。また、対象システムにおけるスタート時の内部状態は「状態A」と仮定する。従って、上述した状態遷移表設計支援処理によって、図27に示すような3つのテストパスが既に生成されている。また、テスト結果保持テーブル31には、図28に示すようなレコードが格納された状態となっている。なお、図28のテスト仕様書Noが1〜3のレコードは、それぞれ図27の第1〜第3のテストパスについてのレコードである。
状態遷移テストを開始するためのメニュー等がオペレータによって選択されると、テストパス候補表示部243は、テストを実行するテストパスの候補を例えば図27に示すようなリスト形式で表示部40に表示する(ステップS310)。その後、ステップS320に進み、テスト支援部240は、オペレータによるいずれかのテストパスの選択(以下、実行対象として選択されたテストパスを「テスト対象パス」という。)を受け付ける。ステップS320の終了後、ステップS330に進む。
ステップS330では、テスト支援部240は、テスト結果保持テーブル31に格納されているデータに基づいて、テスト対象パスに含まれるテストケースの中から今回実行されるべきテストケースを抽出する。例えば、テスト結果保持テーブル31に図29に示すようなレコードが格納された状態になっている場合、第2のテストパスのレコードのうちテスト結果が未入力となっている2件のレコード(符号315,316で示すレコード)に対応するテストケースについては、テストが実行されていないことが把握される。また、それら2件のレコードについてのテストケース番号を比較すると、符号316で示すレコードよりも符号315で示すレコードの方が値が小さくなっている。これにより、符号315で示すレコードに対応するテストケースが今回実行されるべきテストケースとして抽出される。そして、テストセル強調表示部242は、抽出されたテストケースに対応付けられている組み合わせ情報用セルにカーソルを移動させるとともに、当該組み合わせ情報用セルをそれ以外のセルとは異なる色で表示する。このようにして、今回実行されるべきテストケースに対応付けられている組み合わせ情報用セルが強調表示される。ステップS330の終了後、ステップS340に進む。
ステップS340では、テスト支援部240は、ステップS330で抽出したテストケースについてのテスト条件(対象システムをどの内部状態にして、どのイベントを発生させるか)を示したダイアログを表示部40に表示する。例えば、図30で示すような画面が表示部40に表示される。ステップS340の終了後、ステップS350に進む。
ここで、オペレータは、ステップS340で表示された画面を参照してテストを実行する。その後、オペレータによってテスト結果の入力が行われる。テスト結果の入力は、例えば、対象の組み合わせ情報用セルが選択された状態で所定のメニューが選択されることによって行われる。そして、ステップS350では、当該テスト結果の入力をテスト支援部240が受け付ける。これにより、テスト結果の入力が行われた組み合わせ情報用セルには、例えば図31(a)に示すような情報が保持されることになる。なお、1つの組み合わせ情報用セルにテスト結果の入力が複数回なされたときには、例えば図31(b)に示すように、複数回分のテスト結果の情報が当該組み合わせ情報用セルに保持されることになる。すなわち、各組み合わせ情報用セルは複数のテスト結果が格納可能に構成されている。なお、図31(a)および(b)の時間(年月日および時刻)についての情報は、オペレータの手入力によることなく、システムより取得することができる。
ステップS350の終了後、ステップS360に進み、テスト結果記録部241は、ステップS350で受け付けたテスト結果をテスト結果保持テーブル31に書き込む。その際、テスト結果記録部241は、テストが実行された順序を特定するための情報(実行順特定情報)として、テストが実行された年月日および時刻をテスト結果保持テーブル31に記録する。これにより、例えば、第1のテストパスおよび第2のテストパスに含まれる全てのテストケースについてのテストが終了し、最後に実行したテストケースについてのテスト結果のみが「失敗」であった場合、テスト結果保持テーブル31は、図32に示すようなレコードが格納された状態となる。ステップS360の終了後、ステップS370に進む。
ステップS370では、テスト支援部240は、テスト対象パスに含まれるテストケースのうちテスト未実行のテストケースがあるか否かを判定する。判定の結果、テスト未実行のテストケースがあれば、ステップS330に戻る。一方、テスト未実行のテストケースがなければ、ステップS380に進む。ステップS380では、テスト支援部240は、テスト未実行のテストパスがあるか否かを判定する。判定の結果、テスト未実行のテストパスがあれば、ステップS310に戻る。一方、テスト未実行のテストパスがなければ、テスト支援処理は終了する。
<5.3.2 各種表示処理>
次に、テスト支援処理に関わる各種表示処理について説明する。本実施形態に係る状態遷移テスト支援装置7は、状態遷移テストの効率的な実行を支援するために以下のような表示処理を行う機能を有している。
<5.3.2.1 テスト結果履歴表示処理>
状態遷移テストにおいては、或る1つの組み合わせ情報用セルについてのテスト結果が、当該組み合わせ情報用セルについてのテストを実行するまでの内部状態の遷移に応じて異なるということがある。例えば、「状態C」と「イベントC」との組み合わせに対応する組み合わせ情報用セルのテスト結果に関し、「状態A」という内部状態の直後に実行したときには「成功」となり、「状態A」から「状態B」へと内部状態が遷移した後に実行したときには「失敗」となることがある。このため、システムとしては、状態遷移の違いに応じてどのようにテスト結果が異なるのか容易に把握されることが好ましい。
ところで、本実施形態においては、状態遷移テストのテスト結果がテストの実行日時とともにテスト結果保持テーブル31に格納されている。また、テスト結果保持テーブル31には、いずれの組み合わせ情報用セルに係るテストであるのかを特定するための行列番号が「実行セル」フィールドに格納されている。このため、任意の組み合わせ情報用セルに関し、当該組み合わせ情報用セルについてのテストが行われるまでにどのような順序でどの組み合わせ情報用セルについてのテストが実行されたのか、また、どのようなテスト結果が得られているのかなどの情報を当該組み合わせ情報用セルを含む複数のテストパスについて把握することができる。そこで、本実施形態に係る状態遷移テスト支援装置7には、オペレータによる任意の組み合わせ情報用セルの選択を受け付け、選択された組み合わせ情報用セルを含むテストパスについてのテストの実行履歴を表示部40に表示する機能が設けられている。この機能はテスト結果履歴表示部244によって実現される。例えば、行列番号が(4,3)の組み合わせ情報用セルが選択された状態で所定のメニューが選択されると、テスト結果履歴表示部244は、図33や図34に示すような画面を表示部40に表示する。なお、選択された組み合わせ情報用セル(以下、「選択セル」という。)を含むテストパスに選択セルよりも後でテストが実行される組み合わせ情報用セル(以下、「後続セル」という。)が含まれている場合、後続セルのテスト結果に関する情報についても画面に表示されるようにしても良い。ところで、図34は、「(1,1)、(2,1)」という順序の状態遷移が2回繰り返されたケースの表示例である。このような場合には、1回目と2回目の区別が容易になされるよう、テストの実行日時を表示するようにしても良い。
<5.3.2.2 失敗テスト再現手順表示処理>
ソフトウェアシステムのテストにおいては、或るテストでエラーが発生したとき、エラー原因の追究等のために当該状況の再現がしばしば試みられる。このため、システムとしては、エラー状況の再現手順が容易に把握されることが好ましい。ところで、本実施形態においては、状態遷移テストのテスト結果がテストの実行日時とともにテスト結果保持テーブル31に格納されている。このため、テスト結果が「失敗」(エラー)となったテストケースに関して、当該テストケースについてのテストが行われるまでにどのような順序でどのテストケースについてのテストが実行されたのを把握することができる。そこで、本実施形態に係る状態遷移テスト支援装置7には、テスト結果が「失敗」となったテストについての再現手順を表示部40に表示する機能が設けられている。この機能は、失敗テスト再現手順表示部245によって実現される。例えば、所定のメニューが選択されると、失敗テスト再現手順表示部245は、図35に示すような画面を表示部40に表示する。これにより、「内部状態とイベントとの組み合わせ」を「状態A、イベントA」、「状態B、イベントB」、「状態D、イベントD」の順序で遷移させるとエラー状況が再現できることが把握される。
<5.3.2.3 状態遷移テスト進捗表示処理>
ソフトウェアシステムの開発においては、各作業の進捗を管理することがプロジェクトのリーダー等にとって重要となる。このため、システムとしては、状態遷移テストの進捗状況が容易に把握されることが好ましい。ところで、本実施形態においては、状態遷移表21に基づくテストパスの情報および各テストパスに含まれるテストケースについてのテスト結果の情報がテスト結果保持テーブル31に格納されている。このため、テストパス毎の未実行のテストケースの有無が容易に把握される。そこで、本実施形態に係る状態遷移テスト支援装置7には、状態遷移テストの進捗状況を表示部40に表示する機能が設けられている。この機能は、進捗表示部246によって実現される。例えば、所定のメニューが選択されると、進捗表示部246は、図36に示すような画面を表示部40に表示する。なお、図36には、テスト済みのテストパスを太実線で表し、テスト未実行のテストパスを細点線で表した例を示している。
また、本実施形態においては、各テストケースについてのテスト結果の情報がテスト結果保持テーブル31に格納されており、各テストケースはいずれかの組み合わせ情報用セルに対応付けられている。このため、組み合わせ情報用セル毎に、対応するテストケースが実行済みであるか否かが把握される。そこで、本実施形態に係る状態遷移テスト支援装置7には、テストが実行されているテストケースに対応する組み合わせ情報用セルとテストが実行されていないテストケースに対応する組み合わせ情報用セルとを区別して表示部40に表示する機能が設けられている。この機能についても進捗表示部246によって実現される。例えば、所定のメニューが選択されると、進捗表示部246は、図37に示すような画面を表示部40に表示する。なお、図37では、テストが実行されているテストケースに対応する組み合わせ情報用セルを黒色で塗りつぶした例を示している。また、1つの組み合わせ情報用セルに複数のテストケースが対応付けられている場合には、例えば全てのテストケースについてのテストが実行済みであるか否かによって区別して表示すれば良い。
<6.効果>
本実施形態によれば、状態遷移表21の設計が行われる際、設計を行う内部状態やイベントの候補が状態遷移表設計支援部230によってオペレータに提示される。このため、未設計の内部状態やイベントをオペレータ自身によって探す必要がなくなり、状態遷移表の迅速な設計が可能となる。また、オペレータによる状態遷移表21のセル(組み合わせ情報用セル)への「内部状態とイベントとの組み合わせ」の入力が行われると、当該入力内容に基づき、状態遷移テストとして実行されるべきテストパスがテストパス生成部232によって生成される。以上より、テストパス生成に要する時間が従来よりも大幅に短縮される。
また、状態遷移テストが実行されると、テストパスに含まれる各テストケースについてのテスト結果がテスト結果保持テーブル31に記録される。その際、テストが実行された順序を特定するための情報(実行順特定情報)として、テストが実行された年月日および時刻がテスト結果保持テーブル31に記録される。このため、テスト結果保持テーブル31に保持されているデータに基づいて、いずれのテストパスのいずれのテストケースまでのテストが実行済みであるのかを判断することが可能となる。
さらに、本実施形態によれば、状態遷移テストの実行中に、テストセル強調表示部242によって、次にテストが実行されるべきテストケースに対応付けられている組み合わせ情報用セルが強調表示される。このため、次にテストが実行されるべき組み合わせ情報用セルをオペレータ自身が探す必要はなくなり、状態遷移テストの迅速な実行が可能となる。また、テストが実行されていないテストケースを含むテストパスが複数ある場合に、テストパス候補表示部243によって、次にテストが実行されるべきテストパスの候補がオペレータに提示される。このため、テストすべきテストパスをオペレータ自身が探す必要はなくなり、状態遷移テストの迅速な実行が可能となる。
さらにまた、テスト結果履歴表示部244によって、実行済みのテストケースについてのテスト結果がテストの実行順で表示部40に表示される。このため、状態遷移テストの実行状況の把握が容易になる。また、失敗テスト再現手順表示部245によって、テスト結果がエラーとなったテストケースについて、テストの再現手順が表示部40に表示される。このため、エラー原因の追究が容易となり、システム開発の効率化を図ることができる。また、進捗表示部246によって、テストの進捗状況を示す情報が表示部40に表示される。このため、状態遷移テストを含むシステム開発の進捗の管理が容易となる。
<7.その他>
上述の状態遷移テスト支援装置7は、メモリ60や補助記憶装置70等のハードウェアの存在を前提として、CPU10によって実行されるテスト支援等のプログラム22〜24に基づき実現される。このようなプログラム22〜24の一部または全部は、例えば、そのプログラム22〜24を記録したCD−ROM等のコンピュータ読み取り可能な記録媒体によって提供される。使用者は、上記プログラム22〜24の記録媒体としてのCD−ROMを購入して、CD−ROM駆動装置(図示せず)に装着し、そのCD−ROMからそのプログラム22〜24を読み出して状態遷移テスト支援装置7の補助記憶装置70にインストールすることができる。このように、図25等に示す各ステップをコンピュータに実行させるプログラムの形態として提供することもできる。
本発明の一実施形態におけるシステム全体のハードウェア構成図である。 上記実施形態において、状態遷移テスト支援装置の構成を示すブロック図である。 上記実施形態において、状態遷移表の構成を示す図である。 上記実施形態において、組み合わせ情報用セルに入力されるデータについて説明するための図である。 上記実施形態において、内部状態およびイベントが階層構造にされていない状態遷移表の一例を示す図である。 上記実施形態において、内部状態およびイベントが階層構造にされている状態遷移表の一例を示す図である。 上記実施形態において、リカバリー関連のシステムにおける状態遷移表の一部を示す図である。 上記実施形態において、状態遷移テスト支援装置を機能的な観点からみた機能ブロック図である。 上記実施形態において、テスト結果保持テーブルのレコードフォーマットを示す図である。 上記実施形態において、テスト結果保持テーブルにおけるレコードの特定について説明するための図である。 上記実施形態において、状態遷移表生成処理の手順を示すフローチャートである。 上記実施形態において、状態遷移表設計支援処理の手順を示すフローチャートである。 上記実施形態において、テストパスについて説明するための図である。 上記実施形態において、テストパスの生成について説明するための図である。 上記実施形態において、テストパスデータについて説明するための図である。 上記実施形態において、テストパスの新規生成について説明するための図である。 上記実施形態において、テストパスデータへの「遷移先の内部状態」の記録について説明するための図である。 上記実施形態において、テストケースの追加について説明するための図である。 上記実施形態において、テストパスデータへの内部状態の記録について説明するための図である。 上記実施形態において、テストパスデータへのイベントの記録について説明するための図である。 上記実施形態において、4つのテストケースを含むテストパスがクローズされたときにテスト結果保持テーブルに生成されるデータの例を示す図である。 上記実施形態において、同じような状態遷移が複数回繰り返される場合について説明するための図である。 上記実施形態において、組み合わせ情報用セルの備考欄への入力例を示す図である。 上記実施形態において、組み合わせ情報用セルの備考欄に入力が行われているときにテスト結果保持テーブルに生成されるデータの例を示す図である。 上記実施形態において、テスト支援処理の手順を示すフローチャートである。 上記実施形態において、テスト支援処理についての説明に用いる状態遷移表を示す図である。 上記実施形態において、テスト支援処理についての説明に用いる3つのテストパスを示す図である。 上記実施形態において、テスト支援処理についての説明に用いるテスト結果保持テーブルを示す図である。 上記実施形態において、テスト支援処理における「テストケースの抽出」についての説明に用いるテスト結果保持テーブルを示す図である。 上記実施形態において、テスト条件を示したダイアログの一例を示す図である。 上記実施形態において、組み合わせ情報用セルに保持される情報の例を示す図である。 上記実施形態において、テスト支援処理における「テスト結果の保存」についての説明に用いるテスト結果保持テーブルを示す図である。 上記実施形態において、テスト結果履歴表示処理で表示される画面例を示す図である。 上記実施形態において、テスト結果履歴表示処理で表示される画面例を示す図である。 上記実施形態において、エラー再現手順表示処理で表示される画面例を示す図である。 上記実施形態において、遷移テスト進捗表示処理で表示される画面例を示す図である。 上記実施形態において、遷移テスト進捗表示処理で表示される画面例を示す図である。
符号の説明
7…サーバ機(状態遷移テスト支援装置)
21…状態遷移表
31…テスト結果保持テーブル
220…状態遷移表生成部
221…内部状態入力受付部
222…イベント入力受付部
223…利用不可情報入力受付部
230…状態遷移表設計支援部
231…動作特定情報入力受付部
232…テストパス生成部
240…テスト支援部
241…テスト結果記録部
242…テストセル強調表示部
243…テストパス候補表示部
244…テスト結果履歴表示部
245…失敗テスト再現手順表示部
246…進捗表示部

Claims (29)

  1. システムの取り得る内部状態の遷移についてのテストであって複数のテストケースからなる状態遷移テストの実行を支援する状態遷移テスト支援装置であって、
    横方向又は縦方向の一方の方向に前記内部状態を列記するために設けられた内部状態用セルと、横方向又は縦方向のうち前記内部状態用セルとは異なる方向に前記システムで生じ得るイベントを列記するために設けられたイベント用セルと、前記内部状態用セルに記述されている内部状態と前記イベント用セルに記述されているイベントとの組み合わせに対応する情報として処理内容と遷移先の内部状態とを特定するための動作特定情報または前記システムにおいて生じることのない内部状態とイベントとの組み合わせであることを示す利用不可情報を記述するためにマトリクス状に設けられ前記状態遷移テストに含まれるテストケースに対応付けられ得る組み合わせ情報用セルとから成る状態遷移表を生成する状態遷移表生成手段と、
    前記組み合わせ情報用セルへの前記動作特定情報の入力を受け付ける動作特定情報入力受付手段と、
    前記動作特定情報入力受付手段によって受け付けられた動作特定情報に基づいて、前記状態遷移テストとして実行されるべき一連のテストケースからなるテストパスを生成するテストパス生成手段と、
    前記テストパス生成手段によって生成されたテストパスに含まれる各テストケースについてのテスト結果と、テストが実行された順序を特定するための実行順特定情報とを保持するためのテスト結果保持手段と、
    各テストケースについての外部から入力されるテスト結果を前記実行順特定情報とともに前記テスト結果保持手段に記録するテスト結果記録手段と
    前記テスト結果保持手段に保持されているテスト結果に基づいて、テストが実行されていないテストケースを含むテストパスが複数ある場合に当該複数のテストパスを表示するテストパス候補表示手段と、
    前記テスト結果保持手段に保持されているテスト結果に基づいて、テストが実行されているテストケースについてのテスト結果をテストケースを特定するための情報とともに表示するテスト結果履歴表示手段と
    を備え、
    前記テストパス候補表示手段によって表示されたテストパスの中からいずれかのテストパスが選択されると、その選択されたテストパスに含まれるテストケースの中から今回実行されるべきテストケースが抽出されることを特徴とする、状態遷移テスト支援装置。
  2. 前記テストパス生成手段によって生成されたテストパスに基づいて、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルを強調表示するテストセル強調表示手段を更に備えることを特徴とする、請求項1に記載の状態遷移テスト支援装置。
  3. 前記テストセル強調表示手段は、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルをそれ以外の組み合わせ情報用セルとは異なる色で表示することを特徴とする、請求項2に記載の状態遷移テスト支援装置。
  4. 前記テストセル強調表示手段は、前記状態遷移表に含まれる1または複数のセルを選択するためのカーソルを、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルに移動させることを特徴とする、請求項2または3に記載の状態遷移テスト支援装置。
  5. 前記テスト結果履歴表示手段は、前記テスト結果保持手段に保持されている実行順特定情報に基づいて、テストが実行されているテストケースについてのテスト結果をテストが実行された順序で表示することを特徴とする、請求項1からまでのいずれか1項に記載の状態遷移テスト支援装置。
  6. 前記テスト結果履歴表示手段は、外部から指定された組み合わせ情報用セルに対応付けられているテストケースを有するテストパスに含まれるテストケースについてのテスト結果を表示することを特徴とする、請求項1から5までのいずれか1項に記載の状態遷移テスト支援装置。
  7. 前記テスト結果履歴表示手段は、前記テストケースを特定するための情報として、各テストケースに対応付けられている組み合わせ情報用セルを示す番号と当該組み合わせ情報用セルに記述されている処理内容とを少なくとも表示することを特徴とする、請求項1から6までのいずれか1項に記載の状態遷移テスト支援装置。
  8. 前記テスト結果保持手段には、前記テスト結果としてテストが成功であったか失敗であったかを示す情報が保持され、
    前記テスト結果保持手段に保持されている各テストケースについてのテスト結果と実行順特定情報とに基づいて、前記テスト結果が失敗であるテストケースがあるときに該テストケースのテストが実行されるまでに実行された1以上のテストケースについての実行方法を、前記1以上のテストケースについてのテストが実行された順序で並べて表示する失敗テスト再現手順表示手段を更に備えることを特徴とする、請求項1からまでのいずれか1項に記載の状態遷移テスト支援装置。
  9. 前記失敗テスト再現手順表示手段は、前記テスト結果が失敗であるテストケースを含むテストパスについて、最初に実行されるべきテストケースから前記テスト結果が失敗であるテストケースまでのテストケースについての実行方法を表示することを特徴とする、請求項に記載の状態遷移テスト支援装置。
  10. 前記失敗テスト再現手順表示手段は、前記実行方法として、各テストケースに対応付けられている内部状態とイベントとを少なくとも表示することを特徴とする、請求項またはに記載の状態遷移テスト支援装置。
  11. 前記テスト結果保持手段に保持されている各テストケースについてのテスト結果に基づいて、前記状態遷移テストの進捗状況を表示する進捗表示手段を更に備えることを特徴とする、請求項1から10までのいずれか1項に記載の状態遷移テスト支援装置。
  12. 前記進捗表示手段は、テストが実行されていないテストケースを含むテストパスとそれ以外のテストパスとを区別して表示することを特徴とする、請求項11に記載の状態遷移テスト支援装置。
  13. 前記進捗表示手段は、テストが実行されているテストケースに対応付けられている組み合わせ情報用セルとテストが実行されていないテストケースに対応付けられている組み合わせ情報用セルとを区別して表示することを特徴とする、請求項11または12に記載の状態遷移テスト支援装置。
  14. 前記実行順特定情報は、各テストケースについてのテストが実行された年月日と時刻であることを特徴とする、請求項1から13までのいずれか1項に記載の状態遷移テスト支援装置。
  15. システムの取り得る内部状態の遷移についてのテストであって複数のテストケースからなる状態遷移テストの実行を支援する状態遷移テスト支援プログラムであって、
    横方向又は縦方向の一方の方向に前記内部状態を列記するために設けられた内部状態用セルと、横方向又は縦方向のうち前記内部状態用セルとは異なる方向に前記システムで生じ得るイベントを列記するために設けられたイベント用セルと、前記内部状態用セルに記述されている内部状態と前記イベント用セルに記述されているイベントとの組み合わせに対応する情報として処理内容と遷移先の内部状態とを特定するための動作特定情報または前記システムにおいて生じることのない内部状態とイベントとの組み合わせであることを示す利用不可情報を記述するためにマトリクス状に設けられ前記状態遷移テストに含まれるテストケースに対応付けられ得る組み合わせ情報用セルとから成る状態遷移表を生成する状態遷移表生成ステップと、
    前記組み合わせ情報用セルへの前記動作特定情報の入力を受け付ける動作特定情報入力受付ステップと、
    前記動作特定情報入力受付ステップで受け付けられた動作特定情報に基づいて、前記状態遷移テストとして実行されるべき一連のテストケースからなるテストパスを生成するテストパス生成ステップと、
    前記テストパス生成ステップで生成されたテストパスに含まれる各テストケースについての外部から入力されるテスト結果を、テストが実行された順序を特定するための実行順特定情報とともに所定のテスト結果保持部に記録するテスト結果記録ステップと
    前記テスト結果保持部に保持されているテスト結果に基づいて、テストが実行されていないテストケースを含むテストパスが複数ある場合に当該複数のテストパスを表示するテストパス候補表示ステップと、
    前記テスト結果保持部に保持されているテスト結果に基づいて、テストが実行されているテストケースについてのテスト結果をテストケースを特定するための情報とともに表示するテスト結果履歴表示ステップと
    をコンピュータのCPUがメモリにおいて実行させ
    前記テストパス候補表示ステップで表示されたテストパスの中からいずれかのテストパスが選択されると、その選択されたテストパスに含まれるテストケースの中から今回実行されるべきテストケースが抽出されることを特徴とする、状態遷移テスト支援プログラム。
  16. 前記テストパス生成ステップで生成されたテストパスに基づいて、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルを強調表示するテストセル強調表示ステップを更に含むことを特徴とする、請求項15に記載の状態遷移テスト支援プログラム。
  17. 前記テストセル強調表示ステップでは、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルがそれ以外の組み合わせ情報用セルとは異なる色で表示されることを特徴とする、請求項16に記載の状態遷移テスト支援プログラム。
  18. 前記テストセル強調表示ステップでは、前記状態遷移表に含まれる1または複数のセルを選択するためのカーソルが、次にテストが実行されるべきテストケースと対応付けられている組み合わせ情報用セルに移動させられることを特徴とする、請求項16または17に記載の状態遷移テスト支援プログラム。
  19. 前記テスト結果履歴表示ステップでは、前記テスト結果保持部に保持されている実行順特定情報に基づいて、テストが実行されているテストケースについてのテスト結果が、テストが実行された順序で表示されることを特徴とする、請求項15から18までのいずれか1項に記載の状態遷移テスト支援プログラム。
  20. 前記テスト結果履歴表示ステップでは、外部から指定された組み合わせ情報用セルに対応付けられているテストケースを有するテストパスに含まれるテストケースについてのテスト結果が表示されることを特徴とする、請求項15から19までのいずれか1項に記載の状態遷移テスト支援プログラム。
  21. 前記テスト結果履歴表示ステップでは、前記テストケースを特定するための情報として、各テストケースに対応付けられている組み合わせ情報用セルを示す番号と当該組み合わせ情報用セルに記述されている処理内容とが少なくとも表示されることを特徴とする、請求項15から20までのいずれか1項に記載の状態遷移テスト支援プログラム。
  22. 前記テスト結果保持部には、前記テスト結果としてテストが成功であったか失敗であったかを示す情報が保持され、
    前記テスト結果保持部に保持されている各テストケースについてのテスト結果と実行順特定情報とに基づいて、前記テスト結果が失敗であるテストケースがあるときに該テストケースのテストが実行されるまでに実行された1以上のテストケースについての実行方法を、前記1以上のテストケースについてのテストが実行された順序で並べて表示する失敗テスト再現手順表示ステップを更に含むことを特徴とする、請求項15から21までのいずれか1項に記載の状態遷移テスト支援プログラム。
  23. 前記失敗テスト再現手順表示ステップでは、前記テスト結果が失敗であるテストケースを含むテストパスについて、最初に実行されるべきテストケースから前記テスト結果が失敗であるテストケースまでのテストケースについての実行方法が表示されることを特徴とする、請求項22に記載の状態遷移テスト支援プログラム。
  24. 前記失敗テスト再現手順表示ステップでは、前記実行方法として、各テストケースに対応付けられている内部状態とイベントとが少なくとも表示されることを特徴とする、請求項22または23に記載の状態遷移テスト支援プログラム。
  25. 前記テスト結果保持部に保持されている各テストケースについてのテスト結果に基づいて、前記状態遷移テストの進捗状況を表示する進捗表示ステップを更に含むことを特徴とする、請求項15から24までのいずれか1項に記載の状態遷移テスト支援プログラム。
  26. 前記進捗表示ステップでは、テストが実行されていないテストケースを含むテストパスとそれ以外のテストパスとが区別して表示されることを特徴とする、請求項25に記載の状態遷移テスト支援プログラム。
  27. 前記進捗表示ステップでは、テストが実行されているテストケースに対応付けられている組み合わせ情報用セルとテストが実行されていないテストケースに対応付けられている組み合わせ情報用セルとが区別して表示されることを特徴とする、請求項25または26に記載の状態遷移テスト支援プログラム。
  28. 前記実行順特定情報は、各テストケースについてのテストが実行された年月日と時刻であることを特徴とする、請求項15から27までのいずれか1項に記載の状態遷移テスト支援プログラム。
  29. システムの取り得る内部状態の遷移についてのテストであって複数のテストケースからなる状態遷移テストの実行を支援する状態遷移テスト支援方法であって、
    横方向又は縦方向の一方の方向に前記内部状態を列記するために設けられた内部状態用セルと、横方向又は縦方向のうち前記内部状態用セルとは異なる方向に前記システムで生じ得るイベントを列記するために設けられたイベント用セルと、前記内部状態用セルに記述されている内部状態と前記イベント用セルに記述されているイベントとの組み合わせに対応する情報として遷移先の内部状態と処理内容とを特定するための動作特定情報または前記システムにおいて生じることのない内部状態とイベントとの組み合わせであることを示す利用不可情報を記述するためにマトリクス状に設けられ前記状態遷移テストに含まれるテストケースと対応付けられ得る組み合わせ情報用セルとから成る状態遷移表を生成する状態遷移表生成ステップと、
    前記組み合わせ情報用セルへの前記動作特定情報の入力を受け付ける動作特定情報入力受付ステップと、
    前記動作特定情報入力受付ステップで受け付けられた動作特定情報に基づいて、前記状態遷移テストとして実行されるべき一連のテストケースからなるテストパスを生成するテストパス生成ステップと、
    前記テストパス生成ステップで生成されたテストパスに含まれる各テストケースについての外部から入力されるテスト結果を、テストが実行された順序を特定するための実行順特定情報とともに所定のテスト結果保持部に記録するテスト結果記録ステップと
    前記テスト結果保持部に保持されているテスト結果に基づいて、テストが実行されていないテストケースを含むテストパスが複数ある場合に当該複数のテストパスを表示するテストパス候補表示ステップと、
    前記テスト結果保持部に保持されているテスト結果に基づいて、テストが実行されているテストケースについてのテスト結果をテストケースを特定するための情報とともに表示するテスト結果履歴表示ステップと
    を含み、
    前記テストパス候補表示ステップで表示されたテストパスの中からいずれかのテストパスが選択されると、その選択されたテストパスに含まれるテストケースの中から今回実行されるべきテストケースが抽出されることを特徴とする、状態遷移テスト支援方法。
JP2008112490A 2008-04-23 2008-04-23 状態遷移テスト支援装置、状態遷移テスト支援プログラム、および状態遷移テスト支援方法 Expired - Fee Related JP5198132B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008112490A JP5198132B2 (ja) 2008-04-23 2008-04-23 状態遷移テスト支援装置、状態遷移テスト支援プログラム、および状態遷移テスト支援方法
US12/403,658 US20090271661A1 (en) 2008-04-23 2009-03-13 Status transition test support device, status transition test support method, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008112490A JP5198132B2 (ja) 2008-04-23 2008-04-23 状態遷移テスト支援装置、状態遷移テスト支援プログラム、および状態遷移テスト支援方法

Publications (2)

Publication Number Publication Date
JP2009265810A JP2009265810A (ja) 2009-11-12
JP5198132B2 true JP5198132B2 (ja) 2013-05-15

Family

ID=41216173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008112490A Expired - Fee Related JP5198132B2 (ja) 2008-04-23 2008-04-23 状態遷移テスト支援装置、状態遷移テスト支援プログラム、および状態遷移テスト支援方法

Country Status (2)

Country Link
US (1) US20090271661A1 (ja)
JP (1) JP5198132B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012066635A1 (ja) * 2010-11-16 2012-05-24 株式会社日立製作所 テスト方法、テスト装置及びテスト実行用プログラム
US8930772B2 (en) * 2011-10-03 2015-01-06 Verizon Patent And Licensing Inc. Method and system for implementing a test automation results importer
JP5165132B1 (ja) * 2012-05-31 2013-03-21 株式会社 ディー・エヌ・エー ゲーム管理サーバ装置、ゲーム管理サーバ装置用プログラム、および、端末装置用プログラム
US9372786B1 (en) * 2012-06-13 2016-06-21 Amazon Technologies, Inc. Constructing state-transition functions for mobile devices
JP5812941B2 (ja) * 2012-06-14 2015-11-17 三菱電機ビルテクノサービス株式会社 プログラム試験装置
GB2532508B (en) * 2014-11-24 2017-03-15 Anritsu Corp Mobile communication terminal test device and a test analysis unit therefor
US10180685B2 (en) 2015-05-12 2019-01-15 Viabot Inc. Autonomous modular robot
JP7167714B2 (ja) * 2016-11-29 2022-11-09 日本電気株式会社 異常判定装置、異常判定方法、及び異常判定プログラム
US10438682B2 (en) * 2017-12-21 2019-10-08 International Business Machines Corporation List insertion in test segments with non-naturally aligned data boundaries
WO2019142266A1 (ja) 2018-01-17 2019-07-25 三菱電機株式会社 テストケース生成装置、テストケース生成方法およびテストケース生成プログラム
WO2020194455A1 (ja) * 2019-03-25 2020-10-01 三菱電機株式会社 テストケース生成装置、テストケース生成方法、およびテストケース生成プログラム
JP7530343B2 (ja) 2021-02-26 2024-08-07 株式会社オービック システム開発支援装置、システム開発支援方法およびシステム開発支援プログラム
JP7101934B1 (ja) * 2021-03-02 2022-07-19 株式会社Team F 情報処理装置およびプログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1268557A (en) * 1986-04-01 1990-05-01 Mikio Tomioka Method for displaying program executing circumstances and an apparatus using the same
US5485600A (en) * 1992-11-09 1996-01-16 Virtual Prototypes, Inc. Computer modelling system and method for specifying the behavior of graphical operator interfaces
JP2671793B2 (ja) * 1993-12-15 1997-10-29 日本電気株式会社 プログラムジェネレータ利用仕様シミュレーション方法およびその装置
JPH1040316A (ja) * 1996-07-18 1998-02-13 Toshiba Corp 図式のテスト支援装置及びテスト支援方法
JPH10198579A (ja) * 1997-01-08 1998-07-31 Fujitsu Ltd 状態遷移ルート抽出装置
JP2000112786A (ja) * 1998-10-05 2000-04-21 Fujitsu Ltd 試験ルート選定方法及び装置
JP3930255B2 (ja) * 2001-01-31 2007-06-13 株式会社東芝 システム仕様情報処理装置、システム仕様情報処理方法及びプログラム
US6986125B2 (en) * 2001-08-01 2006-01-10 International Business Machines Corporation Method and apparatus for testing and evaluating a software component using an abstraction matrix
TWI231451B (en) * 2001-12-31 2005-04-21 Penbex Data Systems Inc Program testing system and method
JP2004151884A (ja) * 2002-10-29 2004-05-27 Cats Kk 試験項目抽出プログラム
US20040128651A1 (en) * 2002-12-31 2004-07-01 Michael Lau Method and system for testing provisioning and interoperability of computer system services
US7191363B2 (en) * 2003-08-27 2007-03-13 Inventec Corporation Method for facilitating a test person to identify a test program item in server test
JP2005107823A (ja) * 2003-09-30 2005-04-21 Fujitsu Ltd 画面遷移図モデルを用いたソフトウエアテストプログラム、方法及び装置
JP2005316710A (ja) * 2004-04-28 2005-11-10 Mitsubishi Electric Corp ソフトウェア試験支援装置
US7669180B2 (en) * 2004-06-18 2010-02-23 International Business Machines Corporation Method and apparatus for automated risk assessment in software projects

Also Published As

Publication number Publication date
JP2009265810A (ja) 2009-11-12
US20090271661A1 (en) 2009-10-29

Similar Documents

Publication Publication Date Title
JP5198132B2 (ja) 状態遷移テスト支援装置、状態遷移テスト支援プログラム、および状態遷移テスト支援方法
JP6678780B2 (ja) プロセス視覚化プラットフォーム
CN109739855B (zh) 实现数据表拼接及自动训练机器学习模型的方法和系统
CN110928772A (zh) 一种测试方法及装置
TW200907778A (en) An interactive progress bar
JPWO2006033159A1 (ja) 業務モデル図作成支援プログラム、業務モデル図作成支援方法、および業務モデル図作成支援装置
JP2009501970A (ja) 有限状態マシンモデルの構築
JP6568017B2 (ja) テスト支援装置、および、テスト支援方法
JP2007323219A (ja) Fmea支援装置、その装置、そのプログラム及びその媒体
JP2007025497A (ja) 教育支援プログラムおよび教育支援装置
TW200406692A (en) Semiconductor test data analysis system
JP2010237841A (ja) 動作検証装置および動作検証プログラム
JP2008305019A (ja) シミュレーション装置及びシミュレーション方法及びプログラム
JP5319643B2 (ja) ソフトウェアプロダクトライン開発支援装置およびその方法
JP2015005228A (ja) カーソル移動制御装置、そのプログラム
JP2018028776A (ja) ソフトウェア資産管理装置、ソフトウェア資産管理方法、および、ソフトウェア資産管理プログラム
JP2011008628A (ja) プログラムモデル検査方法、プログラムモデル検査プログラム
Wang et al. Analyzing inaccurate artifact usages in a workflow schema
JP6379713B2 (ja) 設計支援プログラム、装置、及び方法
CN105359111A (zh) 用户界面检查方法、设备及程序
JP2014186617A (ja) 画面操作テスト項目実行装置
WO2022230189A1 (ja) テスト支援装置、テスト支援方法、及びプログラム
JP2009205643A (ja) 画面遷移設計支援装置、画面遷移設計支援方法および画面遷移設計支援プログラム
JP2009157505A (ja) ソフトウェア変更影響分析装置
CN106293897A (zh) 组件自动化调度系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101216

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110818

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120724

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120919

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130206

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160215

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5198132

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees