JP4426764B2 - コンパイラテストプログラムの自動生成方法 - Google Patents

コンパイラテストプログラムの自動生成方法 Download PDF

Info

Publication number
JP4426764B2
JP4426764B2 JP2003011970A JP2003011970A JP4426764B2 JP 4426764 B2 JP4426764 B2 JP 4426764B2 JP 2003011970 A JP2003011970 A JP 2003011970A JP 2003011970 A JP2003011970 A JP 2003011970A JP 4426764 B2 JP4426764 B2 JP 4426764B2
Authority
JP
Japan
Prior art keywords
cell
program
test program
cells
test
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
JP2003011970A
Other languages
English (en)
Other versions
JP2004227129A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2003011970A priority Critical patent/JP4426764B2/ja
Priority to US10/760,366 priority patent/US7363614B2/en
Publication of JP2004227129A publication Critical patent/JP2004227129A/ja
Application granted granted Critical
Publication of JP4426764B2 publication Critical patent/JP4426764B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、テストプログラムの作成に係り、さらに詳しくは、コンパイラ開発時のテストに用いるテストプログラムの作成に適したテストプログラムの作成に関する。
【0002】
【従来の技術】
従来、高級言語で記述されたプログラムを計算機上で実行可能な形式に翻訳するコンパイラの開発において、その機能を検証するのに用いるテストプログラムは、コンパイラ設計者がその処理内容を考慮して人手作成したり、プログラム言語仕様に詳しい者が、その仕様に基づき人手により作成したりしていた。
【0003】
また、その一方で、テストプログラムの自動作成を目指し、計算機によるテストプログラムの自動生成も考えられている。その一つは、用意された複数の構文生成規則から乱数を用いて規則を選択し、選択された規則を基にテストプログラムを生成するものである(例えば、特許文献1)。また、既存のテストプログラムの文法網羅性を判定し、既存のテストプログラムから外れた文法を縮小仕様文法として出力し、その縮小文法仕様を基に追加テストプログラムを自動的に生成するものがある(例えば、特許文献2)。更に、バッカス記法で記述された構文規則を基に文パターンを生成し、生成された文パターンを人手によって編集し、テストプログラムとするものがある(例えば、特許文献3)。
【0004】
これらのテストプログラム自動生成方法は、いずれもテストプログラム内の単一の文を自動生成するのがその機能である。
【0005】
【特許文献1】
特開平1−220044号公報
【特許文献2】
特開平3−75840号公報
【特許文献3】
特開平6−214775号公報
【0006】
【発明が解決しようとする課題】
コンパイラの機能不良を摘出するには、テストプログラムを多数作成しテストを実施する必要がある。しかも近年の計算機アーキテクチャの複雑化に伴い、コンパイラ機能も複雑化し、コンパイラの全機能を十分にテストするには、上記従来のように人手によりテストプログラムを作成していたのでは、その工数は膨大になる。従って、コンパイラの出荷前に十分な機能検証が出来ない惧れがある。
【0007】
これに対処するため、上述のような計算機によるテストプラグラムの自動生成方法が提案されてきた。しかしながら、上述の方法はテストプログラムの単一の文を対象としている。摘出困難で重大な機能上の不具合は一般にはプログラム構造が複雑な場合であり、単一文内に閉じて発生するものは少なく、複数の文にまたがって条件が重なったときに発生する。この種の機能上の不具合は従来の主に単一文を生成対象としてきた計算機による自動生成方法では、摘出するのは困難である。
【0008】
【課題を解決するための手段】
本発明のテストプログラムの自動生成方法では、複数のプログラムの部分的な記述(小手続き記述、プログラムセルと呼ぶテストプログラムの要素)を、乱数を用いて選択し、組み合わせて、テストプログラムを生成する。
【0009】
【発明の実施の形態】
以下、本発明の実施例を図面を用いて説明する。
図1は、本発明のテストプログラム自動生成方法を実施してコンパイラのテストプログラムを自動生成するテストプログラム発生器100の構成例を示した図である。本実施例で示すテストプログラム発生器100は、例えばパーソナルコンピュータ上で動作するソフトウェアにより実現される。
【0010】
図1において、プログラムセル(単にセルとも言う)情報110とは、複数のプログラムの部分的な記述に関する情報の集まりであり、コンピュータの記憶装置に格納される。プログラムセルとは、図3、図4、図5図11を用いて詳細に後述するが、テストプログラムを構成する構成要素であり、各セルはセル重み情報111にてセル重みが規定されている。セル重みは、プログラムセルの集まりから特定のプログラムセルを乱数を用いて選択する時に、セル重みが重いほど当該セルが選択され易くなるよう取り扱われる。乱数発生器120により発生された乱数を基にプログラムセル組合せ器130にて、プログラムセルを選択し、該プログラムセルを組み合わせてテストプログラム140を生成する。
【0011】
重み付けは、例えば、以前にテストプログラムのバグを発見出来たセルや、バグを発見出来そうと予測されるセルに対して与えられる。重み付けはテスト毎に変更可能である。
【0012】
図2は、図1で説明したテストプログラム発生器100を組込んだコンパイラ検査システムの構成例を示した図である。本システムは、例えばパーソナルコンピュータ上で動作するソフトウェアにより実現される。該テストプログラム発生器100の出力であるテストプログラム140をテスト実行器220に入力する。テスト実行器220内では、検証対象コンパイラに対してテストプログラムを入力し、コンパイルを実施する230。コンパイルをして得られる実行形式ファイルを実行し240、その結果を実行結果260として記憶装置に格納する。
【0013】
他方、同一のテストプログラム140を期待値発生器210に入力する。期待値発生器210は、例えば使用実績のあるコンパイラを用いてテストプログラムをコンパイルし、コンパイルして得られる実行形式ファイルを実行することで実現できる。テストプログラム140を期待値発生器210に入力して得られた期待値250と該実行結果260とを結果比較器270に入力し、比較した結果を検査結果280として計算機の記憶装置に格納する。
【0014】
セル単体のテストは図7に後述のテストプログラムの作成に先立ってセル自体の正しさをチェックするためのものである。上記のテストプログラムの検査結果は複数のセルを組み合わせて1つのテストプログラムとして実行させた結果であるが、どのセルで異常があったかは分かるようになっている。
【0015】
図3から図6、および図11は本発明で提案するプログラムセルの一例を、PAD図を用いて示したものである。以下ではプログラムセルを基本セル、制御セル、関数セル、宣言・定義セルの4種類に分類し説明する。
【0016】
図3は、基本セルの構成例を示したPAD図である。基本セルは、「変数他の定義と初期値設定」320と「実行文」330と「実行結果の表示、保存」340が実行順序に従って記述されているプログラムセルである。さらに基本セルを単体でコンパイル・実行する場合に必要な「単体動作時に必要な記述1」310と「単体動作時に必要な記述2」350を含む。コンパイル時のオプション指定により「単体動作時に必要な記述1」310と「単体動作時に必要な記述2」350を制御し、基本セル単体でのコンパイルと動作確認を可能にする。
「単体動作時に必要な記述1」310は、例えば、
Figure 0004426764
と記述できる。また「単体動作時に必要な記述2」350は、例えば
Figure 0004426764
と記述できる。トークン _CELL_COMPILE_CHECK_ が定義されている時のみセル単体でのコンパイル・実行が可能である。プログラムセルを組み合わせたテストプログラムをコンパイル・実行する時は、トークン _CELL_COMPILE_CHECK_を定義しない。
【0017】
「変数他の定義と初期値設定」320では該基本セルを計算機上で翻訳・実行する場合に必要な変数他の定義と初期値設定のための記述である。変数の定義のほか定数やマクロなどの定義も含まれる。
【0018】
「実行結果の表示、保存」340記述は、基本セルの実行結果を計算機に接続する表示装置に表示し、また記憶装置に格納するための記述である。これによりプログラムセルが組込まれたテストプログラムを実行した場合、テスト実行者がテスト実行時にテストプログラムの動作状況を逐一把握できる。
【0019】
図4と図5は、制御セルの構成例を示したPAD図である。本実施例では、制御セルを図4に示す選択セルと図5に示す反復セルに分類した。いずれも「単体動作時に必要な記述1」310と「単体動作時に必要な記述2」350が、記述として組込まれているため、コンパイル時にオプションを指定することにより「単体動作時に必要な記述1」310と「単体動作時に必要な記述2」350を制御し、制御セル単体でのコンパイルと動作を確認することができる。
【0020】
図4は選択セルの構成例を示したPAD図である。「変数他の定義と初期値設定」410は、基本セルの場合と同様に、該選択セルを計算機上で翻訳・実行する場合に必要な変数他の定義と初期値設定のための記述である。「選択」420は、条件の記述と該条件に応じて「実行文」430を起動する記述である。選択セルには、「他のプログラムセル」440を入れ子で組み込むことが可能である。他のプログラムセルが組み込まれていなくともこの選択セルは実行出来る。「実行結果の表示、保存」450は、基本セルと同様に、選択セルの実行結果を計算機に接続する表示装置に表示し、また記憶装置に格納するための記述である。
【0021】
図5は反復セルの構造を示したPAD図である。「変数他の定義と初期値設定」510は、基本セルや制御セルと同様に、該反復セルを計算機上で翻訳・実行する場合に必要な変数他の定義と初期値設定のための記述である。「反復」520は、「実行文」530を反復して起動するための記述である。反復セルには、選択セルと同様「他のプログラムセル」540を入れ子で組込むことが可能である。「実行結果の表示、保存」550は、基本セルや選択セルと同様に、反復セルの実行結果を計算機に接続する表示装置に表示し、また記憶装置に格納するための記述である。
【0022】
図6は関数セルの構造を示したPAD図である。関数セルも基本セルや制御セルと同様に単独で動作させることが可能である。「単体動作時に必要な記述1」310と「単体動作時に必要な記述2」350が組込まれているため、コンパイル時のオプション指定により「単体動作時に必要な記述1」310と「単体動作時に必要な記述2」350を制御し、関数セル単体でのコンパイルと動作を確認することができる。基本セルや制御セルと同様に「変数他の定義と初期値設定」610は、該関数セルを計算機上で翻訳・実行する場合に必要な変数他の定義と初期値設定のための記述である。「関数」620は、よそで定義された関数を呼び出すための記述である。「実行結果の表示、保存」630は、基本セルや制御セルと同様に、該関数セルの実行結果を計算機に接続する表示装置に表示し、また記憶装置に格納するための記述である。
【0023】
図11は宣言・定義セルの構造の一例を示したPAD図である。宣言・定義セルは、他のプログラムセル間で共通に利用する構造体等の宣言や関数セルの関数の定義、#include文を記述する。宣言・定義セルは、プログラムセルを組み合わせる時に必ず先頭に一つ配置される。
【0024】
図7は、図1に示すプログラムセル組合せ器130で実施する処理の処理手順を示した図である。計算機上の記憶装置に格納された図3から図6および図11に示す基本セル、制御セル、関数セル、宣言・定義セルの各プログラムセル情報110とセル重み情報111を入力として、乱数発生器120で生成された乱数を用いてプログラムセルを選択し、組み合わせてテストプログラム140を生成する。詳細は後述する。
【0025】
図8、図9、図10は、図7に示す処理手順を計算機のソフトウェアを用いて実現する場合に、計算機の主記憶上に実現されるテーブルの一例を示す。図8はセル管理テーブル800の一例を示した図である。項番810はセルのエントリ番号が格納される。セル名称820にはセルの名称が格納される。セルタイプ830には、基本セル/制御セル/関数セル/宣言・定義セルのセルの種類が格納される。
【0026】
セル重み840は、セル管理テーブルに登録されたセルの中から、乱数を用いてセルを選択する時に選択され易さを反映させるための値である。例えばセル重み2のプログラムセルは、セル重み1のプログラムセルに比較して2倍選択され易くする等が考えられる。セル記述テーブル情報850は、セル記述テーブル900に関する情報を格納する。セル記述テーブル情報850は、ポインタ851と記述長852とから構成される。ポインタ851は、該当セルのセル記述テーブル900内でのセル記述の先頭文字の番地を示し、記述長852は該セル記述の長さを文字数で示す。
【0027】
図9は、セル記述テーブル900の一例を示した図である。セル記述テーブル900は、番地910とセル記述文字920とからなる。番地910はセル記述テーブル900に格納される文字のアドレスを示し、文字920には、セル記述の各文字が格納される。例えば、図8の項番1のセルの実際の記述そのものは、セル記述テーブル情報850にあるようにポインタ851が0を指し、記述長852が156である。すると、図8の項番1の記述は図9の0番地から155番地までにあるということが分かる。ここで、文字にはセル記述に使われている英数字、空白、改行記号などセル記述に必要な情報が全て含まれる。従って図8の項番1のセルを実行するときは図9の0番地から155番地まで読み出される。
【0028】
図10は、選択セルテーブル1000の構成例を示した図である。選択セルテーブル1000は、実行順番1010と選択セルポインタ1020とからなる。実行順番1010は、図7に示す処理手順に従って、乱数を用いて選択されたプログラムセルの選択テーブル内でのエントリ順(テストプログラム中のセルの並び順)を示す。選択セルポインタ1020は、図7に示す処理手順に従って、乱数を用いて選択されたプログラムセルのセル管理テーブル800の項番が格納される。
【0029】
以下、図7に示す処理手順に従って、図8から図10に示すテーブルを用いてプログラムセル組合せ器で実現する処理内容について説明する。
【0030】
図7に示す処理手順において、「内部テーブルへの展開」710で、図1のプログラムセル情報110とセル重み情報111は、図8に示すセル管理テーブル800と図9に示すセル記述テーブル900に展開される。「乱数を用いたプログラムセル列の生成」720では、図8に示すセル管理テーブル800に登録されたプログラムセルを対象に、乱数発生器120で発生させた乱数を用いてプログラムセルを選択する。この時セル管理テーブル800のセル重み840に記載された値を基に、該当するプログラムセルの選択され易さを調整する。例えばセル重み3のプログラムセルの選択され易さをセル重み1のプログラムセルの3倍となる様に調整することができる。選択されたプログラムセルは選択セルテーブル1000に登録される。即ち、実行順番1010にセルが選択された順を、選択セルポインタ1020に選択されたプログラムセルのセル管理テーブル800内の項番を格納する。
【0031】
選択セルテーブル1000に登録された順序に従って、選択セルテーブル1000に登録されたプログラムセルの最後まで、プログラムセルに対して以下の処理を実施する730。着目したプログラムセルの一つ手前のセルが、基本/関数セルか制御セルかの判定740を行ない、基本セルと関数セルの場合には、着目したプログラムセルを連接して配置750する。制御セルの場合は、入れ子構造となるよう着目したプログラムセルを組込む760。
【0032】
以上の手順に従い組立てられたプログラムセルで構成されるテストプログラムにおいて、プログラムセル間での変数の共用化を行なう770。変数の共用化とはセル間で変数の名称を同じにして、前のセルの演算結果が後のセルの演算に反映できるようにすることを示す。プログラムセルは、それぞれ独自の変数を定義しているが、ここでは変数を共用化しプログラムセル間でデータのやり取りが行なえるようにする。
【0033】
以上の処理手順従いテストプログラムを自動生成することが可能である。
【0034】
以上のように、セルを種類毎に分け、これらから実行するセルとその実行順を決めるようにしたため、コンパイラのテストに必要な多様なテストプログラムが出来る。
【0035】
本実施例によれば、複数のプログラムセルから、プログラムセルに付属するセル重みを基に、乱数を用いてプログラムセルを順序付けて選択し、組み合わせることにより、テストプログラムセルを自動生成することができる。これによりコンパイラをテストするに十分なテストプログラムを得ることができる。さらに、セル重みを調整することで、選択されるプログラムセルの傾向を変えることができ、例えば不良の発生傾向に応じて生成されるテストプログラムを調整することができる。従って、テストプログラム作成自動化によりテスト作成工数削減とコンパイラの網羅的なテストを可能にする。
【0036】
付記
1.コンパイラによって翻訳され前記コンパイラのテストプログラムの要素となる小手続き記述の集合から乱数を用いて該小手続き記述を複数選択し、選択された小手続き記述を組み合わせて、手続き記述を生成するテストプログラムの自動生成方法であって、
前記小手続き記述自身が、該小手続き記述を翻訳する場合、単独で翻訳する場合と複数の小手続き記述を組み合わせて生成された新たな手続き記述を翻訳する場合を切り替えるための記述を有することを特徴とするテストプログラムの自動生成方法。
2.コンパイラによって翻訳され前記コンパイラのテストプログラムの要素となる小手続き記述の集合から乱数を用いて該小手続き記述を複数選択し、選択された小手続き記述を組み合わせて、手続き記述を生成するテストプログラムの自動生成方法であって、
前記小手続き記述は、手続きを実行順序に従って並べた小手続き記述と、手続きの繰返しを記述した小手続き記述と、選択を記述した小手続き記述とを有することを特徴とするテストプログラムの自動生成方法。
【0037】
【発明の効果】
本発明によれば、多様なテストプログラムを自動的に作成することが出来る。
【図面の簡単な説明】
【図1】テストプログラム発生器の構成例を示す図である。
【図2】コンパイラ検査システムの構成例を示す図である。
【図3】基本セルの構成例を示す図である。
【図4】選択セルの構成例を示す図である。
【図5】反復セルの構成例を示す図である。
【図6】関数セルの構成例を示す図である。
【図7】プログラムセル組合せ器の処理手順の一例を示す図である。
【図8】セル管理テーブルの構成例を示す図である。
【図9】セル記述テーブルの構成例を示す図である。
【図10】選択セルテーブルの構成例を示す図である。
【図11】宣言・定義セルの構成を示す図である。
【符号の説明】
110…プログラムセル情報、111…セル重み情報、120…乱数発生器
130…プログラムセル組合せ器、140…テストプログラム

Claims (2)

  1. 検査対象のコンパイラにコンパイルさせ、前記検査対象のコンパイラをテストするためのテストプログラムの要素となる、計算機の記憶装置に格納されたプログラムセルの集合から、前記計算機により乱数を用いて該プログラムセルを複数選択し、選択されたプログラムセルを組み合わせて、前記テストプログラムを生成するテストプログラムの自動生成方法であって、
    前記プログラムセルには、変数他の定義と初期値設定、実行文、及び、実行結果の表示・保存を実行順序に従って記述した基本セルと、条件と該条件に応じた実行文の起動又は実行文の反復した起動を記述し他のプログラムセルを入れ子で組み込むことができる制御セルと、他で定義された関数の呼び出しを記述した関数セルとを含み、
    前記計算機は、前記乱数を用いて選択されたプログラムセルを前記記憶装置のテーブルに登録し、
    前記テーブルに登録された順序に従って、前記選択されたプログラムセルを配置する際に、
    着目プログラムセルの一つ前のプログラムセルが前記基本セル若しくは前記関数セルか前記制御セルかを判定し、前記基本セル若しくは前記関数セルの場合には、前記着目プログラムセルを当該基本セル若しくは当該関数セルに連接して配置し、前記制御セルの場合は、前記着目プログラムセルを当該制御セルに入れ子で組み込むことを特徴とするテストプログラムの自動生成方法。
  2. 前記乱数を用いて前記プログラムセルを選択する場合、前記プログラムセルの選択のされ易さを示す数値を該プログラムセルに割り当て、該数値を反映して前記プログラムセルを選択することを特徴とする請求項1記載のテストプログラムの自動生成方法。
JP2003011970A 2003-01-21 2003-01-21 コンパイラテストプログラムの自動生成方法 Expired - Fee Related JP4426764B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003011970A JP4426764B2 (ja) 2003-01-21 2003-01-21 コンパイラテストプログラムの自動生成方法
US10/760,366 US7363614B2 (en) 2003-01-21 2004-01-21 Automatic test program generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003011970A JP4426764B2 (ja) 2003-01-21 2003-01-21 コンパイラテストプログラムの自動生成方法

Publications (2)

Publication Number Publication Date
JP2004227129A JP2004227129A (ja) 2004-08-12
JP4426764B2 true JP4426764B2 (ja) 2010-03-03

Family

ID=32900717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003011970A Expired - Fee Related JP4426764B2 (ja) 2003-01-21 2003-01-21 コンパイラテストプログラムの自動生成方法

Country Status (2)

Country Link
US (1) US7363614B2 (ja)
JP (1) JP4426764B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060031718A1 (en) * 2004-08-09 2006-02-09 Total System Services, Inc. System and method for generating production-quality data to support software testing
DE102006001776A1 (de) * 2005-01-12 2006-11-09 Advanced Testing Technologies, Inc. Testprogrammsatz Minimierung der Veralterung durch Software- und automatische Testgeräteprozesse
US8484618B2 (en) 2005-01-12 2013-07-09 Advanced Testing Technologies, Inc. Test program set obsolescence mitigation through software and automatic test equipment processes
US7661093B2 (en) * 2005-01-28 2010-02-09 Microsoft Corporation Method and system for assessing performance of a video interface using randomized parameters
US20070028217A1 (en) * 2005-07-29 2007-02-01 Microsoft Corporation Testing software using verification data defined independently of the testing code
KR20070035266A (ko) * 2005-09-27 2007-03-30 삼성전자주식회사 소프트웨어 검사방법
US8095912B2 (en) * 2005-10-06 2012-01-10 Microsoft Corporation Testing a context-free language compiler
US20110191008A1 (en) * 2010-04-09 2011-08-04 Mcconahay Fred E Supplementary fuel system for delivery of hydrogen gas to an engine
US10725897B2 (en) 2012-10-09 2020-07-28 Securboration, Inc. Systems and methods for automatically parallelizing sequential code
WO2014058854A1 (en) 2012-10-09 2014-04-17 Securboration, Inc. Systems and methods for automatically parallelizing sequential code
IN2013MU01201A (ja) * 2013-03-28 2015-04-10 Tata Consultancy Services Ltd
US9606178B2 (en) 2014-03-06 2017-03-28 Texas Instruments Incorporated Parametric test program generator
KR101525398B1 (ko) * 2014-05-30 2015-06-09 한국전자통신연구원 네트워크 응용 프로그램 퍼징 시스템 및 방법
US9703537B2 (en) * 2015-11-02 2017-07-11 International Business Machines Corporation Method for defining alias sets
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
US10620922B2 (en) * 2018-05-03 2020-04-14 Microsoft Technology Licensing, Llc Compiler platform for test method
JP7163697B2 (ja) 2018-09-28 2022-11-01 富士通株式会社 生成プログラム,情報処理装置及び生成方法
CN111124880B (zh) * 2019-11-04 2021-08-17 北京大学 基于历史数据的编译器测试输入生成方法和系统

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4081656A (en) * 1973-07-20 1978-03-28 Yull Brown Arc-assisted oxy/hydrogen welding
US4014777A (en) * 1973-07-20 1977-03-29 Yull Brown Welding
US4200062A (en) * 1978-07-12 1980-04-29 Duckworth Charles E Safety switch for hydrogen generator system
US4369737A (en) * 1980-06-02 1983-01-25 Sanders Cledith A Hydrogen-oxygen generator
US4622924A (en) * 1983-06-20 1986-11-18 Lewis William N Hydrogen engine
US4726888A (en) * 1986-12-04 1988-02-23 Mccambridge Michael Electrolysis of water
JP3278909B2 (ja) * 1992-07-16 2002-04-30 株式会社豊田中央研究所 水素発生装置
US5231954A (en) * 1992-08-05 1993-08-03 J. C. Conner Hydrogen/oxygen fuel cell
US5244558A (en) * 1992-09-24 1993-09-14 Chiang Huang C Apparatus for generating a mixture of hydrogen and oxygen for producing a hot flame
JPH08507828A (ja) * 1993-03-15 1996-08-20 ライディングズ ピーティーワイ リミテッド 電解製造装置
GB2276738A (en) * 1993-03-30 1994-10-05 Ibm Generation of random conversation testcases.
US5437250A (en) * 1993-08-20 1995-08-01 Massachusetts Institute Of Technology Plasmatron-internal combustion engine system
EP0717790B1 (en) * 1993-09-06 2002-11-13 Hydrogen Technology Limited Improvements in electrolysis systems
US5628885A (en) * 1995-11-13 1997-05-13 Lin; Yang C. Extraction installation for hydrogen and oxygen
US6223337B1 (en) * 1997-12-12 2001-04-24 Hewlett-Packard Company Random test generation for compiler optimization
JP3746371B2 (ja) * 1998-04-09 2006-02-15 株式会社日立製作所 性能シミュレーション方法
US6209493B1 (en) * 1998-07-27 2001-04-03 Global Tech Environmental Products Inc. Internal combustion engine kit with electrolysis cell
US5997223A (en) * 1998-09-22 1999-12-07 Electro Scientific Industries, Inc. High speed drilling spindle with reciprocating ceramic shaft and edoubl-gripping centrifugal chuck
US6560958B1 (en) * 1998-10-29 2003-05-13 Massachusetts Institute Of Technology Emission abatement system
US6299656B1 (en) * 1998-12-29 2001-10-09 Charles A. McClure Non-fossil fuel additives for predominantly hydrocarbon fuels
US6430741B1 (en) * 1999-02-26 2002-08-06 Hewlett-Packard Company System and method for data coverage analysis of a computer program
US6322757B1 (en) * 1999-08-23 2001-11-27 Massachusetts Institute Of Technology Low power compact plasma fuel converter
US6880154B2 (en) * 2001-06-29 2005-04-12 Intel Corporation Alias-free test for dynamic array structures
US7065631B2 (en) * 2002-04-09 2006-06-20 Sun Microsystems, Inc. Software controllable register map

Also Published As

Publication number Publication date
US20040210874A1 (en) 2004-10-21
US7363614B2 (en) 2008-04-22
JP2004227129A (ja) 2004-08-12

Similar Documents

Publication Publication Date Title
JP4426764B2 (ja) コンパイラテストプログラムの自動生成方法
US7685576B2 (en) System and method for model based system testing of interactive applications
US8799875B2 (en) Streamlining unit testing through hot code swapping
US5761408A (en) Method and system for generating a computer program test suite using dynamic symbolic execution
CN101802792B (zh) 用于测试航空器上的系统的操作软件的有效性的自动脚本生成方法及用于实现该方法的设备
US7895575B2 (en) Apparatus and method for generating test driver
US20070101196A1 (en) Functional testing and verification of software application
US9081586B2 (en) Systems and methods for customizing optimization/transformation/ processing strategies
US20080276221A1 (en) Method and apparatus for relations planning and validation
US20180032320A1 (en) Computer-implemented method for allowing modification of a region of original code
US20070129931A1 (en) Apparatus and method for supporting prototype development of embedded system
US20030121025A1 (en) Method and system for combining multiple software test generators
JP2007531946A (ja) データ処理装置におけるデータ整合性
EP2113837B1 (en) Computer implemented method for generating interrelated computer executable files, computer-based system and computer program product
CN110347588A (zh) 软件验证方法、装置、计算机设备和存储介质
US8037357B2 (en) System and method for generating test job control language files
KR20190094779A (ko) Plc 명령어 컴파일러 테스트케이스 자동 생성 장치
JP4328328B2 (ja) ソフトウエア開発ツールプログラム
US20070124723A1 (en) Monitoring dynamic aspect oriented applications at execution time
KR100777103B1 (ko) 테스트 드라이버 생성 장치 및 방법
WO2013161057A1 (ja) ソースコード検査方法及び装置
CN114281709A (zh) 一种单元测试方法、系统、电子设备及存储介质
CN111078548B (zh) 测试用例解析方法、装置、存储介质及验证平台
US20110225400A1 (en) Device for Testing a Multitasking Computation Architecture and Corresponding Test Method
Feng et al. Action-driven automation test framework for graphical user interface (GUI) software testing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050803

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050803

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20070220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090709

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4426764

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131218

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

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

LAPS Cancellation because of no payment of annual fees