JP4481037B2 - テスト支援装置 - Google Patents

テスト支援装置 Download PDF

Info

Publication number
JP4481037B2
JP4481037B2 JP2004052865A JP2004052865A JP4481037B2 JP 4481037 B2 JP4481037 B2 JP 4481037B2 JP 2004052865 A JP2004052865 A JP 2004052865A JP 2004052865 A JP2004052865 A JP 2004052865A JP 4481037 B2 JP4481037 B2 JP 4481037B2
Authority
JP
Japan
Prior art keywords
class
test
use case
information
unit
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 - Lifetime
Application number
JP2004052865A
Other languages
English (en)
Other versions
JP2005242751A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2004052865A priority Critical patent/JP4481037B2/ja
Publication of JP2005242751A publication Critical patent/JP2005242751A/ja
Application granted granted Critical
Publication of JP4481037B2 publication Critical patent/JP4481037B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、オブジェクト指向プログラムのテスト作業を支援するテスト支援装置に関するものである。
近年、ソフトウェア開発を行うため、オブジェクト指向ソフトウェア開発が用いられている。オブジェクト指向ソフトウェア開発においては、ソフトウェアの仕様として求められている機能を実現するための設計を、UML(Unified Modeling Language)を用いた設計モデルとして記述し、この設計モデルの内容に基づいてソフトウェアプログラムを作成することが一般に行われている。設計モデルの構築は、ソフトウェアの全体をクラスという単位に分割し、このクラスを組合せることによってソフトウェアの機能を実現するという考え方に基づいて行われる。
オブジェクト指向におけるクラスとは、データ構造とデータの操作手順(メソッド)をまとめた「型」であり、クラスに基づいて生成された「実体」がインスタンスである。また、オブジェクト指向によるソフトウェア開発においては、ソフトウェアの機能を実現するための設計をユースケース単位で行っている。ユースケースは、ある目的を達成するために行われる一連の処理であり、あるシステムを想定した場合に、そのシステムが有する機能である。したがって、設計モデルには各ユースケースを実現するために必要なクラスと、クラスのインスタンス間で行われる一連の呼出し(メソッド)による相互作用が記述される。このようにしてソフトウェアを構築する場合、1つのクラスを異なるユースケースを実現するための複数の相互作用に使用することができるため、機能とクラスとの間における対応関係は多対多となる。
ソフトウェアの機能(ユースケース)に着目した組合せテストにおいて、テストに失敗した場合には、再検討等を行う必要のあるクラス・メソッドのテスト(単体テスト項目)を抽出する必要がある。このため、大規模なソフトウェア開発において問題のあるクラスとメソッドの抽出を人手で行うことは、多大な労力を要し作業効率や信頼性の点からも困難であった。このような問題点を改善するため、ソフトウェアのテスト作業を自動化する技術が開発されている。
特許文献1に記載のテスト項目抽出装置は、設計モデルからパッケージとクラスの関係、クラス間関係、クラスと操作の関係、クラス名と状態遷移の関係を取得し、これらを使用してテスト項目を作成している。
特開2001−282536号公報
上記従来の技術によれば、オブジェクト指向プログラムのテストに必要なテスト項目を自動生成することはできるが、組合せテストで問題が検出されたときに再検討すべき単体テスト項目や追加すべき単体テスト項目を抽出することはできないといった問題があった。
本発明は、上記に鑑みてなされたものであって、組合せテストの結果に基づいて、問題のあるクラス・メソッドの抽出を可能とするテスト支援装置を得ることを目的とする。
上述した問題を解決し、目的を達成するために、本発明は、オブジェクト指向プログラム開発における開発済みのプログラムへの評価テスト支援として、クラスのインスタンス間で行なわれる呼び出しと、呼び出し先であるメソッドと当該メソッドが属するクラスの組であるクラス・メソッドと、を複数個組合せて実現されることを前提としたプログラムの機能項目であるユースケースの評価テスト支援を行なうテスト支援装置において、クラスのインスタンス間で行なわれる呼び出しと前記クラス・メソッドの組合せを示す図面によって構成されて前記ユースケースを表現する設計モデル図としての相互作用図と、前記ユースケースと当該ユースケースを表現する相互作用図の識別情報とを前記ユースケース毎に対応付けた組である第1の組から構成されたユースケース情報と、前記ユースケース毎に設定されている評価テストとしてクラスのインスタンス間で行なわれる呼び出しと前記クラス・メソッドを組み合わせた1〜複数の組合せテストを実行した場合の組合せテスト項目毎の成功または失敗を示すテスト結果と前記組合せテスト項目に対応するユースケースとを対応付けた組である第2の組から構成された組合せテスト結果情報と、前記クラス・メソッドと、当該クラス・メソッドに対して前記クラス・メソッド単体の機能をテストするための単体テスト項目が設定されているか否かを示す情報とを前記クラス・メソッド毎に対応付けた組である第3の組から構成された単体テスト情報と、を記憶しておく記憶部と、前記組合せテスト結果情報内から前記テスト結果が失敗であったユースケースを抽出するユースケース抽出部と、前記ユースケース情報を参照して、前記ユースケース抽出部が抽出したユースケースに対応する相互作用図の識別情報を抽出する相互作用図抽出部と、前記設計モデル図としての相互作用図を参照して、前記相互作用図抽出部が抽出した相互作用図の識別情報に対応する相互作用図に含まれる全てのクラス・メソッドを抽出するクラス・メソッド抽出部と、前記クラス・メソッド抽出部が抽出した各クラス・メソッドが、前記単体テスト情報内で単体テスト項目を設定されているか否かに基づいて、前記クラス・メソッド抽出部が抽出したクラス・メソッドに対して単体テスト項目の再検討または追加の何れが必要であるかの情報を設定したレポートを作成するレポート作成部と、を備えたことを特徴とする。
この発明によれば、設計モデルに含まれるユースケース、相互作用図、クラス・メソッドの関係に基づいて、評価テストで問題が検出されたユースケースのクラス・メソッドを、問題を含むクラス・メソッドとして抽出することができる。
この発明によれば、設計モデルに含まれるユースケース、相互作用図、クラス・メソッドの関係に基づいて、評価テストで問題が検出されたユースケースのクラス・メソッドを抽出しているので、問題を含むクラス・メソッドの抽出を容易に行うことが可能となる。したがって、ソフトウェアの品質改善を、問題を含むクラス・メソッドに基づいて行うことが可能になるという効果を奏する。
以下に、本発明にかかるテスト支援装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態
まず、本実施の形態に係るテスト支援装置の概念について説明する。図1は、本実施の形態に係るテスト支援装置の概念を説明するための図である。テスト支援装置1は、オブジェクト指向ソフトウェア開発によるソフトウェアのテスト支援を行うための装置であり、組合せテストにおいて問題のあった場合(テストに失敗した場合)に、改善の必要な単体テスト項目等を抽出する。テスト支援装置1は、組合せテスト結果情報100、設計モデル200、単体テスト情報300を用いてレポート400を作成する。
組合せテスト結果情報100は、組合せテストのテスト結果に関する情報である。ここでの組合せテストは、クラス(オブジェクトの雛型)を集合させたコンポーネント単位の機能項目やシステム単位の機能項目毎に行うユースケース(機能項目)のテストである。また、各ユースケースのテスト(組合せテスト)としては、種々のバリエーションのテストがある。
設計モデル200は、ユースケース情報210、相互作用図情報220、クラス・メソッド情報230を含んでいる。ユースケース情報210は、ユースケースを実現する相互作用図とユースケースとの対応関係を示す情報である。相互作用図情報220は、ユースケースを実現するためにクラスのインスタンス(オブジェクト)が相互作用する過程の一例を記述したものであり、インスタンス間における一連の呼出し関係を時系列または空間的に表した情報である。相互作用図には、相互作用において使用されるインスタンスと、インスタンス間でやり取りされる一連のメッセージ(メソッド)についての情報が含まれている。相互作用図からは、オブジェクトの識別IDとメソッドの識別IDを抽出することができ、オブジェクトの識別IDからクラスの識別IDを抽出することができる。クラス・メソッド情報230は、クラスとメソッドに関する情報であり、クラスの識別IDやメソッドの識別IDからクラス名やメソッド名を抽出することができる。
単体テスト情報300は、クラス・メソッドに単体テスト項目があるか否かを示す情報である。ここでの単体テスト項目とは、各クラス・メソッドに対するテストである。レポート400は、クラス・メソッドに対して単体テスト項目の再検討または追加の何れが必要であるかの情報と、改善優先度に関する情報を含んでいる。
つぎに、テスト支援装置1によるレポート作成の手順の概要について説明する。テスト支援装置1は、組合せテスト結果情報100から、ユースケース選択情報150を作成する。ユースケース選択情報150は、問題が検出された組合せテスト項目に対応するユースケースを抽出したものである。
つぎに、テスト支援装置1は、ユースケース選択情報150とユースケース情報210に基づいて、相互作用図選択情報160を作成する。相互作用図選択情報160は、抽出されたユースケースにおいてユースケースを実現する関係にある相互作用図を抽出したものである。
つぎに、テスト支援装置1は、相互作用図選択情報160と相互作用図情報220に基づいて、クラス・メソッド選択情報170を作成する。クラス・メソッド選択情報170は、抽出された相互作用図において相互作用図中で呼び出し先になっているクラスとメソッドを抽出したものである。
つぎに、テスト支援装置1は、クラス・メソッド選択情報170、クラス・メソッド情報230、単体テスト情報300に基づいて、レポート400を作成する。レポート400には、クラス・メソッドに対して単体テスト項目の再検討または追加の何れが必要であるかの情報と、改善優先度に関する情報が含まれており、これらの情報に基づいて単体テスト項目の改善を行うことが可能となる。
つぎに、本実施の形態に係るテスト支援装置の構成について詳細に説明する。図2は、本実施の形態に係るテスト支援装置の構成を示すブロック図である。テスト支援装置1は、オブジェクト指向によって開発されたソフトウェアのテスト作業を支援するパーソナルコンピュータ等の装置であり、入力部10、ユースケース抽出部20、相互作用図抽出部30、クラス・メソッド抽出部40、レポート作成部50、出力部60、制御部70からなる。
入力部10は、オブジェクト指向によって開発されたソフトウェアの組合せテスト結果情報100、設計モデル200、単体テスト情報300を入力する。ユースケース抽出部20は、組合せテスト結果情報100から問題(組合せテストの失敗)が検出された組合せテスト項目に対応するユースケースを抽出し、ユースケース選択情報150として相互作用図抽出部30に送る。
相互作用図抽出部30は、設計モデル200内のユースケース情報210に基づいて、ユースケース選択情報150内の各ユースケースに対してユースケースを実現する関係にある相互作用図を抽出し、相互作用図選択情報160としてクラス・メソッド抽出部40に送る。
クラス・メソッド抽出部40は、設計モデル200内の相互作用図情報220に基づいて、相互作用図選択情報160内の各相互作用図に対し、相互作用図中で呼び出し先になっているクラスとメソッドを抽出し、クラス・メソッド選択情報170としてレポート作成部50に送る。
レポート作成部50は、設計モデル200内のクラス・メソッド情報230および単体テスト情報300に基づいて、クラス・メソッド選択情報170内の各クラス・メソッドに対し、単体テスト項目の再検討または追加の何れが必要であるかを判断するとともに単体テスト項目の改善優先度を算出して単体テスト項目に関するレポート400を作成する。
出力部60は、レポート400を出力または表示する機能を備えている。制御部70は、入力部10、ユースケース抽出部20、相互作用図抽出部30、クラス・メソッド抽出部40、レポート作成部50、出力部60を制御する。
つぎに、図2に示したテスト支援装置のテスト支援処理手順を詳細に説明する。図3は、テスト支援装置によるテスト支援処理手順を示すフローチャートである。組合せテスト結果情報100をテスト支援装置1の入力部10に入力する。入力部10に入力された組合せテスト結果情報100は、ユースケース抽出部20に送られる。
図4は、組合せテスト結果情報の一例を示す図である。図4に示すように組合せテスト結果情報100は、組合せテスト項目と、組合せテスト項目に対する結果と、組合せテスト項目がどのユースケースの組合せテストであるかの情報からなる。組合せテストの「成功」とは、ユースケースにおいて予想通りの処理が実行できた場合であり、組合せテストの「失敗」とは、ユースケースにおいて予想通りの処理が実行できなかった場合をいう。
例えば、図4において組合せテスト項目1は、組合せテスト結果が「失敗」であり、組合せテスト項目1に対応するユースケースはユースケースAであることを示している。同様に、組合せテスト項目2は組合せテスト結果が「成功」であり、組合せテスト項目2に対応するユースケースはユースケースAであることを示し、組合せテスト項目3は、組合せテスト結果が「失敗」であり、組合せテスト項目3に対応するユースケースはユースケースBであることを示し、組合せテスト項目4は組合せテスト結果が「失敗」であり、組合せテスト項目4に対応するユースケースはユースケースBであることを示し、組合せテスト項目5は組合せテスト結果が「成功」であり、組合せテスト項目5に対応するユースケースはユースケースCであることを示し、組合せテスト項目6は組合せテスト結果が「成功」であり、組合せテスト項目6に対応するユースケースはユースケースCであることを示している。
ユースケース抽出部20は、組合せテスト結果情報100の中からテスト結果が「失敗」であった組合せテスト項目を、この組合せテスト項目に対するユースケース名とともに全て抽出し(ステップS100)、ユースケース選択情報150として相互作用図抽出部30に送る。
図5は、ユースケース選択情報の一例を示す図である。図5に示すようにユースケース選択情報150は、ユースケースにおいて問題が検出された組合せテスト項目数と各ユースケースの関係を示している。図4に示した組合せテスト結果情報100においては、組合せテスト結果が「失敗」であるのは、組合せテスト項目1(ユースケースA)、組合せテスト項目3(ユースケースB)、組合せテスト項目4(ユースケースB)である。したがって、ユースケース選択情報150においては、ユースケースAにおいて問題が検出された組合せテスト項目数を「1」と示し、ユースケースBにおいて問題が検出された組合せテスト項目数を「2」と示している。
つぎに、ユースケース情報210をテスト支援装置1の入力部10に入力する。入力部10に入力されたユースケース情報210は相互作用図抽出部30に送られる。図6は、ユースケース情報の一例を示す図である。図6に示すようにユースケース情報210は、ユースケースを実現する関係にある相互作用図とユースケースとの対応関係を示している。ここでは、ユースケースAを実現する関係にある相互作用図が相互作用図Pであり、ユースケースBを実現する関係にある相互作用図が相互作用図Qであり、ユースケースCを実現する関係にある相互作用図が相互作用図Rである場合を示している。
つぎに、相互作用図抽出部30は、ユースケース選択情報150とユースケース情報210に基づいて、ユースケース選択情報150内の各ユースケースに対してユースケースを実現する関係にある相互作用図を抽出する(ステップS110)。抽出した相互作用図は、相互作用図選択情報160として相互作用図抽出部30からクラス・メソッド抽出部40に送られる。
図7は、相互作用図選択情報の一例を示す図である。図7に示すように相互作用図選択情報160は、相互作用図とその関連情報の関係を示している。関連情報は、相互作用図に対応するユースケースおよびこのユースケースにおいて問題が検出された組合せテスト項目数を示す情報である。
図5に示したユースケース選択情報150には、ユースケースAとユースケースBが含まれている。ユースケースAにいて問題が検出された組合せテスト項目数が「1」であり、ユースケースBにおいて問題が検出された組合せテスト項目数が「2」である。また、図6に示したユースケース情報210においては、相互作用図PがユースケースAに対応し、相互作用図QがユースケースBに対応している。したがって、相互作用図選択情報160においては、相互作用図Pに対する関連情報を「A(1)」と示し、相互作用図Qに対する関連情報を「B(2)」と示している。
つぎに、相互作用図情報220がテスト支援装置1の入力部10に入力される。入力部10に入力された相互作用図情報220は、クラス・メソッド抽出部40に送られる。相互作用図情報220は複数の相互作用図からなる。
図8〜図10は、相互作用図の一例を示す図である。相互作用図は、UMLのシーケンス図やUMLのコラボレ−ション図で記述することができる。図8は、相互作用図PをUMLのシーケンス図で記述した図であり、図9は相互作用図QをUMLのシーケンス図で記述した図である。図8に示すように相互作用図Pは、クラスのインスタンス間における一連の呼出し関係(メソッド)を時系列に示したものである。ここでは、クラスXがメソッドf1()の呼出し先であり、クラスYがメソッドg1()の呼出し先であり、クラスZがメソッドh1()の呼出し先である場合を示している。
図9に示すように相互作用図Qでは、クラスXがメソッドf2()の呼出し先であり、クラスZがメソッドh1()の呼出し先である場合を示している。図10は相互作用図RをUMLのコラボレーション図で記述した図である。ここでは、クラスYがメソッドg2()の呼出し先であり、クラスZがメソッドh2()の呼出し先である場合を示している。
つぎに、クラス・メソッド抽出部40は、相互作用図選択情報160と相互作用図情報220に基づいて、相互作用図選択情報160内の各相互作用図に対して相互作用図中で呼び出し先になっているクラス・メソッドの(識別ID)を抽出する(ステップS120)。抽出したクラス・メソッドは、クラス・メソッド選択情報170としてクラス・メソッド抽出部40からレポート作成部50に送られる
図11は、クラス・メソッド選択情報の一例を示す図である。図11に示すようにクラス・メソッド選択情報170は、クラス・メソッドとその関連情報の関係を示している。ここでの関連情報は、クラス・メソッドに関連する相互作用図、相互作用図に対応するユースケース、ユースケースにおいて問題が検出されたテスト項目数を示す情報である。
図7に示した相互作用図選択情報160には相互作用図Pと相互作用図Qが含まれている。また、図8に示した相互作用図Pからは、クラス・メソッドとして、「X::f1()」、「Y::g1()」、「Z::h1()」を抽出することができ、図9に示した相互作用図Qからは、クラス・メソッドとして、「X::f2()」、「Z::h1()」を抽出することができる。したがって、クラス・メソッド選択情報170においては、クラス・メソッド「X::f1()」に対応する関連情報を「P(A(1))」と示し、クラス・メソッド「X::f2()」に対応する関連情報を「Q(B(2))」と示し、クラス・メソッド「Y::g1()」に対応する関連情報を「P(A(1))」と示し、クラス・メソッド「Z::h1()」に対応する関連情報を「P(A(1))、Q(B(2))」と示している。
つぎに、クラス・メソッド情報230をテスト支援装置1の入力部10に入力する。入力部10に入力されたクラス・メソッド情報230は、レポート作成部50に送られる。また、単体テスト情報300がテスト支援装置1の入力部10に入力されると、入力部10からレポート作成部50に単体テスト情報300が送られる。
図12は、クラス・メソッド情報の一例を示す図である。図12に示すようにクラス・メソッド情報230から、クラスの識別IDとクラス名の対応関係が分かり、メソッドの識別IDとメソッド名の対応関係が分かる。
図13は、単体テスト情報の一例を示す図である。図13に示すように単体テスト情報300は、各クラス・メソッドに単体テスト項目が既にあるか否かを示している。ここでは、クラス・メソッド「X::f1()」、クラス・メソッド「Y::g2()」、クラス・メソッド「Z::h1()」、クラス・メソッド「Z::h2()」には既に単体テスト項目が存在し、クラス・メソッド「X::f2()」、クラス・メソッド「Y::g1()」には単体テスト項目が存在していないことを示している。
つぎに、レポート作成部50は、クラス・メソッド選択情報170とクラス・メソッド情報230に基づいて、クラス・メソッド選択情報170内の各クラス・メソッドに対して単体テスト項目が存在するか否かを判断する。単体テスト項目が既に存在するクラス・メソッドは、単体テスト項目を再検討する必要があるため単体テスト項目の改善内容を「再検討」と判定し、単体テスト項目が存在しないクラス・メソッドは、単体テスト項目を追加する必要があるため単体テスト項目の改善内容を「追加」と判定する。ここでは、クラス・メソッド「X::f1()」、クラス・メソッド「Y::g2()」、クラス・メソッド「Z::h1()」、クラス・メソッド「Z::h2()」には既に単体テスト項目が存在しているため、これらのクラス・メソッドは「再検討」と判定される。一方、クラス・メソッド「X::f2()」、クラス・メソッド「Y::g1()」には単体テスト項目が存在していないため、これらのクラス・メソッドは「追加」と判定される。
さらに、レポート作成部50はクラス・メソッド選択情報170のクラス・メソッドと関連情報から、各クラス・メソッドが組合せテストに失敗した項目数(テスト失敗項目数)を算出する。そして、テスト失敗項目数に応じてテスト項目の改善優先度を順位付けする。ここでは、クラス・メソッド「X::f1()」のテスト失敗項目数が1つであり、クラス・メソッド「X::f2()」のテスト失敗項目数が2つであり、クラス・メソッド「Y::g1()」のテスト失敗項目数が1つであり、クラス・メソッド「Z::h1()」のテスト失敗項目数が3つであると算出される。したがって、テスト項目の改善優先度は優先度の高い順番に、クラス・メソッド「Z::h1()」、クラス・メソッド「X::f2()」、クラス・メソッド「X::f1()」、「Y::g1()」となる。レポート作成部50は、クラス・メソッド情報230、単体テスト情報300から判定した単体テスト項目の改善内容、クラス・メソッド選択情報170から得たクラス・メソッドのテスト失敗項目数に基づいて組合せテストに対するレポート400を作成する(ステップS130)。
図14は、作成されたレポートの一例を示す図である。図14に示すようにレポート400は、クラス・メソッド名、優先度に関する情報(優先度)、判定の内容(判定)によって表される。ここでは、クラス・メソッド「Z::h1()」が1番目の改善優先度であり、単体テスト項目の改善内容は「再検討」である。クラス・メソッド「X::f2()」が2番目の改善優先度であり、単体テスト項目の改善内容は「追加討」である。クラス・メソッド「X::f1()」が3番目の改善優先度であり、単体テスト項目の改善内容は「再検討」である。クラス・メソッド「Y::g1()」が4番目の改善優先度であり、単体テスト項目の改善内容は「再検討」である。作成されたレポート400は、出力部60から出力される。そして、出力されたレポート400を参照することによって単体テストの改善等が行われる。
なお、レポート400は、組合せテスト結果情報100、ユースケース情報210、相互作用図情報220のみからでも作成可能である。この場合は、レポート400において組合せテストで問題のあったユースケースのクラス・メソッドが記載される。
なお、本実施の形態においては図8と図9でシーケンス図を用い、図10でコラボレ−ション図を用いた場合について説明したが、相互作用図はシーケンス図とコラボレ−ション図のいずれを用いてもよい。
このように実施の形態によれば、設計モデル200に含まれるユースケース、相互作用図、クラスおよびメソッドの関係に基づいて、組合せテストで問題が検出されたユースケースのクラス・メソッドを抽出しているので、抽出されたクラス・メソッドに対応する単体テスト項目の改善や追加を効率的に行うことが可能となる。また、組合せテストに失敗したユースケースに対応するクラス・メソッドの単体テスト項目の個数に基づいて改善の優先度をつけているため、改善優先度に関する情報に基づいて単体テストの改善や追加を効率的に行うことが可能となる。したがって、短時間でソフトウェアの品質改善に対応可能となる。
以上のように、本発明にかかるテスト支援装置は、オブジェクト指向を用いて開発したソフトウェアの単体テストの改善や追加の支援に適している。
本実施の形態に係るテスト支援装置の概念を説明するための図である。 本実施の形態に係るテスト支援装置の構成を示すブロック図である。 テスト支援装置によるテスト支援処理手順を示すフローチャートである。 組合せテスト結果情報の一例を示す図である。 ユースケース選択情報の一例を示す図である。 ユースケース情報の一例を示す図である。 相互作用図選択情報の一例を示す図である。 相互作用図の一例を示す図である。 相互作用図の一例を示す図である。 相互作用図の一例を示す図である。 クラス・メソッド選択情報の一例を示す図である。 クラス・メソッド情報の一例を示す図である。 単体テスト情報の一例を示す図である。 作成されたレポートの一例を示す図である。
符号の説明
1 テスト支援装置
10 入力部
20 ユースケース抽出部
30 相互作用図抽出部
40 クラス・メソッド抽出部
50 レポート作成部
60 出力部
70 制御部
100 テスト結果情報
150 ユースケース選択情報
160 相互作用図選択情報
170 クラス・メソッド選択情報
200 設計モデル
210 ユースケース情報
220 相互作用図情報
230 クラス・メソッド情報
300 単体テスト情報
400 レポート

Claims (3)

  1. オブジェクト指向プログラム開発における開発済みのプログラムへの評価テスト支援として、クラスのインスタンス間で行なわれる呼び出しと、呼び出し先であるメソッドと当該メソッドが属するクラスの組であるクラス・メソッドと、を複数個組合せて実現されることを前提としたプログラムの機能項目であるユースケースの評価テスト支援を行なうテスト支援装置において、
    クラスのインスタンス間で行なわれる呼び出しと前記クラス・メソッドの組合せを示す図面によって構成されて前記ユースケースを表現する設計モデル図としての相互作用図と、
    前記ユースケースと当該ユースケースを表現する相互作用図の識別情報とを前記ユースケース毎に対応付けた組である第1の組から構成されたユースケース情報と、
    前記ユースケース毎に設定されている評価テストとしてクラスのインスタンス間で行なわれる呼び出しと前記クラス・メソッドを組み合わせた1〜複数の組合せテストを実行した場合の組合せテスト項目毎の成功または失敗を示すテスト結果と前記組合せテスト項目に対応するユースケースとを対応付けた組である第2の組から構成された組合せテスト結果情報と、
    前記クラス・メソッドと、当該クラス・メソッドに対して前記クラス・メソッド単体の機能をテストするための単体テスト項目が設定されているか否かを示す情報とを前記クラス・メソッド毎に対応付けた組である第3の組から構成された単体テスト情報と、
    を記憶しておく記憶部と、
    前記組合せテスト結果情報内から前記テスト結果が失敗であったユースケースを抽出するユースケース抽出部と、
    前記ユースケース情報を参照して、前記ユースケース抽出部が抽出したユースケースに対応する相互作用図の識別情報を抽出する相互作用図抽出部と、
    前記設計モデル図としての相互作用図を参照して、前記相互作用図抽出部が抽出した相互作用図の識別情報に対応する相互作用図に含まれる全てのクラス・メソッドを抽出するクラス・メソッド抽出部と、
    前記クラス・メソッド抽出部が抽出した各クラス・メソッドが、前記単体テスト情報内で単体テスト項目を設定されているか否かに基づいて、前記クラス・メソッド抽出部が抽出したクラス・メソッドに対して単体テスト項目の再検討または追加の何れが必要であるかの情報を設定したレポートを作成するレポート作成部と、
    を備えたことを特徴とするテスト支援装置。
  2. 前記レポート作成部は、
    前記クラス・メソッド抽出部が抽出したクラス・メソッドが、前記単体テスト情報内で単体テスト項目を設定されている場合は、このクラス・メソッドの単体テスト項目を再検討するべきであることを示すレポートを作成し、
    前記クラス・メソッド抽出部が抽出したクラス・メソッドが、前記単体テスト情報内で単体テスト項目を設定されていない場合は、このクラス・メソッドの単体テスト項目を追加するべきであることを示すレポートを作成することを特徴とする請求項1に記載のテスト支援装置。
  3. 前記ユースケース抽出部は、
    前記組合せテスト結果情報を参照して前記組合せテストの結果が失敗であったテスト項目の数を失敗テスト項目数として前記ユースケース毎に算出し、かつ前記テスト結果が失敗であったユースケースと前記失敗テスト項目数とを前記ユースケース毎に対応付けた組である第4の組から構成されたユースケース選択情報を生成し、
    前記相互作用図抽出部は、
    前記ユースケース情報および前記ユースケース選択情報を参照して、前記ユースケース抽出部が抽出したユースケースに対応する相互作用図の識別情報と前記第4の組とを前記相互作用図の識別情報毎に対応付けた組である第5の組から構成された相互作用図選択情報を生成し、
    前記クラス・メソッド抽出部は、
    前記設計モデル図としての相互作用図および前記相互作用図選択情報を参照して、抽出したクラス・メソッドと前記第5の組とを前記抽出したクラス・メソッド毎に対応付けた組である第6の組から構成されたクラス・メソッド選択情報を生成し、
    前記レポート作成部は、
    前記クラス・メソッド選択情報内の失敗テスト項目数に応じたテスト改善優先度を前記レポート内の前記単体テスト項目のそれぞれに設定して前記レポートを作成することを特徴とする請求項1または2に記載のテスト支援装置。
JP2004052865A 2004-02-27 2004-02-27 テスト支援装置 Expired - Lifetime JP4481037B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004052865A JP4481037B2 (ja) 2004-02-27 2004-02-27 テスト支援装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004052865A JP4481037B2 (ja) 2004-02-27 2004-02-27 テスト支援装置

Publications (2)

Publication Number Publication Date
JP2005242751A JP2005242751A (ja) 2005-09-08
JP4481037B2 true JP4481037B2 (ja) 2010-06-16

Family

ID=35024412

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004052865A Expired - Lifetime JP4481037B2 (ja) 2004-02-27 2004-02-27 テスト支援装置

Country Status (1)

Country Link
JP (1) JP4481037B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8504998B2 (en) * 2010-05-26 2013-08-06 Fujitsu Limited Extracting training scenarios from test cases for user-interface component recognition
JP5513263B2 (ja) 2010-06-03 2014-06-04 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
JP6257373B2 (ja) * 2014-02-24 2018-01-10 三菱電機株式会社 障害抽出支援装置

Also Published As

Publication number Publication date
JP2005242751A (ja) 2005-09-08

Similar Documents

Publication Publication Date Title
JP5350428B2 (ja) 自動プログラム生成装置、方法及びコンピュータプログラム
CN113505082B (zh) 应用程序测试方法及装置
Riebisch Supporting evolutionary development by feature models and traceability links
JP2007323219A (ja) Fmea支援装置、その装置、そのプログラム及びその媒体
US20070168928A1 (en) Computer-readable recording medium recording a part flow definition generation program, and part flow definition generation method and device
JP2006309340A (ja) 設計/検証支援システムおよび設計/検証支援方法
JP4481037B2 (ja) テスト支援装置
JP5366412B2 (ja) コールフロー作成システム、方法及びプログラム
CN111506305A (zh) 工具包生成方法、装置、计算机设备及可读存储介质
JP4660381B2 (ja) 計算機システムの性能評価装置、性能評価方法、及び性能評価プログラム
JP5041990B2 (ja) ソフトウェア部品抽出支援装置
CN102541570B (zh) 一种开发增值业务的方法、系统及业务开发客户端
JP5409407B2 (ja) 情報処理装置及びプログラム
JP2004341623A (ja) セキュリティ仕様書作成支援装置、および、セキュリティ仕様書作成支援方法
JP2008052359A (ja) テストケース生成装置、テストケース生成方法及びテストケース生成プログラム
JP2012048329A (ja) オブジェクト指向プログラム生成装置、その方法、プログラム
Arantes et al. Tool support for generating model-based test cases via web
JP2013235508A (ja) オブジェクト指向プログラム生成装置、その方法、プログラム
JP2005085182A (ja) 試験支援システム
JP5644599B2 (ja) オブジェクト指向モデル設計支援装置
CN107368321B (zh) 一种软件版本演进方法及系统
JP2012150740A (ja) プログラム生成装置及び方法
JP2008217443A (ja) ビジネスプロセスシミュレータ及びビジネスプロセスシミュレーションプログラム
JP2002116911A (ja) オブジェクト指向プログラムの自動生成装置
Ding et al. Creating multiplatform user interfaces by annotation and adaptation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060901

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090811

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091009

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100126

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100215

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100317

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

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4481037

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140326

Year of fee payment: 4

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250