JP2007323573A - 機能テスト・スクリプト生成装置 - Google Patents
機能テスト・スクリプト生成装置 Download PDFInfo
- Publication number
- JP2007323573A JP2007323573A JP2006155983A JP2006155983A JP2007323573A JP 2007323573 A JP2007323573 A JP 2007323573A JP 2006155983 A JP2006155983 A JP 2006155983A JP 2006155983 A JP2006155983 A JP 2006155983A JP 2007323573 A JP2007323573 A JP 2007323573A
- Authority
- JP
- Japan
- Prior art keywords
- screen
- test
- test script
- screen transition
- input
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3414—Workload generation, e.g. scripts, playback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
【解決手段】(1)画面単位の機能仕様から入力変数、出力変数、及びそれぞれの変数のタイプ(型)を抽出する。(2)画面単位の仕様が複数組み合わされた複合機能仕様から画面遷移情報を抽出する。(3)(2)で得られた画面遷移に現れる1つ1つの画面に対し、先頭から順番に以下を行う。入力変数に対しては、それに対応するオブジェクト(ボタンやテキスト・フィールド等)に対するアクション(クリックや文字のセット)を表すスクリプトを生成する。出力変数に対しては、画面に表示されているテキスト情報を出力変数から決定される期待値と比較するスクリプトを生成する。
【選択図】図1
Description
(1) 情報処理システムの機能仕様からテスト仕様を生成する装置であって、前記情報処理システムの機能を記述した仕様ファイルからテスト対象のソフトウェアが生成する画面単位に、入力変数、出力変数、入力変数タイプ、および出力変数タイプを抽出する入出力変数抽出部と、前記仕様ファイルから画面遷移情報を抽出する画面遷移抽出部と、前記入力変数、前記出力変数、前記入力変数タイプ、前記出力変数および前記画面遷移情報を用いて、機能テスト実行のためのテスト・スクリプトを生成するテスト・スクリプト生成部と、を備えた装置。
1)仕様ファイルから、それぞれの画面に対して入力変数、出力変数、およびそれぞれの変数のタイプ(型)を抽出する。
2)仕様ファイルから画面遷移情報を抽出する。
3) 2)で得られた画面遷移に現れる1つ1つの画面に対し、先頭から順番に以下の
処理を行う。
a)入力変数に対しては、それに対応するオブジェクト(ボタンやテキスト・フィールド等)に対するアクション(クリックや文字のセット)を表すスクリプトを生成する。
b)出力変数に対しては、画面に表示されているテキスト情報を出力変数から決定される期待値と比較するスクリプトを生成する。
ここでは、機能仕様を記述する形式仕様言語としてZを、機能テスト用の自動実行ツールとして前述のRFTを使用した実装例を以下に記す。
Zで記述された仕様では、それがどのような画面分割や画面遷移によって実現されるかは規定されない。そのため、以下の規則を定めることにより対処する。
規則1: スキーマと画面を1対1に対応させる。
規則2: 画面遷移はスキーマ複合によって表現する。
スキーマ複合(schema composition)とはスキーマ演算の一種である。例えばスキーマAがシステムの状態をS1→S2へ遷移させ、スキーマBはS2→S3へ遷移させるとすると、2つのスキーマを複合したスキーマCは以下の[数1]のように記述され、システムの状態をS1→S3へ遷移させる。
仕様の宣言部に現れる入力変数名からは、それがどのようなタイプのオブジェクトによって実装されるのかは決定できない。例えば図2のbookという変数は、ブラウザ上のテキスト・フィールドに本の名称を入力することなのか、本の名称がリンクとして表示されていて、それをクリックすることなのか判定できない。これを解決するためプロパティ・ファイルを用意し、後述する形式で変数名とオブジェクト・タイプ名のマッピングを記述する方法を採った。但し、全ての入力変数に対してこのような対応関係を記載することは煩雑なため、プロパティ・ファイルにエントリーが無い場合に適用される規則を考案した。これについては後述の実施例5で説明する。
Webアプリケーションではセッション情報を保持するために、Cookie等にセッション・キーが格納される。Z言語を用いた仕様では、このセッション・キーは入力変数として記述される必要がある。一方、RFTのスクリプトはユーザ操作に対応しているため、ユーザの操作に現れないセッション・キーに関する情報は記述できない。この問題を解決するためSessionというオブジェクト・タイプにマッピングされる入力変数に対してはスクリプトを生成しないこととする。なお、入力変数がマッピングされるオブジェクト・タイプは、以下の優先順位で決定される。
1)プロパティ・ファイルに記述されているオブジェクト・タイプ
2)入力変数が属する集合名がSession、Submit(submitボタンに対応)、Password(passwordフィールドに対応)のいずれかの場合は集合名と同じオブジェクト・タイプ
3)Linkというオブジェクト・タイプ(アンカー・タグに対応。デフォルトとして使用される。)
オブジェクト・タイプが決定されても、オブジェクトそのものがDOM(Document Object Model)ツリーのどこに存在するかは分からない。このため、RFTが提供するAPI(Application Program Interface)を使用して動的にオブジェクトを探索する。探索のキーとなるのはオブジェクト・タイプと、リンクやボタン等の名称である。後者は仕様に記述される変数名とは一般に異なるため、RFTのデータ・プールを使用して入力変数名と実装名のマッピングを行う。データ・プールは出力変数名と期待値のマッピングにも使用し、テスト・スクリプトとデータの分離を実現する。
スキーマの宣言部の入力変数名からは、それがどのようなコントロール(ボタンやテキスト・フィールド等。以下、オブジェクト・タイプとも呼ぶ)によって実装されるかは決定できない。そのため、control.propertiesと名付けたプロパティ・ファイル内で以下の形式で入力変数名とオブジェクト・タイプ名のマッピングを記述する。
スキーマ名.入力変数名=オブジェクト・タイプ名
control.propertiesファイルに全ての入力変数のオブジェクト・タイプへのマッピングを記述するのは煩雑なため、以下の優先順位によりオブジェクト・タイプを決定することとした。これにより、多くの場合control.propertiesファイルにマッピングを記述する必要はなくなる。
1) control.propertiesに記述されているオブジェクト・タイプ
2) 入力変数が属するタイプ名がSession,Submit,Passwordのいずれかの場合は、タイプ名と同じオブジェクト・タイプ
3) Linkオブジェクト・タイプ(デフォルトとして使用される)
生成されるスクリプトを簡潔な形で記述するため、各GUIオブジェクトに対し、RFT APIを使用してwrapper classを作成した。例えばorderという入力変数で表されるSubmitボタンをクリックする場合は以下のようになる。
Submit submit = new Submit(this);
// body
:
:
submit.click(”order”);
出力変数に対応する期待値と、ブラウザ上に表示されるテキストとの比較を行う。例えば、図2のスキーマの例ではabstractが出力変数だが、これに対する期待値をRFTのdatapoolに記述することにより、スクリプトとデータの分離を実現している。ブラウザ上に表示されるテキストを取得するため、HtmlTextというwrapper classを作成し、その内部で”Html.HtmlDocument”というクラスのオブジェクトを動的に探索する。そのテキスト属性がブラウザ上に表示されるテキストである。期待値と実測値はRFTのVerificationPointクラスを使用して比較を行うことにより、テスト終了時にテスト結果を自動的に得ることができる。
個々の画面がそれぞれスキーマAi(i=0, ...,n−1)で表されているとする。それらのschema composition C=A0 o A1 o , ..., o An−1は画面遷移A0→A1→...→An−1を表す。Cに対応するテスト・スクリプトを生成するアルゴリズムは以下のとおりである。
1)Aiの入力変数全てにつき、オブジェクト・タイプを(2)の方法により決定する。(例えばボタン)
2)決定されたオブジェクトに対しそれぞれ決まるアクションを決定する。(例えばボタンに対してはclickアクション)
3)(3)で示されるスクリプトを生成する。但し入力変数が複数ある場合、LinkまたはSubmitに対するスクリプトは最後に生成する。
4)Aiの出力変数につき、(4)の方法により期待値と実際のテキストの比較を行う。
本発明の実施例の有効性を検証するため、eclipse上のプラグインとしてZ言語エディタを実装し、RFTと連携させた。図5はこのシステム構成を示したものである。クラス・ライブラリ56(Class Library)は、図1の実行時ライブラリ11に相当し、前述の(3)、(4)で述べたwrapper classである。Java(登録商標)で記述されたテスト・スクリプト55を実行することによって自動的にWebアプリケーションのテストを行うことができる。スクリプトは、ブラウザ上のDOMオブジェクト(リンクやボタン等)に対するアクション(クリック等)として記述される。RFT54はオブジェクトに対するアクションという形でスクリプトを記述することができ、また動的にオブジェクトを探索するAPIを備えている。検証のため、サンプル・アプリケーションの仕様をZで記述し,エディタ・メニューから呼び出されるアクションによってRFT54用の機能テスト・スクリプトを自動生成した。
htmlText.test(”abstract”);
submit.click(”order”);
htmlText.test(”prompt”)
textInput.setText(”userName”,”userValue”);
submit.click(”confirm”);
htmlText.test(”accept”);
1)画面単位で仕様を記述できること
2)画面単位で記述した仕様を組み合わせて、画面遷移を記述できること。
3)入力変数と出力変数を特定できること。
4)入力変数のタイプ(型)を取得できること
1)オブジェクトに対するアクションという形式でスクリプトを記述できること。
2)実行時にGUIオブジェクトを、オブジェクトの属性(クラス、ラベル等)をキーに指定することによって探索できること。
まず、UMLのアクティビティ・ダイアグラムによって仕様を記述する。図7は、このアクティビティ・ダイアグラムの例を示したものであり、ここでアクティビティ・ダイアグラムに現れる各UML要素の役割は以下のとおりである。
・ CallBehaviorAction
個々の画面を表す。図7中のHome70,Browse74等
・ InputPin
テキスト・フィールド等のフォーム要素を表す。図7中のtitle79,description80等
・ ControlFlow
画面遷移を表す。図7中のbrowse81,category82等。
・ CallBehaviorActionに対するステレオタイプ:
any(任意の画面を表す)、noTest(その画面のテキスト情報と期待値との比較を行わないこと、つまりテスト対象外であることを表す)
・ InputPinに対するステレオタイプ:
textField(テキスト・フィールドを表す)、select(リスト・ボックスを表す)、radioButton(ラジオボタンを表す)、等。
・ ControlFlowに対するステレオタイプ:
link(アンカー・タグを表す)、submit(サブミット・ボタンを表す)
図8に、これらUMLステレオタイプとその説明をまとめた。
以下に例を示す。→「例」とは???
生成されるスクリプトを簡潔な形で記述するため、各GUIオブジェクトに対し、RFT APIを使用してwrapper classを作成した。例えばgoというサブミット・ボタンをクリックする場合は以下のようになる。
Submit submit = new Submit(this);
// body
:
:
submit.click(”go”);
画面に表示されるテキストの期待値と、ブラウザ上に表示されるテキストとの比較を行う。例えば図7でBrowse画面に対する期待値をRFTのdatapoolに記述することにより、スクリプトとデータの分離を実現している。ブラウザ上に表示されるテキストを取得するため、HtmlTextというwrapper classを作成し、その内部で”Html.HtmlDocument”というクラスのオブジェクトを動的に探索する。そのテキスト属性がブラウザ上に表示されるテキストである。期待値と実測値はRFTのVerificationPointクラスを使用して比較を行うことにより、テスト終了時にテスト結果を自動的に得ることができる。また、ブラウザ上に表示される全ての文字を期待値として入力することは煩雑なため、正規表現による期待値入力も行えるようにしてある。
以下のアルゴリズム(4−1)および(4−2)を続いて行うことにより、アクティビティ・ダイアグラム上の全てのControlFlowを少なくとも1回通過するテスト・スクリプトを生成する。
この結果、図7の場合は以下の3つのテスト・スクリプトが生成される。
・<Home>−<Home>
・<Home>−<Browse>−<Category>−<Subcategory>−<Item>−<Home>
・<Home>−<Search>−<SearchResults>−<Item>−<Home>
(4−1)で得られたテスト・スクリプトを順番に連結する。この際、i番目のテスト・スクリプトの最後の画面とi+1番目のテスト・スクリプトの最初の画面が同じ場合は、後者を省略する。異なる場合は、アプリケーションのトップ画面(この場合Home)のURLを指定した遷移を行うことにより、i+1番目のテスト・スクリプトの最初の画面へ遷移する。この結果、図7の場合以下の1つのテスト・スクリプトに連結される。
<Home>−<Home>−<Browse>−<Category>−<Subcategory>−<Item>−(URL遷移)−<Home>−<Search>−<SearchResults>−<Item>−<Home>
以上、画面遷移のパスについてさらに詳細なアルゴリズムについては、後述する実施例3で説明する。
HTMLのForm要素のうち、リスト・ボックスやラジオボタンのような複数項目から有限個を選択するもの(図7ではtitleOption,descriptionOption,categorySelection)については、その組み合わせを網羅的にテストする。図7のアプリケーションの場合、titleOptionが2通り、descriptionOptionが2通り、categorySelectionが7通りあるので、合計2×2×7=28回Form要素を含む画面(Search画面)を繰り返し実行する必要がある。この繰り返し実行を最短のパスで行うため、以下のアルゴリズムを用いる。
2)Form画面の次の画面からURL遷移によってアプリケーションのトップ画面に遷移し、そこからForm画面へいたるパスのうち、最小のものを求める。このようなパスは必ず存在する。
3)1と2のパスの長さを比較し、短い方のパスを用いて繰り返し実行を行う。
以上のForm要素の組み合わせを網羅的にテストする最適の方法については実施例4でさらに説明する。
(a)全てのエッジを少なくとも1回通過するパスの集合を求めること
が必要となる。図11の場合、例えば以下の集合Aがこの条件を満たす。
(b)通過回数の総和がなるべく小さくなるパスの集合を求めること
が望ましい。
(a)の条件を満たす簡単なアルゴリズムとして、幅優先方式が考えられる。この方法は、Homeから始め、エッジが分岐するごとにパスをコピーしていく方法である。
Paths = {(H)};
Output = {};
while (Pathsが空ではない) {
NextPaths = {};
for (Pathsに含まれる全てのPathについて) {
CopyNum = (Pathの末端のNodeを起点とするエッジで未通過のものの数);
if (CopyNum!= 0) {
CopyNumだけ、Pathをコピーする。;
コピーされた各パスの先端に、それぞれのエッジを追加する。;
NextPathsにそれらのパスを追加する。;
}
else {
OutputにPathを追加する。;
}
}
Paths = NextPaths;
}
結果 = Output;
幅優先方式で生成されるパスの集合は冗長度が高く、また生成のために一時点で使用されるメモリ量が多いという欠点がある。これらを低減させる方式として、Homeから可能な限りエッジをたどっていく深さ優先方式が考えられる。但し、単純な深さ優先方式だと通過できないエッジが生じるため、工夫が必要である。まず、以下を定義する。
Homeノードからそのノードに到達するために必要な最短のステップ数。例えば、図11でHomeノードからノード4への距離は2である。
定義:Homeノードからエッジへの距離
Homeノードからエッジの起点ノードへの距離。例えば、図11でHomeノードからエッジ(4,6)への距離は2である。
Edges = {全てのエッジの集合};
Output = {};
while (Edgesが空でない) {
Edgesから、Homeからの距離が一番短いEdgeAを任意に1つ選ぶ。;
EdgeAにEdgesに属する他のエッジEdgeBを連結する。ここで(EdgeAの終点ノード)=( EdgeBの起点ノード)である。このようなEdgeBが複数存在する場合は、任意に1つを選ぶ。以下同様にEdgeC, EdgeD,...等が存在する限り、連結していく。但し、Homeに到達した場合は終了する。得られたサブパスをSubpathとする。;
Subpathに属するエッジをEdgesから取り除く。;
HomeとSubpathの起点ノードを結ぶ最短のパス(複数ある場合は任意に選択)をSubpathに連結する。得られたパスをPathとする。;
OutputにPathを追加する。;
}
結果 = Output;
(2)で述べた方式は(1)に比べると冗長度が小さいが、図11の有向グラフに適用した結果では(H,3,5,7)と(H,3,5,8,3)のパスにおいて(H,3,5)の部分が2度通過されている。
Input = {深さ優先方式を適用した結果得られるパスの集合};
do {
Path = (Inputに含まれる)AND(末端のノードが、Inputに含まれる別のパスPathAの中間ノードと一致する);
if (Pathが存在する) {
Pathが複数存在する場合は、任意に1つ選択する;
Node = (Pathの末端ノード);
if (PathAのHomeとNodeの間の全エッジの通過回数が2以上) {
Subpath = (PathAのNodeと末端ノードの間の部分);
PathにSubpathを連結する;
PathAのHomeとNodeの間の全エッジの通過回数を1減らす;
PathAをInputから除く;
}
}
else {
break;
}
} while (true)
結果 = Input;
定義:Formノード
FormノードとはForm要素を有するノードである。例えば、図11のノード5に相当する。
定義:Form実行結果ノード
Form実行結果ノードとは、Formノードを実行後に遷移するノードである。例えば図11のノード8に相当する。また以下、記号「+=」は、左辺のパスの最後尾に右辺のパスを連結することを表すものとする。
FormノードをNodeA、Form実行結果ノードをNodeBとする。NodeAへのパスをPathAとする。HomeノードとNodeAの距離をxとする。Formノードの反復実行回数をNとする。;
NodeBからNodeAへの最短距離をDijkstra法によって求めyとし、そのサブパスをSubpathとする。到達できない場合、yは+無限大とする。;
Path = PathA;
Path += (NodeA,NodeB);
For (int i=0; i<N−1; i++) {
Path += Subpath;
Path += (NodeA,NodeB);
}
}
else {
Path = null;
for (int i=0; i<N−1; i++) {
Path += PathA;
Path += (NodeA,NodeB);
Path += (NodeB,Home);
}
Path += PathA;
Path += (NodeA,NodeB);
}
結果 = Path;
機能テスト実行時には、画面の実測値と期待値の比較が行われる。これはそれぞれの文字列の比較によって行われるが、一般に実測される文字列の量は膨大なものになりうるため、それと一致する期待値を入力することは労力を要し、また、入力ミスもあり得る。この問題に対処するため、本発明では期待値に正規表現を使用することを可能とした。例えば、実測される文字列「2006年1月16日 月曜日 Search for Location Username Password」に対して、“.*Search for Location.*”という正規表現で文字列を指定することにより、テストを成功させることができる。ここで、「.*」は、任意のゼロ以上の文字を表すメタ文字である。
2 入出力変数抽出部
3 画面遷移抽出部
4 入出力変数
5 入出力変数タイプ
6 画面遷移情報
7 テスト・スクリプト生成部
8 テスト・スクリプトファイル
10 テスト・スクリプト生成装置
11 実行時ライブラリ部
12 テスト対象アプリケーション
13 自動テスト実行ツール
20 形式仕様
21 宣言部
22 公理部
23 schema
24 schema composition
31 入力変数book
32 出力変数abstract
33 プロパティ・ファイル
34 機能テスト・スクリプト
35 データ・プール
51 Z言語エディタ
52 JFaceテキストエディタ・フレームワーク
53 eclipseランタイム
54 RFT
55 テスト・スクリプト
56 クラス・ライブラリ
57 RFTテータ・プール
60 UML仕様解析部
61 UML2.0エディタ
62 トランスフォーメーションAPI
63 テスト・スクリプト・ジェネレータ・プラグイン
64 RFT6.1.1
66 アクティビティ図
67 テスト・スクリプト
68 ヘルパーJavaクラス
69 RFTテータ・プール
70 Home画面
71 All Screen
72 Search画面
73 SearchResults
74 Browse画面
75 Category画面
76 Subcategory画面
77 Item画面
78 CategorySelection
79 title
80 description
81 browse
82 category
91 ヘルパークラス・インスタンス化
92 リスト・ボックス選択
93 テキスト・フィールド・セッティング
94 ラジオボタン選択
95 サブミット・ボタン・クリック
96 テキスト比較
97 データ・プール
98 テーブル
99 ラジオボタン群
100 情報処理装置
Claims (16)
- ソフトウェアの機能仕様から該ソフトウェアの機能テストを実行するためのテスト・スクリプトを生成する装置であって、
前記機能仕様を記述した仕様ファイルから前記ソフトウェアが生成させる実行時の表示画面ごとに、入力変数、出力変数、入力変数タイプ、および出力変数タイプを抽出する入出力変数抽出部と、
前記仕様ファイルから画面遷移情報を抽出する画面遷移抽出部と、
前記入力変数、前記出力変数、前記入力変数タイプ、前記出力変数タイプ、および前記画面遷移情報を用いて、前記機能テストの実行のためのテスト・スクリプトを生成するテスト・スクリプト生成部と、
を備えた装置。 - 前記テスト・スクリプト生成部は、前記画面遷移情報に基づいて、
前記入力変数に対しては、該入力変数に関連付けられたオブジェクトに対応するアクションを表すテスト・スクリプトを生成し、
前記出力変数に対しては、前記ソフトウェアが実行時に生成させる表示画面に表示されるテキスト情報を該出力変数から決定される期待値と比較するテスト・スクリプトを生成する、
請求項1に記載の装置。 - 前記オブジェクトは、ボタン、テキスト・フィールド、またはリスト・ボックスを含み、前記アクションは、ユーザのクリック操作、文字列の入力操作、またはリストからの選択操作を含む、請求項2に記載の装置。
- 前記テスト・スクリプト生成部は、画面をノード、画面遷移をエッジとする有向グラフにおいて、前記画面遷移の全てのエッジを少なくとも1回通過し、かつ前記全てのエッジの通過回数の総和から前記エッジの数を引いた冗長度が所定の値より小さくなるようなパス集合を求めることによりテスト回数の最適化を行う、請求項1に記載の装置。
- 前記パス集合は、所定の「深さ優先−結合アルゴリズム」によって求める、請求項4に記載の装置。
- 前記テスト・スクリプト生成部は、前記ソフトウェアが生成させる実行時の表示画面を構成するForm要素の任意の組み合わせのテストのため、所定の「Form画面遷移アルゴリズム」に基づいて、最短の画面遷移で行うパス集合を求める、請求項1に記載の装置。
- 前記仕様ファイルは、Z言語を用いて記述される、請求項1に記載の装置。
- 前記テスト・スクリプト生成部は、前記入力変数に関連付けられたオブジェクトのタイプを、(1)所定のコントロール・プロパティ・ファイルに記述されているオブジェクト・タイプ、(2)該入力変数の属性を表すタイプ名がSession、Submit、Passwordのいずれかの場合は、前記タイプ名と同じオフジェクト・タイプ、(3)Linkオブジェクト・タイプ、の順に低くなる優先順位に基づいて決定する、請求項7に記載の装置。
- 前記テスト・スクリプトは、前記入力変数に関連付けられたオブジェクトを、テスト対象画面を表示するブラウザ内で前記オブジェクトのタイプとオブジェクト名称をキーとして動的に探索するために、アプリケーションのテスト実行時に呼び出される実行時ライブラリを用いる、請求項1に記載の装置。
- 前記仕様ファイルは、UMLのアクティビティ図により記述される、請求項1に記載の装置。
- 前記UMLのアクティビティ図は、画面要素、Form要素、および画面遷移要素のうち少なくとも一つのUML要素で構成される、請求項10に記載の装置。
- ソフトウェアの機能仕様から該ソフトウェアの機能テストを実行するためのテスト・スクリプトを生成する方法であって、
前記機能仕様を記述した仕様ファイルから前記ソフトウェアが生成させる実行時の表示画面ごとに、入力変数、出力変数、入力変数タイプ、および出力変数タイプを抽出するステップと、
前記仕様ファイルから画面遷移情報を抽出するステップと、
前記入力変数、前記出力変数、前記入力変数タイプ、前記出力変数タイプおよび前記画面遷移情報を用いて、前記機能テストの実行のためのテスト・スクリプトを生成するステップと、
を含む方法。 - 前記生成するステップは、画面をノード、画面遷移をエッジとする有向グラフにおいて、前記画面遷移の全てのエッジを少なくとも1回通過し、かつ前記全てのエッジの通過回数の総和から前記エッジの数を引いた冗長度が所定の値より小さいパス集合を求めることによりテスト回数の最適化を行う、請求項12に記載の方法。
- 前記生成するステップは、前記ソフトウェアが生成させる表示画面を構成するForm要素の任意の組み合わせのテストのため、所定の「Form画面遷移アルゴリズム」に基づいて、最短の画面遷移で行うパス集合を求める、請求項12に記載の方法。
- 前記仕様ファイルは、Z言語またはUMLを用いて作成される、請求項13に記載の方法。
- ソフトウェアの機能仕様から該ソフトウェアの機能テストを実行するためのテスト・スクリプトを生成するコンピュータ・プログラムであって、
コンピュータに、
前記機能仕様を記述した仕様ファイルから前記ソフトウェアが生成させる実行時の表示画面ごとに、入力変数、出力変数、入力変数タイプ、および出力変数タイプを抽出するステップと、
前記仕様ファイルから画面遷移情報を抽出するステップと、
前記入力変数、前記出力変数、前記入力変数タイプ、前記出力変数タイプおよび前記画面遷移情報を用いて、前記機能テストの実行のためのテスト・スクリプトを生成するステップと、
を実行させるコンピュータ・プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006155983A JP4148527B2 (ja) | 2006-06-05 | 2006-06-05 | 機能テスト・スクリプト生成装置 |
US11/753,041 US7624380B2 (en) | 2006-06-05 | 2007-05-24 | Generating functional test scripts |
US12/575,318 US7996819B2 (en) | 2006-06-05 | 2009-10-07 | Generating functional test scripts |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006155983A JP4148527B2 (ja) | 2006-06-05 | 2006-06-05 | 機能テスト・スクリプト生成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007323573A true JP2007323573A (ja) | 2007-12-13 |
JP4148527B2 JP4148527B2 (ja) | 2008-09-10 |
Family
ID=38856304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006155983A Expired - Fee Related JP4148527B2 (ja) | 2006-06-05 | 2006-06-05 | 機能テスト・スクリプト生成装置 |
Country Status (2)
Country | Link |
---|---|
US (2) | US7624380B2 (ja) |
JP (1) | JP4148527B2 (ja) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010009384A (ja) * | 2008-06-27 | 2010-01-14 | Fujitsu Ltd | 検証支援プログラム、検証支援装置、および検証支援方法 |
JP2010267024A (ja) * | 2009-05-13 | 2010-11-25 | Nippon Telegr & Teleph Corp <Ntt> | テストデータ生成方法及び装置及びプログラム |
JP2010267022A (ja) * | 2009-05-13 | 2010-11-25 | Nippon Telegr & Teleph Corp <Ntt> | テストデータ生成方法及び装置及びプログラム |
JP2010267023A (ja) * | 2009-05-13 | 2010-11-25 | Nippon Telegr & Teleph Corp <Ntt> | テストデータ生成方法及び装置及びプログラム |
JP2011003109A (ja) * | 2009-06-22 | 2011-01-06 | Fujitsu Ltd | モデル検査プログラム、モデル検査方法、モデル検査装置 |
WO2012128120A1 (ja) * | 2011-03-18 | 2012-09-27 | 独立行政法人産業技術総合研究所 | テスト仕様生成装置、テスト仕様生成方法、およびプログラム |
JP2013077048A (ja) * | 2011-09-29 | 2013-04-25 | Toyota Motor Corp | 自己診断機能を備えたコンピュータ、ソフトウェア作成方法、およびソフトウェア作成装置 |
JP2014044615A (ja) * | 2012-08-28 | 2014-03-13 | Nippon Telegr & Teleph Corp <Ntt> | グラフィカルユーザインタフェースの網羅的な自動操作方法及び装置 |
KR101491848B1 (ko) | 2013-06-19 | 2015-02-11 | 주식회사 큐에이엔씨 | 스크립트 유지보수 기능을 갖는 gui 소프트웨어 테스트 자동화 시스템 및 방법 |
JP2016100002A (ja) * | 2014-11-18 | 2016-05-30 | 富士通株式会社 | 組み合わせ計算によるイベント駆動ソフトウェアのイベント・シーケンス構築 |
WO2018142477A1 (ja) * | 2017-01-31 | 2018-08-09 | 三菱電機株式会社 | 要求分析装置、要求分析方法および要求分析プログラム |
JP2019053510A (ja) * | 2017-09-14 | 2019-04-04 | エム・ティ・ストラテジー株式会社 | テストケース自動作成装置、及びプログラム |
JP2019525372A (ja) * | 2016-08-26 | 2019-09-05 | 上海合福信息科技有限公司 | テスト設計書の生成方法 |
JP2019525373A (ja) * | 2016-08-26 | 2019-09-05 | 上海合福信息科技有限公司 | テストケースの生成方法 |
JP2020173570A (ja) * | 2019-04-09 | 2020-10-22 | 日本電信電話株式会社 | 解析装置、解析方法、及びプログラム |
Families Citing this family (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7917895B2 (en) * | 2001-07-27 | 2011-03-29 | Smartesoft, Inc. | Automated software testing and validation system |
US7966604B2 (en) * | 2006-08-14 | 2011-06-21 | Honeywell International Inc. | Web browser object based automatic testing method for web applications |
JP4961949B2 (ja) * | 2006-10-30 | 2012-06-27 | 富士通株式会社 | 生成プログラム、検査プログラム、生成装置、および生成方法 |
US7793154B2 (en) * | 2006-11-30 | 2010-09-07 | International Business Machines Corporation | Method and implementation for automating processes using data driven pre-recorded transactions |
US8015039B2 (en) * | 2006-12-14 | 2011-09-06 | Sap Ag | Enterprise verification and certification framework |
US8209666B1 (en) * | 2007-10-10 | 2012-06-26 | United Services Automobile Association (Usaa) | Systems and methods for testing interfaces and applications |
US8291373B2 (en) * | 2008-08-13 | 2012-10-16 | Hewlett-Packard Development Company, L.P. | Generating LoadRunner scripts |
US7908519B2 (en) * | 2008-11-21 | 2011-03-15 | At&T Intellectual Property I, L.P. | Trouble emulator for a rules-based diagnostic system |
US20100235807A1 (en) * | 2009-03-16 | 2010-09-16 | Hitachi Data Systems Corporation | Method and system for feature automation |
US9507692B2 (en) | 2009-04-15 | 2016-11-29 | Oracle International Corporation | Downward propagation of results for test cases in application testing |
US8527953B2 (en) * | 2009-06-11 | 2013-09-03 | Accenture Global Services Limited | Assessment system for choosing maintenance approaches for GUI-directed test scripts |
US8949791B2 (en) * | 2009-07-08 | 2015-02-03 | Vmware, Inc. | Distributed software testing using cloud computing resources |
CA2713247C (en) * | 2009-08-31 | 2015-06-16 | Accenture Global Services Gmbh | Integration environment generator |
US20110271252A1 (en) * | 2010-04-28 | 2011-11-03 | International Business Machines Corporation | Determining functional design/requirements coverage of a computer code |
US8631396B2 (en) * | 2010-06-03 | 2014-01-14 | International Business Machines Corporation | Schema specification to improve product consumability on installation, configuration, and/or un-installation activity |
KR101009424B1 (ko) * | 2010-07-01 | 2011-01-19 | 주식회사 큐에이엔씨 | Gui 소프트웨어 테스트 자동화 방법 및 자동화 장치 |
WO2012023928A1 (en) | 2010-08-17 | 2012-02-23 | Hewlett-Packard Development Company, L.P. | Providing automation code containing a representation of alternative interpretations of a user action |
US10013338B2 (en) | 2010-09-24 | 2018-07-03 | Waters Technologies Corporation | Techniques for automated software testing |
US9400962B2 (en) | 2010-10-29 | 2016-07-26 | Fujitsu Limited | Architecture for distributed, parallel crawling of interactive client-server applications |
US8813034B2 (en) * | 2010-12-30 | 2014-08-19 | Sap Ag | System and method for testing a software unit of an application |
US9208054B2 (en) * | 2011-02-14 | 2015-12-08 | Fujitsu Limited | Web service for automated cross-browser compatibility checking of web applications |
US20120239986A1 (en) * | 2011-03-14 | 2012-09-20 | Moshe Eran Kraus | Script execution with fallback |
US8719795B2 (en) * | 2011-04-12 | 2014-05-06 | Miami International Security Exchange, Llc | System and method for automating testing of computers |
US9448915B2 (en) * | 2011-04-13 | 2016-09-20 | Accenture Global Services Limited | Modular script designer for next generation testing system |
US9942124B2 (en) * | 2011-06-28 | 2018-04-10 | Time Warner Cable Enterprises Llc | Apparatus and methods for automated device testing in content distribution network |
US8788886B2 (en) * | 2011-08-31 | 2014-07-22 | Apple Inc. | Verification of SoC scan dump and memory dump operations |
US9405664B2 (en) | 2011-08-31 | 2016-08-02 | Hewlett Packard Enterprise Development Lp | Automating software testing |
TWI476587B (zh) * | 2011-12-01 | 2015-03-11 | Mstar Semiconductor Inc | 測試電子裝置之功能的測試方法以及測試裝置 |
CN103365643B (zh) * | 2012-03-30 | 2017-07-21 | Ge医疗系统环球技术有限公司 | 一种自动生成图形用户界面的测试脚本的方法及装置 |
US9323650B2 (en) * | 2012-07-23 | 2016-04-26 | Infosys Limited | Methods for generating software test input data and devices thereof |
US10049030B2 (en) | 2012-09-18 | 2018-08-14 | Infosys Limited | System and method for test output evaluation of a JAVA component |
US10339485B2 (en) * | 2012-12-14 | 2019-07-02 | International Business Machines Corporation | Efficiently generating test cases |
US9053238B2 (en) | 2013-01-25 | 2015-06-09 | International Business Machines Corporation | Tool-independent automated testing of software |
EP2951687A4 (en) * | 2013-02-01 | 2016-08-03 | Hewlett Packard Entpr Dev Lp | TEST STRIP GENERATION BASED ON ABSTRACT USER TESTING |
US9195456B2 (en) * | 2013-04-30 | 2015-11-24 | Hewlett-Packard Development Company, L.P. | Managing a catalog of scripts |
US8990777B2 (en) * | 2013-05-21 | 2015-03-24 | Concurix Corporation | Interactive graph for navigating and monitoring execution of application code |
US9734040B2 (en) | 2013-05-21 | 2017-08-15 | Microsoft Technology Licensing, Llc | Animated highlights in a graph representing an application |
US9280841B2 (en) | 2013-07-24 | 2016-03-08 | Microsoft Technology Licensing, Llc | Event chain visualization of performance data |
US9292415B2 (en) | 2013-09-04 | 2016-03-22 | Microsoft Technology Licensing, Llc | Module specific tracing in a shared module environment |
US9311062B2 (en) | 2013-10-31 | 2016-04-12 | International Business Machines Corporation | Consolidating and reusing portal information |
EP3069267A4 (en) | 2013-11-13 | 2017-09-27 | Microsoft Technology Licensing, LLC | Software component recommendation based on multiple trace runs |
IN2013CH05995A (ja) * | 2013-12-20 | 2015-06-26 | Infosys Ltd | |
CN104809053B (zh) * | 2014-01-23 | 2018-08-03 | 阿里巴巴集团控股有限公司 | 一种针对控件样式的测试方法和装置 |
US9753843B2 (en) * | 2014-11-20 | 2017-09-05 | Accenture Global Services Limited | Automated testing of web-based applications |
US9703689B2 (en) | 2015-11-04 | 2017-07-11 | International Business Machines Corporation | Defect detection using test cases generated from test models |
US10990516B1 (en) * | 2017-06-08 | 2021-04-27 | Liberty Mutual Insurance Company | Method, apparatus, and computer program product for predictive API test suite selection |
US10884906B2 (en) * | 2017-06-23 | 2021-01-05 | Ge Aviation Systems Llc | Generating scripts that facilitate execution of tasks within different run-time environments that utilize different languages and syntax |
CN108536597A (zh) * | 2018-04-11 | 2018-09-14 | 上海达梦数据库有限公司 | 一种终端测试方法、装置、终端设备及存储介质 |
US10664248B2 (en) * | 2018-07-16 | 2020-05-26 | Servicenow, Inc. | Systems and methods for comparing computer scripts |
CN109240913A (zh) * | 2018-08-14 | 2019-01-18 | 中国平安人寿保险股份有限公司 | 一种网页功能验证方法、计算机可读存储介质及终端设备 |
JP7070328B2 (ja) * | 2018-10-25 | 2022-05-18 | 日本電信電話株式会社 | テストデータ生成装置、テストデータ生成方法及びプログラム |
US10710239B2 (en) | 2018-11-08 | 2020-07-14 | Bank Of America Corporation | Intelligent control code update for robotic process automation |
US12013776B2 (en) | 2020-04-03 | 2024-06-18 | International Business Machines Corporation | Intelligent application scenario testing and error detection |
WO2022125111A1 (en) * | 2020-12-11 | 2022-06-16 | Hewlett-Packard Development Company, L.P. | Testing nodes |
DE102021201658A1 (de) | 2021-02-18 | 2022-08-18 | Continental Automotive Gmbh | Testausführungssystem, Testspezifikationsvorrichtung und Verfahren zum Betreiben eines Testausführungssystems |
CN115567340B (zh) * | 2022-09-22 | 2024-04-26 | 重庆长安汽车股份有限公司 | Can总线的测试工程生成方法、装置、设备及介质 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3464159B2 (ja) | 1998-01-30 | 2003-11-05 | 富士通株式会社 | テスト仕様書作成装置およびそのプログラムを格納した記憶媒体 |
US6854089B1 (en) * | 1999-02-23 | 2005-02-08 | International Business Machines Corporation | Techniques for mapping graphical user interfaces of applications |
US6505342B1 (en) * | 2000-05-31 | 2003-01-07 | Siemens Corporate Research, Inc. | System and method for functional testing of distributed, component-based software |
JP2002014845A (ja) | 2000-06-28 | 2002-01-18 | Hitachi Ltd | テスト・スクリプト部品の自動生成方法および装置 |
US7076713B1 (en) * | 2000-10-31 | 2006-07-11 | Lucent Technologies Inc. | Test generator for converting a model of computer component object behavior and stimulus values to test script |
US6944848B2 (en) * | 2001-05-03 | 2005-09-13 | International Business Machines Corporation | Technique using persistent foci for finite state machine based software test generation |
JP2002366387A (ja) | 2001-06-13 | 2002-12-20 | Hitachi Ltd | ソフトウェアプログラムの自動テストシステム |
JP2003044318A (ja) | 2001-08-02 | 2003-02-14 | Fujitsu Ltd | テスト支援プログラムおよびテスト支援方法 |
US6961873B2 (en) * | 2001-09-14 | 2005-11-01 | Siemens Communications, Inc. | Environment based data driven automated test engine for GUI applications |
US7290245B2 (en) * | 2001-10-18 | 2007-10-30 | Microsoft Corporation | Methods and systems for navigating deterministically through a graphical user interface |
JP2003337697A (ja) | 2002-05-20 | 2003-11-28 | Ul Systems Inc | ビジネスシステムの開発システムおよびビジネスシステムの開発方法 |
US7421683B2 (en) * | 2003-01-28 | 2008-09-02 | Newmerix Corp£ | Method for the use of information in an auxiliary data system in relation to automated testing of graphical user interface based applications |
JP4079801B2 (ja) | 2003-03-04 | 2008-04-23 | 富士通株式会社 | テスト支援プログラムおよびテスト支援方法 |
US7451455B1 (en) * | 2003-05-02 | 2008-11-11 | Microsoft Corporation | Apparatus and method for automatically manipulating software products |
JP2005085182A (ja) | 2003-09-11 | 2005-03-31 | Fujitsu Ltd | 試験支援システム |
US7398469B2 (en) * | 2004-03-12 | 2008-07-08 | United Parcel Of America, Inc. | Automated test system for testing an application running in a windows-based environment and related methods |
US7913231B2 (en) * | 2004-05-11 | 2011-03-22 | Sap Ag | Testing pattern-based applications |
US20050268285A1 (en) * | 2004-05-25 | 2005-12-01 | International Business Machines Corporation | Object oriented GUI test automation |
JP2006113993A (ja) | 2004-10-15 | 2006-04-27 | Odaiba Systems:Kk | インターネットシステムのためのテストシステム |
US20070005300A1 (en) * | 2005-05-31 | 2007-01-04 | David Haggerty | Systems and methods for graphically defining automated test procedures |
-
2006
- 2006-06-05 JP JP2006155983A patent/JP4148527B2/ja not_active Expired - Fee Related
-
2007
- 2007-05-24 US US11/753,041 patent/US7624380B2/en not_active Expired - Fee Related
-
2009
- 2009-10-07 US US12/575,318 patent/US7996819B2/en not_active Expired - Fee Related
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010009384A (ja) * | 2008-06-27 | 2010-01-14 | Fujitsu Ltd | 検証支援プログラム、検証支援装置、および検証支援方法 |
JP2010267024A (ja) * | 2009-05-13 | 2010-11-25 | Nippon Telegr & Teleph Corp <Ntt> | テストデータ生成方法及び装置及びプログラム |
JP2010267022A (ja) * | 2009-05-13 | 2010-11-25 | Nippon Telegr & Teleph Corp <Ntt> | テストデータ生成方法及び装置及びプログラム |
JP2010267023A (ja) * | 2009-05-13 | 2010-11-25 | Nippon Telegr & Teleph Corp <Ntt> | テストデータ生成方法及び装置及びプログラム |
JP2011003109A (ja) * | 2009-06-22 | 2011-01-06 | Fujitsu Ltd | モデル検査プログラム、モデル検査方法、モデル検査装置 |
WO2012128120A1 (ja) * | 2011-03-18 | 2012-09-27 | 独立行政法人産業技術総合研究所 | テスト仕様生成装置、テスト仕様生成方法、およびプログラム |
JP2013077048A (ja) * | 2011-09-29 | 2013-04-25 | Toyota Motor Corp | 自己診断機能を備えたコンピュータ、ソフトウェア作成方法、およびソフトウェア作成装置 |
JP2014044615A (ja) * | 2012-08-28 | 2014-03-13 | Nippon Telegr & Teleph Corp <Ntt> | グラフィカルユーザインタフェースの網羅的な自動操作方法及び装置 |
KR101491848B1 (ko) | 2013-06-19 | 2015-02-11 | 주식회사 큐에이엔씨 | 스크립트 유지보수 기능을 갖는 gui 소프트웨어 테스트 자동화 시스템 및 방법 |
JP2016100002A (ja) * | 2014-11-18 | 2016-05-30 | 富士通株式会社 | 組み合わせ計算によるイベント駆動ソフトウェアのイベント・シーケンス構築 |
JP2019525372A (ja) * | 2016-08-26 | 2019-09-05 | 上海合福信息科技有限公司 | テスト設計書の生成方法 |
JP2019525373A (ja) * | 2016-08-26 | 2019-09-05 | 上海合福信息科技有限公司 | テストケースの生成方法 |
WO2018142477A1 (ja) * | 2017-01-31 | 2018-08-09 | 三菱電機株式会社 | 要求分析装置、要求分析方法および要求分析プログラム |
JPWO2018142477A1 (ja) * | 2017-01-31 | 2019-06-27 | 三菱電機株式会社 | 要求分析装置、要求分析方法および要求分析プログラム |
JP2019053510A (ja) * | 2017-09-14 | 2019-04-04 | エム・ティ・ストラテジー株式会社 | テストケース自動作成装置、及びプログラム |
JP2020173570A (ja) * | 2019-04-09 | 2020-10-22 | 日本電信電話株式会社 | 解析装置、解析方法、及びプログラム |
JP7211228B2 (ja) | 2019-04-09 | 2023-01-24 | 日本電信電話株式会社 | 解析装置、解析方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
US20100037210A1 (en) | 2010-02-11 |
US20080072100A1 (en) | 2008-03-20 |
JP4148527B2 (ja) | 2008-09-10 |
US7996819B2 (en) | 2011-08-09 |
US7624380B2 (en) | 2009-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4148527B2 (ja) | 機能テスト・スクリプト生成装置 | |
US9348736B2 (en) | System, method, and computer readable medium for universal software testing | |
US9043759B1 (en) | System and method for generating software unit tests simultaneously with API documentation | |
US9280442B1 (en) | System and method for generating coverage reports for software unit tests | |
US8028276B1 (en) | Method and system for generating a test file | |
JP5991695B2 (ja) | 文書オブジェクトモデルツリーとカスケーディング・スタイル・シートとが取り出されることが可能なアプリケーションのソースコードを変更することによって生じる影響を検知するための方法、並びに、当該影響を検知するためのコンピュータ及びそのコンピュータ・プログラム | |
JP5775829B2 (ja) | ソフトウェアの構造可視化プログラムおよびシステム | |
JP4395761B2 (ja) | プログラムテスト支援装置およびその方法 | |
US8201143B2 (en) | Dynamic mating of a modified user interface with pre-modified user interface code library | |
US8661416B2 (en) | Method and apparatus for defining and instrumenting reusable Java server page code snippets for website testing and production | |
US20130159975A1 (en) | Detecting a broken point in a web application automatic test case | |
US8898649B2 (en) | Application program analysis method, analysis system and recording medium for identifying a contributing factor for an invalid operation of an application program | |
JP6440895B2 (ja) | ソフトウェア分析装置及びソフトウェア分析方法 | |
JP6486574B2 (ja) | プログラムコード生成装置、プログラムコード生成方法及びプログラムコード生成プログラム | |
US10380313B1 (en) | Implementation and evaluation of designs for heterogeneous computing platforms with hardware acceleration | |
CN111078217A (zh) | 脑图生成方法、装置和计算机可读存储介质 | |
CN112231197A (zh) | 一种页面测试的方法、装置和存储介质 | |
JP6866270B2 (ja) | Sql文抽出装置、sql文抽出方法及びプログラム | |
JP6878707B2 (ja) | 試験装置、試験方法および試験プログラム | |
US8561057B2 (en) | Information processing apparatus, processing method, and computer-readable recording medium having processing program recorded thereon | |
JP7260150B2 (ja) | Webサイト設計支援装置、Webサイト設計支援方法、及びプログラム | |
JP6081144B2 (ja) | ソースコード解析装置 | |
Hiltemann et al. | Tool development and integration into Galaxy | |
Freeman et al. | Understanding React Projects | |
JP4679540B2 (ja) | プログラム検証方法とシステムおよびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071205 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20071221 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20080107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080115 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080408 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080514 |
|
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: 20080617 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20080618 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080623 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110704 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110704 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120704 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130704 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |