JP2002157144A - ソフトウェア自動試験方式 - Google Patents

ソフトウェア自動試験方式

Info

Publication number
JP2002157144A
JP2002157144A JP2000350692A JP2000350692A JP2002157144A JP 2002157144 A JP2002157144 A JP 2002157144A JP 2000350692 A JP2000350692 A JP 2000350692A JP 2000350692 A JP2000350692 A JP 2000350692A JP 2002157144 A JP2002157144 A JP 2002157144A
Authority
JP
Japan
Prior art keywords
test
software
task
automatic
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000350692A
Other languages
English (en)
Other versions
JP3504605B2 (ja
Inventor
Masatsugu Nakada
雅嗣 中田
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 JP2000350692A priority Critical patent/JP3504605B2/ja
Publication of JP2002157144A publication Critical patent/JP2002157144A/ja
Application granted granted Critical
Publication of JP3504605B2 publication Critical patent/JP3504605B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 ソフトウェア自動試験方式において、人的誤
りを排除して試験の正当性を保証することにより、信頼
性の向上を図ると共に、試験に要する工数の短縮を図
る。 【解決手段】 計算機と、表示装置30と、記憶装置5
0と、試験装置60とを有するコンピュータシステム本
体20を備え、デザインレビュー等にもとづくソフトウ
ェア設計情報51を記憶装置50に設定するソフトウェ
ア設計支援手段21と、ソフトウェア設計情報51にも
とづいたソフトウェア試験を自動化するためのソフトウ
ェア試験手段22とをコンピュータシステム本体20に
設けた構成とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、ソフトウェア自
動試験方式、特に、ソフトウェア試験に関する一連の作
業をソフトウェア設計情報にもとづいて自動化するソフ
トウェア自動試験方式に関するものである。
【0002】
【従来の技術】従来のコンピュータシステムにおけるソ
フトウェア開発では、その試験作業が占める割合が大き
く、また試験における作業の誤りや試験内容の不足がコ
ンピュータシステム開発完了後に発覚した場合などに発
生する手戻り作業は十分大きな問題となる場合が多いた
め、従来から試験の自動化という取り組みがさまざまな
方法により実施されてきた。
【0003】図13は、その一例を示すもので、特開平
7−56768号公報や特開平5−134896号公報
にも開示されているように、試験に使用するテストデー
タを自動的に生成するものである。この図において、1
は被試験プログラムのインタフェースやデータ型などに
ついての各種の定義で、作業者2が試験のために事前に
実施するものである。3は定義1にもとづいて作成され
るテストデータ生成条件で、データ項目、入出力ファイ
ル、テストデータの重み付けなどのデータ作成条件等が
含まれる。4は自動化手段で、テストデータ生成条件3
を参照してテストデータ5を生成する。特に、テストデ
ータの重み付けが事前の定義に含まれている場合には、
優先的に試験すべきデータを生成するというものであっ
た。
【0004】この場合には、作業者が実施した定義1と
被試験プログラムの設計情報との整合が取れているかど
うかの検証は作業者の裁量によることとなるため、定義
1の作業に誤りが発生した場合、それにもとづいて自動
生成したテストデータ5を使用した試験の正当性は保証
されないこととなる。
【0005】図14は、他のテストデータの自動生成の
例を示すものであり、例えば特開平3−282637号
公報に開示されているものである。この図において、6
は被試験プログラムで、自動化手段4がこれを参照して
静的に解析することにより、インタフェースやデータ型
を抽出してテストデータ5を生成するというものであっ
た。
【0006】この場合は、まだ正当性の確認されていな
い試験対象のプログラム6をテストデータ生成の元とし
ているため、被試験プログラム6のソースコードに誤り
があった場合、その誤りに準じたテストデータ5が生成
される可能性があり、そのテストデータ5を使用した試
験においては被試験プログラム6の誤りを検出すること
は困難であると言える。従って、この方法は、被試験プ
ログラム6が設計仕様通りに作成されているかどうかを
検証するための試験にはならない。
【0007】図15は、従来の自動試験方式の更に他の
例を示すもので、先に挙げた特開平5−134896号
公報に開示されているものである。これは、試験結果の
検証に関するものであり、図において、7はテスト結果
検証用データで、作業者2が定義1にもとづいて作成し
たものであり、自動化手段4は、テスト結果検証用デー
タ7を参照して試験実施後のテストデータ5の検証を自
動的に実施するものであった。この場合には、作業者が
事前に結果として出力されるべきデータを定義している
検証であるため、定義作業に誤りが発生した場合には、
正しい試験結果が得られた場合でも検証時に結果不正と
いう判定が下されることが起こり得る。
【0008】また、従来の技術で解決される範囲は、図
16(a)に示すように、プログラムの最小単位である
関数8についての試験の自動化であり、あるまとまった
機能単位であるタスクの試験は対象とされていなかっ
た。従って、OSによりスケジューリングされる動作
や、特にRTOSによってプログラムの実行がタスクの
優先度に準じて中断/再開されるようなプリエンプティ
ブな動作の検証を自動化する方法が提供されているもの
ではなかった。従来、タスク単位の試験では、図16
(b)に示すように、被試験タスク9を駆動するための
イベントを入力するために、試験用のタスク10,11
を用意する場合が多いが、この場合には、試験用のタス
ク10,11についても設計/製作/試験する必要があ
った。
【0009】さらに、上述した従来の技術は、いずれも
ネィティブ開発についての自動化の例であり、クロス開
発における試験を自動化する手段については開示してい
ない。クロス開発においては、図17に示すように、製
作したプログラム12を実行環境のCPU言語に変換す
るクロスコンパイラ13を使用することにより実行形式
ファイル14として生成し、その実行形式ファイル14
を専用の試験装置15A、15B…15Nに読み込むこ
とにより試験を実施することが一般的である。この場
合、試験項目毎に試験装置が解釈できるコマンド群を定
義し、これらを試験装置に読み込ませることによる半自
動化が為されてきた。しかし、この場合も、作業者によ
るコマンド定義において誤りが発生する可能性は否めな
いものであり、その定義の正当性が作業者により十分に
検証されていない場合は自動化の効果は半減する。ま
た、試験装置が異なる場合、そのコマンド定義方法も異
なり、操作手順についても試験装置に依存したものであ
るため、同じソフトウェアの試験においても同じ試験装
置が用意できない場合などは試験装置毎のコマンド群お
よび操作手順を習得する必要があり、試験そのものより
もその準備作業に時間を要していた。ソフトウェアの論
理試験(シミュレーション)とハードウェアに搭載した
形での試験において使用される試験装置は一般的に異な
るものであるため、この場合も同様のことが言える。
【0010】
【発明が解決しようとする課題】従来のソフトウェア自
動試験方式は上述のように構成されており、ソフトウェ
ア試験の自動化において、作業者が全く介在しないとい
うことは極めて困難と言える。この場合、自動化された
試験作業の何処に作業者が介在するかということが問題
となってくるが、それは人の作業誤りが試験全体に与え
る影響を極小化でき、その誤りによる影響を容易に回復
できる作業箇所に他ならない。即ち、人が介在した際に
発生し得る誤りによって既に実施されたはずの試験自体
の正当性が保証されないのでは、自動化する前の作業と
比べて誤りが発生する作業箇所が試験そのものである
か、自動化のために行う作業になるかの違いだけであ
り、自動化による効果は小さいものとなるばかりか、作
業誤りの検出自体も困難となる場合がある。従って、作
業者が実施する作業に誤りが発生した場合においても、
既に実施した試験の正当性は保証され、試験の内容が不
足している程度の影響に収める必要がある。
【0011】この発明は、上記のような課題に対処する
ために為されたものであり、ソフトウェア設計情報にも
とづいたソフトウェア試験情報を自動生成し、さらに、
ネイティブあるいはクロス開発に限定されずにタスク単
位の動作検証を含むソフトウェア試験に係る一連の作業
を自動化することにより、従来の自動化方式では発生す
る可能性のあった人的誤りを排除し、試験の正当性を保
証すると共に試験に費やす時間を短縮し、かつ試験装置
に依存しない試験手順で実施することのできるソフトウ
ェア自動試験方式を提供しようとするものである。
【0012】
【課題を解決するための手段】この発明に係るソフトウ
ェア自動試験方式は、計算機と、表示装置と、記憶装置
と、試験装置とを有するコンピュータシステム本体を備
え、デザインレビュー等にもとづくソフトウェア設計情
報を記憶装置に設定するソフトウェア設計支援手段と、
ソフトウェア設計情報にもとづいたソフトウェア試験を
自動化するためのソフトウェア試験手段とをコンピュー
タシステム本体に設けたものである。
【0013】この発明に係るソフトウェア自動試験方式
は、また、ソフトウェア試験手段が、ソフトウェア設計
情報にもとづいて被試験プログラムの試験項目および試
験規格を自動的に抽出する試験仕様生成手段を備えたも
のである。
【0014】この発明に係るソフトウェア自動試験方式
は、また、試験項目に対応した試験装置を制御するため
の制御情報ファイルを自動的に生成する制御情報生成手
段を備えたものである。
【0015】この発明に係るソフトウェア自動試験方式
は、また、試験項目に対応した試験を実施するための試
験用プログラムのソースコードを自動的に生成する試験
プログラム生成手段を備えたものである。
【0016】この発明に係るソフトウェア自動試験方式
は、また、制御情報ファイルにもとづいて試験装置を制
御することにより、試験装置毎の試験手順によることな
く試験を実施する試験実行手段を備えたものである。
【0017】この発明に係るソフトウェア自動試験方式
は、また、試験実行手段によって実施された試験の実行
結果と試験規格とを照合することにより、試験結果を自
動的に検証する試験結果検証手段を備えたものである。
【0018】この発明に係るソフトウェア自動試験方式
は、また、ソフトウェア試験手段が、ソフトウェア設計
情報にもとづいて被試験プログラムの試験項目および試
験規格を自動的に抽出する試験仕様生成手段と、試験項
目に対応した試験装置を制御するための制御情報ファイ
ルを自動的に生成する制御情報生成手段と、試験項目に
対応した試験を実施するための試験用プログラムのソー
スコードを自動的に生成する試験プログラム生成手段
と、制御情報ファイルにもとづいて試験装置を制御する
ことにより、試験装置毎の試験手順によることなく試験
を実施する試験実行手段と、試験実行手段によって実施
された試験の実行結果と試験規格とを照合することによ
り、試験結果を自動的に検証する試験結果検証手段とを
備えたものである。
【0019】この発明に係るソフトウェア自動試験方式
は、また、ソフトウェア設計情報にもとづいて試験項目
に対する重要度情報を出力するものである。
【0020】この発明に係るソフトウェア自動試験方式
は、また、ソフトウェア試験が、OSにより実行管理さ
れる単位のタスクをOSと組み合わせた形態で実施され
るようにしたものである。
【0021】この発明に係るソフトウェア自動試験方式
は、また、OSがマルチタスクOSとされるものであ
る。
【0022】この発明に係るソフトウェア自動試験方式
は、また、OSが複数のタスクを各タスクの優先度に従
って実行管理するRTOSとされるものである。
【0023】この発明に係るソフトウェア自動試験方式
は、また、ソフトウェア試験を、ソフトウェア開発に使
用するホストマシンのCPUと、実際にソフトウェアを
動作させるハードウェアのCPUとが同じである場合の
ネイティブ開発、およびそれらが異なる場合のクロス開
発、のいずれのソフトウェア試験にも適用し得るように
したものである。
【0024】
【発明の実施の形態】実施の形態1.以下、この発明の
実施の形態1を図にもとづいて説明する。図1は、実施
の形態1の構成を示すブロック図である。この図におい
て、20はソフトウェア自動試験システムのシステム本
体で、このシステム本体には、表示装置30、キーボー
ド等の入力装置40、記憶装置50、および試験装置6
0が接続されている。また、21はシステム本体20に
格納されたソフトウェア設計支援手段、22は同じくシ
ステム本体20に格納されたソフトウェア試験手段で、
試験仕様生成手段26A、制御情報生成手段26B、試
験プログラム生成手段26C、試験実行手段26D、お
よび試験結果検証手段26Eから構成されている。ま
た、51は記憶装置50に格納されたソフトウェア設計
情報、52は同じく記憶装置50に格納されたソフトウ
ェア試験情報で、ソフトウェア設計情報51を元にして
このシステムにより生成される試験項目56A、試験規
格56B、試験装置制御情報56C、試験プログラム5
6D、および試験結果56Eを含むものである。
【0025】なお、図1でシステム本体20の各手段と
記憶装置50の各情報との間に表示されている実線矢印
は、矢印方向への設定機能を示し、点線矢印は矢印方向
への参照機能を示すものである。また、この実施の形態
は、RTOS上で稼働するタスクの試験手順に、この発
明による方式を適用した例を示すものである。なお、被
試験タスクへの入力イベントは、OSを使用したタスク
間通信方式として一般的であるメッセージ通信を用いる
こととして説明する。
【0026】ソフトウェア設計情報51は、その構成内
容を図2に示すように、開発する各ソフトウェアに共通
する情報であるソフトウェア共通設計情報53、および
試験対象のソフトウェアに関する設計情報であるプログ
ラム設計情報54から構成され、ソフトウェア共通設計
情報53は、CPU情報57A、ROM情報57B、R
AM情報57C、制御デバイス情報57Dから構成され
るハードウェア情報57と、OS情報58A、タスク情
報58B、タスク間インタフェース情報58C、タスク
間シーケンス情報58D、タスク間共通データ情報58
Eから構成されるソフトウェア情報58と、開発ホスト
情報59A、開発ディレクトリ情報59B、プログラム
言語情報59C、試験装置情報59D、言語処理系情報
59Eから構成される開発環境情報59とを含む。ま
た、プログラム設計情報54は、状態遷移表54Aやモ
ジュール仕様54Bなどのように、入力イベントに対す
る被試験プログラムの出力イベントや内部データ遷移値
が判断可能な設計情報より構成されている。
【0027】以上のような内容を有するソフトウェア設
計情報51は、ソフトウェア設計作業時にデザインレビ
ューなどにより十分に検討された情報であり、ソフトウ
ェア設計支援手段21を用いて本システムに入力される
が、上述した従来の技術のように、別途ソフトウェア試
験のために定義されたものではない。後述するソフトウ
ェア試験の各手順はこのソフトウェア設計情報51にも
とづいて実施されることになる。
【0028】次に、図3にもとづいて試験仕様生成手段
26Aによる試験項目56A、試験規格56Bの生成手
順について説明する。この手順では、ステップS11に
おいてソフトウェア設計情報51におけるタスク間イン
タフェース情報58Cより被試験タスクへの入力イベン
トを全て抽出し、ステップS12において別途作業者に
より入力イベントの連続数として定義される試験レベル
201から試験レベル分の入力イベントの組合せを生成
することによりこれを試験項目56Aとし、さらにステ
ップS13において各試験項目に対する入力イベント発
生時の被試験タスクの出力イベントおよびデータ遷移値
をプログラム設計情報54にもとづいて決定したものを
試験規格56Bとして記憶装置50に格納する。また、
試験項目56Aについては、ステップS14において、
ソフトウェア設計情報51にもとづいた優先度情報が付
加される。これは、被試験タスクの入出力イベントの組
合せがタスク間シーケンス情報として定義されているも
のを優先度1、被試験タスクへの入力イベントに対して
出力イベントが発生するもので優先度1以外のものを優
先度2、被試験タスクへの入力イベントに対して被試験
タスクの各データ値に変化が発生するもので優先度1、
2以外の試験項目を優先度3、優先度1、2、3以外を
優先度4の試験項目とするものである。
【0029】図4は、試験レベル201、即ち、イベン
トの連続数を2として定義すると共に、被試験タスクを
タスク2とした場合のソフトウェア設計情報を例示する
もので、(a)はタスク間インタフェース情報と、試験
項目とする入力イベントの組み合わせの例を示し、
(b)はタスク間シーケンス情報として定義された
(1)〜(4)の被試験タスクの入出力イベントの組み
合わせ例および試験項目とする入力イベントの組み合わ
せの例を示す。また、(c)はプログラム設計情報とし
て被試験タスクの状態遷移表を使用した場合の各試験項
目に対する優先度決定の例を示すもので、被試験タスク
のデータを状態番号のみとしている。なお、試験項目と
して示されている入力イベントの組み合わせで、例え
ば、「1A→1A」とあるのは、被試験タスクであるタ
スク2にメッセージ1Aが入力された後、再度メッセー
ジ1Aが入力されるケースを示し、「1A→3A」とあ
るのは、メッセージ1Aが入力された後に、メッセージ
3Aが入力されるケースを示す。他の組み合わせ表示に
ついても同様である。
【0030】また、(c)の状態遷移表は、例えば、メ
ッセージ1Aについては、このメッセージ1Aが被試験
タスクであるタスク2に入力された時(この状態を状態
番号=1としている)、タスク2はメッセージ2Aを送
信して状態番号=2に移行し、状態番号=2では、メッ
セージ1Aが入力されてもNOP(ノーオペレーショ
ン)であり、その後、また、メッセージ1Aが入力され
た時(この状態を状態番号=3としている)、タスク2
はメッセージ2Cを送信することを示している。上述の
状態番号=1の状態は、図4(b)のタスク間シーケン
ス情報で(1)として定義されているケースであり、状
態番号=3の状態は、同じくタスク間シーケンス情報で
(3)として定義されているケースである。また、状態
遷移表のメッセージ1Bについては、このメッセージ1
Bがタスク2に入力された時(この状態を状態番号=1
としている)、タスク2はメッセージ2Bを送信して状
態番号=3に移行することを示しており、その他の状態
番号とメッセージとの関係も同様である。メッセージ1
Bについての状態番号=1の状態は、図4(b)のタス
ク間シーケンス情報では(2)として定義されているケ
ースである。
【0031】なお、試験項目については、例えば、「1
A→3A」は、タスク間シーケンス情報で(3)として
定義されているケースであるため、優先度は1となり、
「1A→1B」は、タスク間シーケンス情報の(1)〜
(4)の定義とは異なるケースであるため、優先度は2
となっている。このような優先度情報を参考にして、試
験作業者が図3のステップS15において、実際に試験
対象項目として決定することにより、その試験項目に試
験対象情報が付加される。これにより、試験レベルにも
とづいて生成された全試験項目に対して試験対象項目が
占める割合を算出することも可能となる。
【0032】次に、図5に示す制御情報生成手段26B
による試験装置制御情報56Cの生成手順について説明
する。試験装置制御情報56Cは、試験装置60への試
験モジュールの読み込み、試験モジュールの起動、被試
験タスクへのイベント入力、および試験結果としての被
試験タスクの入出力イベント、データ遷移値などを収集
する試験制御手順を試験装置のコマンド書式を使用して
書いた試験手順ファイルである。以下、試験制御手順を
図6に示す。まず、ステップS21において、試験モジ
ュールを試験装置60へロードする。ここで、試験モジ
ュールは図7(b)における試験時のソフトウェア構成
に示す各ソフトウェアを実行形式のファイルとして生成
したものである。各ソフトウェアの詳細については後述
する。
【0033】次に、ステップS22において試験タスク
へブレークポイントを設定する。設定箇所は、試験タス
クが疑似タスクへメッセージを送信する直前であり、こ
れについても詳細は後述する。次に、ステップS23に
おいて試験モジュールを起動することにより試験モジュ
ールを構成する各タスクが動作する。ステップS24で
は入力イベントの設定として試験タスクのデータ領域に
試験項目に対応した被試験タスクへの送信メッセージを
表わすビット列を設定するが、この処理はステップS2
2にて設定したブレークポイントにより試験タスクの動
作が一時的に停止された状態で行われる。従って、ステ
ップS24に示す試験タスクの再開は、このブレークポ
イントからの動作の再開を意味する。ステップS24
は、試験項目の入力イベント数の分だけ繰り返され(図
示の場合は2回)、その後、ステップS25にて試験結
果を試験結果ファイルに格納する。試験結果は、試験規
格として定義されている被試験タスクの入出力イベント
履歴および入力イベント毎のデータ遷移値を含み、他に
ソースコードレベルの実行網羅率であるカバレッジデー
タや特定区間の処理時間などを含んでも良い。
【0034】次に、試験プログラム生成手段26Cによ
る試験プログラムのソースコード生成手順について説明
する。マルチタスクOS上で稼働するタスクの試験の場
合、試験プログラムは図7(b)に示すように被試験タ
スク70への入力イベントを発生する試験タスク71
と、試験タスク71からの入力イベントを被試験タスク
70へ転送し、被試験タスクの出力イベントを受け取る
疑似タスク72、73から構成される。疑似タスク7
2,73は、図7(a)に示す実際のソフトウェア構成
上で被試験タスク(タスク2)とインタフェースを取る
タスク(タスク1、タスク3)の数だけ用意し、これら
の疑似タスクを実際の優先度で生成・起動することによ
り、実際の優先度に準じたプリエンプティブな動作の検
証が可能となる。この時、試験タスク71は疑似タスク
72,73や被試験タスク70の動作を中断しないよう
に、試験系で最低値の優先度で生成・起動する。
【0035】図8に試験プログラム生成手段26Cによ
る生成手順を示す。まず、ステップS31にて試験タス
ク71のソースコードを、ステップS32にて必要数分
の疑似タスク72,73のソースコードを、ソフトウェ
ア設計情報51として定義されているプログラム言語に
て生成する。プログラム仕様は、図9に示す試験時の各
タスクの処理フローに準ずる。
【0036】図10は、各タスクの初期化時のシーケン
スを示すものである。試験タスク71は、タスク情報に
もとづいた属性を使用して被試験タスク70を生成、起
動する。これにより、タスクの実行権は被試験タスク7
0に移行し、被試験タスクは必要な初期化処理を実行し
た後、メッセージ受信待ち状態になる。被試験タスク7
0がメッセージ受信待ちになると、試験タスクに再び実
行権が移行し、各疑似タスク72,73を生成、起動す
る。各疑似タスクが生成、起動される毎に実行権はそれ
らのタスクへ移行するが、すぐにメッセージ受信待ち状
態になり、再び試験タスクに実行権が戻る。その後、試
験タスク71は試験装置制御情報にて設定されたブレー
クポイントにおいてその動作を一時停止する。なお、試
験タスク71はOSへ別途登録し、試験モジュール起動
時にOSより起動されるようにする。
【0037】図11は、図10の初期化シーケンスに続
くメッセージ通信シーケンスを示すものである。試験タ
スク71が一時停止している状態において、試験装置制
御情報により試験タスク71のデータ領域に試験項目に
対応する被試験タスク70への送信メッセージが設定さ
れた後、試験タスク71は動作を再開する。再開した試
験タスク71は、メッセージを該当する疑似タスク73
へ送信することにより疑似タスク73に実行権が移行す
る。疑似タスク73は受信メッセージが試験タスク71
からの場合、そのメッセージを被試験タスク70へ送信
する。メッセージ送信元の疑似タスク73の優先度が被
試験タスク70より低い場合はメッセージ送信によっ
て、また、高い場合は疑似タスク73がメッセージ受信
待ちになった後、被試験タスク70が動作する。被試験
タスク70がメッセージを送信する場合は、該当する疑
似タスク72が受信する。疑似タスク、被試験タスクの
動作が全て完了し、各タスクともメッセージ受信待ち状
態になると、試験タスク71に実行権が移行し、再度、
試験装置により一時停止される。続く入力イベントがあ
る場合は、この動作を繰り返すことにより被試験タスク
70へ順次イベントが入力される。入力イベントがなく
なった場合は、試験装置制御情報に従って必要な試験結
果がファイルに格納されることになる。なお、この場
合、各タスクの実行優先度は、高い方から疑似タスク
3、被試験タスク、疑似タスク1、試験タスクの順とさ
れている。
【0038】次に、図12に示す試験実行手段26Dお
よび試験結果検証手段26Eの実行手順について説明す
る。ステップS41において、作業者が画面表示された
試験項目を実行選択することにより、試験実行手段26
Dは試験装置制御情報を試験装置60へ入力し、試験装
置の試験プロセスを起動し、ステップS42において試
験プロセスの完了待ちとなる。試験装置60は、制御情
報手順に従って試験を実行し、試験プロセスが完了する
と試験装置60は試験結果ファイルを出力する。試験プ
ロセスが完了すると、ステップS43により試験装置6
0が出力した試験結果56Eを記憶装置50に格納す
る。続いて、試験結果検証手段26Eにより、ステップ
S51において試験結果56Eと試験規格56Bとの照
合を自動的に行い、ステップS52においてその整合性
を判定する。試験結果56Eと試験規格56Bとが合致
する場合は、ステップS53により試験は正常完了した
ことを画面表示する。試験結果56Eと試験規格56B
とが不整合を起こす場合は、ステップS54により試験
結果56Eが不合格であることと共に不整合箇所の情報
を画面表示する。
【0039】
【発明の効果】この発明に係るソフトウェア自動試験方
式は以上のように構成されているため、ソフトウェア設
計情報にもとづいたソフトウェア試験の自動化が可能と
なり、試験における人的誤りを排除して試験の正当性を
保証することができる結果、信頼性の向上を図ることが
できる他、試験に要する工数も短縮することができる。
【図面の簡単な説明】
【図1】 この発明の実施の形態1の構成を示すブロッ
ク図である。
【図2】 実施の形態1のソフトウェア設計情報の構成
を示す説明図である。
【図3】 試験仕様生成手段による生成手順を示すフロ
ー図である。
【図4】 ソフトウェア設計情報の一例と、それにもと
づく試験項目の優先度決定の一例を示す説明図である。
【図5】 制御情報生成手段による生成手順を示すフロ
ー図である。
【図6】 試験制御手順を示すフロー図である。
【図7】 試験時のソフトウェア構成を示すブロック図
である。
【図8】 試験プログラム生成手段による生成手順を示
すフロー図である。
【図9】 試験時の各タスクの処理手順を示すフロー図
である。
【図10】 試験時の各タスクの初期化シーケンスを示
す図である。
【図11】 試験時の各タスクのメッセージ通信シーケ
ンスを示す図である。
【図12】 試験実行手段および試験結果検証手段によ
る実行手順を示すフロー図である。
【図13】 従来のソフトウェア自動試験方式の一例を
示すブロック図である。
【図14】 従来のソフトウェア自動試験方式の他の例
を示すブロック図である。
【図15】 従来のソフトウェア自動試験方式の更に他
の例を示すブロック図である。
【図16】 従来のソフトウェア自動試験方式における
タスク単位の試験方式を示す概略図である。
【図17】 従来のクロス開発におけるソフトウェア自
動試験の形態を示す概略図である。
【符号の説明】
20 システム本体、 21 ソフトウェア設計支援
手段、 22 ソフトウェア試験手段、 26A
試験仕様生成手段、 26B 制御情報生成手段、
26C 試験プログラム生成手段、 26D 試験
実行手段、 26E 試験結果検証手段、 30
表示装置、 40 入力装置、 50記憶装置、
51 ソフトウェア設計情報、 52 ソフトウェ
ア試験情報、 53 ソフトウェア共通設計情報、
54 プログラム設計情報、56A 試験項目、
56B 試験規格、 56C 試験装置制御情報、5
6D 試験プログラム、 56E 試験結果、 5
7 ハードウェア情報、 58 ソフトウェア情報、
59 開発環境情報、 60 試験装置。

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 計算機と、表示装置と、記憶装置と、試
    験装置とを有するコンピュータシステム本体を備え、デ
    ザインレビュー等にもとづくソフトウェア設計情報を上
    記記憶装置に設定するソフトウェア設計支援手段と、上
    記ソフトウェア設計情報にもとづいたソフトウェア試験
    を自動化するためのソフトウェア試験手段とを上記コン
    ピュータシステム本体に設けたことを特徴とするソフト
    ウェア自動試験方式。
  2. 【請求項2】 ソフトウェア試験手段は、ソフトウェア
    設計情報にもとづいて被試験プログラムの試験項目およ
    び試験規格を自動的に抽出する試験仕様生成手段を備え
    たことを特徴とする請求項1記載のソフトウェア自動試
    験方式。
  3. 【請求項3】 試験項目に対応した試験装置を制御する
    ための制御情報ファイルを自動的に生成する制御情報生
    成手段を備えたことを特徴とする請求項2記載のソフト
    ウェア自動試験方式。
  4. 【請求項4】 試験項目に対応した試験を実施するため
    の試験用プログラムのソースコードを自動的に生成する
    試験プログラム生成手段を備えたことを特徴とする請求
    項2記載のソフトウェア自動試験方式。
  5. 【請求項5】 制御情報ファイルにもとづいて試験装置
    を制御することにより、試験装置毎の試験手順によるこ
    となく試験を実施する試験実行手段を備えたことを特徴
    とする請求項3記載のソフトウェア自動試験方式。
  6. 【請求項6】 試験実行手段によって実施された試験の
    実行結果と試験規格とを照合することにより、試験結果
    を自動的に検証する試験結果検証手段を備えたことを特
    徴とする請求項5記載のソフトウェア自動試験方式。
  7. 【請求項7】 ソフトウェア試験手段は、ソフトウェア
    設計情報にもとづいて被試験プログラムの試験項目およ
    び試験規格を自動的に抽出する試験仕様生成手段と、上
    記試験項目に対応した試験装置を制御するための制御情
    報ファイルを自動的に生成する制御情報生成手段と、上
    記試験項目に対応した試験を実施するための試験用プロ
    グラムのソースコードを自動的に生成する試験プログラ
    ム生成手段と、上記制御情報ファイルにもとづいて試験
    装置を制御することにより、試験装置毎の試験手順によ
    ることなく試験を実施する試験実行手段と、上記試験実
    行手段によって実施された試験の実行結果と上記試験規
    格とを照合することにより、試験結果を自動的に検証す
    る試験結果検証手段とを備えたことを特徴とする請求項
    1記載のソフトウェア自動試験方式。
  8. 【請求項8】 ソフトウェア設計情報にもとづいて試験
    項目に対する重要度情報を出力することを特徴とする請
    求項2〜請求項7のいずれか1項記載のソフトウェア自
    動試験方式。
  9. 【請求項9】 ソフトウェア試験は、オペレーティング
    システム(以下、OSと称す)により実行管理される単
    位のソフトウェア(以下、タスクと称す)をOSと組み
    合わせた形態で実施し得るようにしたことを特徴とする
    請求項1記載のソフトウェア自動試験方式。
  10. 【請求項10】 OSは、複数のタスクを実行管理する
    OS(以下、マルチタスクOSと称す)であることを特
    徴とする請求項9記載のソフトウェア自動試験方式。
  11. 【請求項11】 OSは、複数のタスクを各タスクの優
    先度に従って実行管理するリアルタイムOS(以下、R
    TOSと称す)であることを特徴とする請求項9記載の
    ソフトウェア自動試験方式。
  12. 【請求項12】 ソフトウェア試験は、ソフトウェア開
    発に使用するホストマシンのCPUと、実際にソフトウ
    ェアを動作させるハードウェアのCPUとが同じである
    場合のソフトウェア開発(以下、ネイティブ開発と称
    す)、およびそれらが異なる場合のソフトウェア開発
    (以下、クロス開発と称す)のいずれのソフトウェア試
    験にも適用し得るようにしたことを特徴とする請求項1
    記載のソフトウェア自動試験方式。
JP2000350692A 2000-11-17 2000-11-17 ソフトウェア自動試験方式 Expired - Fee Related JP3504605B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000350692A JP3504605B2 (ja) 2000-11-17 2000-11-17 ソフトウェア自動試験方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000350692A JP3504605B2 (ja) 2000-11-17 2000-11-17 ソフトウェア自動試験方式

Publications (2)

Publication Number Publication Date
JP2002157144A true JP2002157144A (ja) 2002-05-31
JP3504605B2 JP3504605B2 (ja) 2004-03-08

Family

ID=18823876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000350692A Expired - Fee Related JP3504605B2 (ja) 2000-11-17 2000-11-17 ソフトウェア自動試験方式

Country Status (1)

Country Link
JP (1) JP3504605B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007066204A (ja) * 2005-09-01 2007-03-15 Hitachi Software Eng Co Ltd ソフトウエア開発支援システム
JP2007086929A (ja) * 2005-09-20 2007-04-05 Fuji Electric Holdings Co Ltd ソフトウェア設計支援装置および方法
JP2007226526A (ja) * 2006-02-23 2007-09-06 Ns Solutions Corp 情報処理装置、情報処理方法、プログラム及び記憶媒体
JP2007241432A (ja) * 2006-03-06 2007-09-20 Mitsubishi Electric Corp ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム
JP2012190063A (ja) * 2011-03-08 2012-10-04 Fujitsu Marketing Ltd データ生成装置及びデータ生成プログラム
JP2019153265A (ja) * 2018-03-05 2019-09-12 キヤノンマーケティングジャパン株式会社 情報処理装置、その処理方法及びプログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007066204A (ja) * 2005-09-01 2007-03-15 Hitachi Software Eng Co Ltd ソフトウエア開発支援システム
JP2007086929A (ja) * 2005-09-20 2007-04-05 Fuji Electric Holdings Co Ltd ソフトウェア設計支援装置および方法
JP2007226526A (ja) * 2006-02-23 2007-09-06 Ns Solutions Corp 情報処理装置、情報処理方法、プログラム及び記憶媒体
JP2007241432A (ja) * 2006-03-06 2007-09-20 Mitsubishi Electric Corp ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム
JP2012190063A (ja) * 2011-03-08 2012-10-04 Fujitsu Marketing Ltd データ生成装置及びデータ生成プログラム
JP2019153265A (ja) * 2018-03-05 2019-09-12 キヤノンマーケティングジャパン株式会社 情報処理装置、その処理方法及びプログラム

Also Published As

Publication number Publication date
JP3504605B2 (ja) 2004-03-08

Similar Documents

Publication Publication Date Title
JP4950454B2 (ja) テスト自動化のスタック階層化
US7529990B2 (en) Systems and methods for managing multi-device test sessions
US20080086627A1 (en) Methods and apparatus to analyze computer software
US7895575B2 (en) Apparatus and method for generating test driver
US20050235260A1 (en) User interface application development device and development method
Engels et al. Testing the consistency of dynamic UML diagrams
US20020091968A1 (en) Object-oriented data driven software GUI automated test harness
US20080209405A1 (en) Distributed debugging for a visual programming language
US7178135B2 (en) Scope-based breakpoint selection and operation
US20080052690A1 (en) Testing software with a build engine
US8250554B2 (en) Systems and methods for generating and distributing executable procedures for technical desk-side support
US7721250B2 (en) System and method for interactive and integrated software development process and phases
US8661414B2 (en) Method and system for testing an order management system
CN111475390A (zh) 日志采集系统部署方法、装置、设备及存储介质
US9026997B2 (en) Systems and methods for executing object-oriented programming code invoking pre-existing objects
JP2002157144A (ja) ソフトウェア自動試験方式
CN113742215A (zh) 一种自动配置和调用测试工具进行测试分析的方法及系统
US8745587B2 (en) System and method for testing computer programs
JP2023070408A (ja) 生成装置、生成方法及びプログラム
EP1868099B1 (en) Bug management tool
JP3119400B2 (ja) モジュール試験支援装置
JP2016126700A (ja) プログラム検証装置、プログラム検証方法及びプログラム検証プログラム
AU2023202586A1 (en) Automatic flow implementation from text input
Chaudhary ?? Translation from 2nd to 3rd generation mobile test cases with Appium
WO2022248231A1 (en) Partial recurrent automated software improvement

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031210

LAPS Cancellation because of no payment of annual fees