JP3504605B2 - ソフトウェア自動試験方式 - Google Patents
ソフトウェア自動試験方式Info
- Publication number
- JP3504605B2 JP3504605B2 JP2000350692A JP2000350692A JP3504605B2 JP 3504605 B2 JP3504605 B2 JP 3504605B2 JP 2000350692 A JP2000350692 A JP 2000350692A JP 2000350692 A JP2000350692 A JP 2000350692A JP 3504605 B2 JP3504605 B2 JP 3504605B2
- Authority
- JP
- Japan
- Prior art keywords
- test
- software
- task
- priority
- 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.)
- Expired - Fee Related
Links
Landscapes
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Stored Programmes (AREA)
Description
【0001】
【発明の属する技術分野】この発明は、ソフトウェア自
動試験方式、特に、ソフトウェア試験に関する一連の作
業をソフトウェア設計情報にもとづいて自動化するソフ
トウェア自動試験方式に関するものである。
動試験方式、特に、ソフトウェア試験に関する一連の作
業をソフトウェア設計情報にもとづいて自動化するソフ
トウェア自動試験方式に関するものである。
【0002】
【従来の技術】従来のコンピュータシステムにおけるソ
フトウェア開発では、その試験作業が占める割合が大き
く、また試験における作業の誤りや試験内容の不足がコ
ンピュータシステム開発完了後に発覚した場合などに発
生する手戻り作業は十分大きな問題となる場合が多いた
め、従来から試験の自動化という取り組みがさまざまな
方法により実施されてきた。
フトウェア開発では、その試験作業が占める割合が大き
く、また試験における作業の誤りや試験内容の不足がコ
ンピュータシステム開発完了後に発覚した場合などに発
生する手戻り作業は十分大きな問題となる場合が多いた
め、従来から試験の自動化という取り組みがさまざまな
方法により実施されてきた。
【0003】図13は、その一例を示すもので、特開平
7−56768号公報や特開平5−134896号公報
にも開示されているように、試験に使用するテストデー
タを自動的に生成するものである。この図において、1
は被試験プログラムのインタフェースやデータ型などに
ついての各種の定義で、作業者2が試験のために事前に
実施するものである。3は定義1にもとづいて作成され
るテストデータ生成条件で、データ項目、入出力ファイ
ル、テストデータの重み付けなどのデータ作成条件等が
含まれる。4は自動化手段で、テストデータ生成条件3
を参照してテストデータ5を生成する。特に、テストデ
ータの重み付けが事前の定義に含まれている場合には、
優先的に試験すべきデータを生成するというものであっ
た。
7−56768号公報や特開平5−134896号公報
にも開示されているように、試験に使用するテストデー
タを自動的に生成するものである。この図において、1
は被試験プログラムのインタフェースやデータ型などに
ついての各種の定義で、作業者2が試験のために事前に
実施するものである。3は定義1にもとづいて作成され
るテストデータ生成条件で、データ項目、入出力ファイ
ル、テストデータの重み付けなどのデータ作成条件等が
含まれる。4は自動化手段で、テストデータ生成条件3
を参照してテストデータ5を生成する。特に、テストデ
ータの重み付けが事前の定義に含まれている場合には、
優先的に試験すべきデータを生成するというものであっ
た。
【0004】この場合には、作業者が実施した定義1と
被試験プログラムの設計情報との整合が取れているかど
うかの検証は作業者の裁量によることとなるため、定義
1の作業に誤りが発生した場合、それにもとづいて自動
生成したテストデータ5を使用した試験の正当性は保証
されないこととなる。
被試験プログラムの設計情報との整合が取れているかど
うかの検証は作業者の裁量によることとなるため、定義
1の作業に誤りが発生した場合、それにもとづいて自動
生成したテストデータ5を使用した試験の正当性は保証
されないこととなる。
【0005】図14は、他のテストデータの自動生成の
例を示すものであり、例えば特開平3−282637号
公報に開示されているものである。この図において、6
は被試験プログラムで、自動化手段4がこれを参照して
静的に解析することにより、インタフェースやデータ型
を抽出してテストデータ5を生成するというものであっ
た。
例を示すものであり、例えば特開平3−282637号
公報に開示されているものである。この図において、6
は被試験プログラムで、自動化手段4がこれを参照して
静的に解析することにより、インタフェースやデータ型
を抽出してテストデータ5を生成するというものであっ
た。
【0006】この場合は、まだ正当性の確認されていな
い試験対象のプログラム6をテストデータ生成の元とし
ているため、被試験プログラム6のソースコードに誤り
があった場合、その誤りに準じたテストデータ5が生成
される可能性があり、そのテストデータ5を使用した試
験においては被試験プログラム6の誤りを検出すること
は困難であると言える。従って、この方法は、被試験プ
ログラム6が設計仕様通りに作成されているかどうかを
検証するための試験にはならない。
い試験対象のプログラム6をテストデータ生成の元とし
ているため、被試験プログラム6のソースコードに誤り
があった場合、その誤りに準じたテストデータ5が生成
される可能性があり、そのテストデータ5を使用した試
験においては被試験プログラム6の誤りを検出すること
は困難であると言える。従って、この方法は、被試験プ
ログラム6が設計仕様通りに作成されているかどうかを
検証するための試験にはならない。
【0007】図15は、従来の自動試験方式の更に他の
例を示すもので、先に挙げた特開平5−134896号
公報に開示されているものである。これは、試験結果の
検証に関するものであり、図において、7はテスト結果
検証用データで、作業者2が定義1にもとづいて作成し
たものであり、自動化手段4は、テスト結果検証用デー
タ7を参照して試験実施後のテストデータ5の検証を自
動的に実施するものであった。この場合には、作業者が
事前に結果として出力されるべきデータを定義している
検証であるため、定義作業に誤りが発生した場合には、
正しい試験結果が得られた場合でも検証時に結果不正と
いう判定が下されることが起こり得る。
例を示すもので、先に挙げた特開平5−134896号
公報に開示されているものである。これは、試験結果の
検証に関するものであり、図において、7はテスト結果
検証用データで、作業者2が定義1にもとづいて作成し
たものであり、自動化手段4は、テスト結果検証用デー
タ7を参照して試験実施後のテストデータ5の検証を自
動的に実施するものであった。この場合には、作業者が
事前に結果として出力されるべきデータを定義している
検証であるため、定義作業に誤りが発生した場合には、
正しい試験結果が得られた場合でも検証時に結果不正と
いう判定が下されることが起こり得る。
【0008】また、従来の技術で解決される範囲は、図
16(a)に示すように、プログラムの最小単位である
関数8についての試験の自動化であり、あるまとまった
機能単位であるタスクの試験は対象とされていなかっ
た。従って、OSによりスケジューリングされる動作
や、特にRTOSによってプログラムの実行がタスクの
優先度に準じて中断/再開されるようなプリエンプティ
ブな動作の検証を自動化する方法が提供されているもの
ではなかった。従来、タスク単位の試験では、図16
(b)に示すように、被試験タスク9を駆動するための
イベントを入力するために、試験用のタスク10,11
を用意する場合が多いが、この場合には、試験用のタス
ク10,11についても設計/製作/試験する必要があ
った。
16(a)に示すように、プログラムの最小単位である
関数8についての試験の自動化であり、あるまとまった
機能単位であるタスクの試験は対象とされていなかっ
た。従って、OSによりスケジューリングされる動作
や、特にRTOSによってプログラムの実行がタスクの
優先度に準じて中断/再開されるようなプリエンプティ
ブな動作の検証を自動化する方法が提供されているもの
ではなかった。従来、タスク単位の試験では、図16
(b)に示すように、被試験タスク9を駆動するための
イベントを入力するために、試験用のタスク10,11
を用意する場合が多いが、この場合には、試験用のタス
ク10,11についても設計/製作/試験する必要があ
った。
【0009】さらに、上述した従来の技術は、いずれも
ネィティブ開発についての自動化の例であり、クロス開
発における試験を自動化する手段については開示してい
ない。クロス開発においては、図17に示すように、製
作したプログラム12を実行環境のCPU言語に変換す
るクロスコンパイラ13を使用することにより実行形式
ファイル14として生成し、その実行形式ファイル14
を専用の試験装置15A、15B…15Nに読み込むこ
とにより試験を実施することが一般的である。この場
合、試験項目毎に試験装置が解釈できるコマンド群を定
義し、これらを試験装置に読み込ませることによる半自
動化が為されてきた。しかし、この場合も、作業者によ
るコマンド定義において誤りが発生する可能性は否めな
いものであり、その定義の正当性が作業者により十分に
検証されていない場合は自動化の効果は半減する。ま
た、試験装置が異なる場合、そのコマンド定義方法も異
なり、操作手順についても試験装置に依存したものであ
るため、同じソフトウェアの試験においても同じ試験装
置が用意できない場合などは試験装置毎のコマンド群お
よび操作手順を習得する必要があり、試験そのものより
もその準備作業に時間を要していた。ソフトウェアの論
理試験(シミュレーション)とハードウェアに搭載した
形での試験において使用される試験装置は一般的に異な
るものであるため、この場合も同様のことが言える。
ネィティブ開発についての自動化の例であり、クロス開
発における試験を自動化する手段については開示してい
ない。クロス開発においては、図17に示すように、製
作したプログラム12を実行環境のCPU言語に変換す
るクロスコンパイラ13を使用することにより実行形式
ファイル14として生成し、その実行形式ファイル14
を専用の試験装置15A、15B…15Nに読み込むこ
とにより試験を実施することが一般的である。この場
合、試験項目毎に試験装置が解釈できるコマンド群を定
義し、これらを試験装置に読み込ませることによる半自
動化が為されてきた。しかし、この場合も、作業者によ
るコマンド定義において誤りが発生する可能性は否めな
いものであり、その定義の正当性が作業者により十分に
検証されていない場合は自動化の効果は半減する。ま
た、試験装置が異なる場合、そのコマンド定義方法も異
なり、操作手順についても試験装置に依存したものであ
るため、同じソフトウェアの試験においても同じ試験装
置が用意できない場合などは試験装置毎のコマンド群お
よび操作手順を習得する必要があり、試験そのものより
もその準備作業に時間を要していた。ソフトウェアの論
理試験(シミュレーション)とハードウェアに搭載した
形での試験において使用される試験装置は一般的に異な
るものであるため、この場合も同様のことが言える。
【0010】
【発明が解決しようとする課題】従来のソフトウェア自
動試験方式は上述のように構成されており、ソフトウェ
ア試験の自動化において、作業者が全く介在しないとい
うことは極めて困難と言える。この場合、自動化された
試験作業の何処に作業者が介在するかということが問題
となってくるが、それは人の作業誤りが試験全体に与え
る影響を極小化でき、その誤りによる影響を容易に回復
できる作業箇所に他ならない。即ち、人が介在した際に
発生し得る誤りによって既に実施されたはずの試験自体
の正当性が保証されないのでは、自動化する前の作業と
比べて誤りが発生する作業箇所が試験そのものである
か、自動化のために行う作業になるかの違いだけであ
り、自動化による効果は小さいものとなるばかりか、作
業誤りの検出自体も困難となる場合がある。従って、作
業者が実施する作業に誤りが発生した場合においても、
既に実施した試験の正当性は保証され、試験の内容が不
足している程度の影響に収める必要がある。
動試験方式は上述のように構成されており、ソフトウェ
ア試験の自動化において、作業者が全く介在しないとい
うことは極めて困難と言える。この場合、自動化された
試験作業の何処に作業者が介在するかということが問題
となってくるが、それは人の作業誤りが試験全体に与え
る影響を極小化でき、その誤りによる影響を容易に回復
できる作業箇所に他ならない。即ち、人が介在した際に
発生し得る誤りによって既に実施されたはずの試験自体
の正当性が保証されないのでは、自動化する前の作業と
比べて誤りが発生する作業箇所が試験そのものである
か、自動化のために行う作業になるかの違いだけであ
り、自動化による効果は小さいものとなるばかりか、作
業誤りの検出自体も困難となる場合がある。従って、作
業者が実施する作業に誤りが発生した場合においても、
既に実施した試験の正当性は保証され、試験の内容が不
足している程度の影響に収める必要がある。
【0011】この発明は、上記のような課題に対処する
ために為されたものであり、ソフトウェア設計情報にも
とづいたソフトウェア試験情報を自動生成し、さらに、
ネイティブあるいはクロス開発に限定されずにタスク単
位の動作検証を含むソフトウェア試験に係る一連の作業
を自動化することにより、従来の自動化方式では発生す
る可能性のあった人的誤りを排除し、試験の正当性を保
証すると共に試験に費やす時間を短縮し、かつ試験装置
に依存しない試験手順で実施することのできるソフトウ
ェア自動試験方式を提供しようとするものである。
ために為されたものであり、ソフトウェア設計情報にも
とづいたソフトウェア試験情報を自動生成し、さらに、
ネイティブあるいはクロス開発に限定されずにタスク単
位の動作検証を含むソフトウェア試験に係る一連の作業
を自動化することにより、従来の自動化方式では発生す
る可能性のあった人的誤りを排除し、試験の正当性を保
証すると共に試験に費やす時間を短縮し、かつ試験装置
に依存しない試験手順で実施することのできるソフトウ
ェア自動試験方式を提供しようとするものである。
【0012】
【課題を解決するための手段】この発明に係るソフトウ
ェア自動試験方式は、計算機と、表示装置と、記憶装置
と、試験装置とを有するコンピュータシステム本体を備
え、デザインレビュー等にもとづくソフトウェア設計情
報を上記記憶装置に設定するソフトウェア設計支援手段
と、上記ソフトウェア設計情報にもとづいたソフトウェ
ア試験を自動化するためのソフトウェア試験手段とを上
記コンピュータシステム本体に設けると共に、上記ソフ
トウェア試験手段は、上記ソフトウェア設計情報にもと
づいて被試験プログラムの試験項目および試験規格を自
動的に抽出する試験仕様生成手段を備え、上記試験項目
について上記ソフトウェア設計情報にもとづいて優先度
情報を付加するようにしたものにおいて、上記優先度情
報は、被試験対象として実行管理される単位のソフトウ
ェア(以下タスクと称す)の入出力イベントの組合せが
タスク間シーケンス情報として定義されているものを優
先度1、被試験タスクへの入力イベントに対して出力イ
ベントが発生するもので優先度1以外のものを優先度
2、被試験タスクへの入力イベントに対して被試験タス
クの各データ値に変化が発生するもので優先度1、2以
外の試験項目を優先度3、優先度1、2、3以外を優先
度4の試験項目とするものである。
ェア自動試験方式は、計算機と、表示装置と、記憶装置
と、試験装置とを有するコンピュータシステム本体を備
え、デザインレビュー等にもとづくソフトウェア設計情
報を上記記憶装置に設定するソフトウェア設計支援手段
と、上記ソフトウェア設計情報にもとづいたソフトウェ
ア試験を自動化するためのソフトウェア試験手段とを上
記コンピュータシステム本体に設けると共に、上記ソフ
トウェア試験手段は、上記ソフトウェア設計情報にもと
づいて被試験プログラムの試験項目および試験規格を自
動的に抽出する試験仕様生成手段を備え、上記試験項目
について上記ソフトウェア設計情報にもとづいて優先度
情報を付加するようにしたものにおいて、上記優先度情
報は、被試験対象として実行管理される単位のソフトウ
ェア(以下タスクと称す)の入出力イベントの組合せが
タスク間シーケンス情報として定義されているものを優
先度1、被試験タスクへの入力イベントに対して出力イ
ベントが発生するもので優先度1以外のものを優先度
2、被試験タスクへの入力イベントに対して被試験タス
クの各データ値に変化が発生するもので優先度1、2以
外の試験項目を優先度3、優先度1、2、3以外を優先
度4の試験項目とするものである。
【0013】 この発明に係るソフトウェア自動試験方
式は、また、上記ソフトウェア試験手段が、上記試験項
目に対応した試験装置を制御するための制御情報ファイ
ルを自動的に生成する制御情報生成手段を備えたもので
ある。
式は、また、上記ソフトウェア試験手段が、上記試験項
目に対応した試験装置を制御するための制御情報ファイ
ルを自動的に生成する制御情報生成手段を備えたもので
ある。
【0014】 この発明に係るソフトウェア自動試験方
式は、また、上記ソフトウェア試験手段が、上記試験項
目に対応した試験を実施するための試験用プログラムの
ソースコードを自動的に生成する試験プログラム生成手
段を備えたものである。
式は、また、上記ソフトウェア試験手段が、上記試験項
目に対応した試験を実施するための試験用プログラムの
ソースコードを自動的に生成する試験プログラム生成手
段を備えたものである。
【0015】 この発明に係るソフトウェア自動試験方
式は、また、上記ソフトウェア試験手段が、上記制御情
報ファイルにもとづいて試験装置を制御することによ
り、試験装置毎の試験手順によることなく試験を実施す
る試験実行手段を備えたものである。
式は、また、上記ソフトウェア試験手段が、上記制御情
報ファイルにもとづいて試験装置を制御することによ
り、試験装置毎の試験手順によることなく試験を実施す
る試験実行手段を備えたものである。
【0016】 この発明に係るソフトウェア自動試験方
式は、また、上記ソフトウェア試験手段が、上記試験実
行手段によって実施された試験の実行結果と試験規格と
を照合することにより、試験結果を自動的に検証する試
験結果検証手段を備えたものである。
式は、また、上記ソフトウェア試験手段が、上記試験実
行手段によって実施された試験の実行結果と試験規格と
を照合することにより、試験結果を自動的に検証する試
験結果検証手段を備えたものである。
【0017】 この発明に係るソフトウェア自動試験方
式は、また、上記ソフトウェア試験手段が、ソフトウェ
ア設計情報にもとづいて被試験プログラムの試験項目お
よび試験規格を自動的に抽出する試験仕様生成手段と、
上記試験項目に対応した試験装置を制御するための制御
情報ファイルを自動的に生成する制御情報生成手段と、
上記試験項目に対応した試験を実施するための試験用プ
ログラムのソースコードを自動的に生成する試験プログ
ラム生成手段と、上記制御情報ファイルにもとづいて試
験装置を制御することにより、試験装置毎の試験手順に
よることなく試験を実施する試験実行手段と、上記試験
実行手段によって実施された試験の実行結果と上記試験
規格とを照合することにより、試験結果を自動的に検証
する試験結果検証手段とを備えたものである。
式は、また、上記ソフトウェア試験手段が、ソフトウェ
ア設計情報にもとづいて被試験プログラムの試験項目お
よび試験規格を自動的に抽出する試験仕様生成手段と、
上記試験項目に対応した試験装置を制御するための制御
情報ファイルを自動的に生成する制御情報生成手段と、
上記試験項目に対応した試験を実施するための試験用プ
ログラムのソースコードを自動的に生成する試験プログ
ラム生成手段と、上記制御情報ファイルにもとづいて試
験装置を制御することにより、試験装置毎の試験手順に
よることなく試験を実施する試験実行手段と、上記試験
実行手段によって実施された試験の実行結果と上記試験
規格とを照合することにより、試験結果を自動的に検証
する試験結果検証手段とを備えたものである。
【0018】 この発明に係るソフトウェア自動試験方
式は、また、上記ソフトウェア試験が、OSにより実行
管理される単位のタスクをOSと組み合わせた形態で実
施されるようにしたものである。
式は、また、上記ソフトウェア試験が、OSにより実行
管理される単位のタスクをOSと組み合わせた形態で実
施されるようにしたものである。
【0019】 この発明に係るソフトウェア自動試験方
式は、また、上記OSが、マルチタスクOSとされるも
のである。
式は、また、上記OSが、マルチタスクOSとされるも
のである。
【0020】 この発明に係るソフトウェア自動試験方
式は、また、上記OSが複数のタスクを各タスクの優先
度に従って実行管理するRTOSとされるものである。
式は、また、上記OSが複数のタスクを各タスクの優先
度に従って実行管理するRTOSとされるものである。
【0021】 この発明に係るソフトウェア自動試験方
式は、また、上記ソフトウェア試験を、ソフトウェア開
発に使用するホストマシンのCPUと、実際にソフトウ
ェアを動作させるハードウェアのCPUとが同じである
場合のネイティブ開発、およびそれらが異なる場合のク
ロス開発、のいずれのソフトウェア試験にも適用し得る
ようにしたものである。
式は、また、上記ソフトウェア試験を、ソフトウェア開
発に使用するホストマシンのCPUと、実際にソフトウ
ェアを動作させるハードウェアのCPUとが同じである
場合のネイティブ開発、およびそれらが異なる場合のク
ロス開発、のいずれのソフトウェア試験にも適用し得る
ようにしたものである。
【0022】
【発明の実施の形態】実施の形態1. 以下、この発明の実施の形態1を図にもとづいて説明す
る。図1は、実施の形態1の構成を示すブロック図であ
る。この図において、20はソフトウェア自動試験シス
テムのシステム本体で、このシステム本体には、表示装
置30、キーボード等の入力装置40、記憶装置50、
および試験装置60が接続されている。また、21はシ
ステム本体20に格納されたソフトウェア設計支援手
段、22は同じくシステム本体20に格納されたソフト
ウェア試験手段で、試験仕様生成手段26A、制御情報
生成手段26B、試験プログラム生成手段26C、試験
実行手段26D、および試験結果検証手段26Eから構
成されている。
る。図1は、実施の形態1の構成を示すブロック図であ
る。この図において、20はソフトウェア自動試験シス
テムのシステム本体で、このシステム本体には、表示装
置30、キーボード等の入力装置40、記憶装置50、
および試験装置60が接続されている。また、21はシ
ステム本体20に格納されたソフトウェア設計支援手
段、22は同じくシステム本体20に格納されたソフト
ウェア試験手段で、試験仕様生成手段26A、制御情報
生成手段26B、試験プログラム生成手段26C、試験
実行手段26D、および試験結果検証手段26Eから構
成されている。
【0023】 また、51は記憶装置50に格納され
たソフトウェア設計情報、52は同じく記憶装置50に
格納されたソフトウェア試験情報で、ソフトウェア設計
情報51を元にしてこのシステムにより生成される試験
項目56A、試験規格56B、試験装置制御情報56
C、試験プログラム56D、および試験結果56Eを含
むものである。
たソフトウェア設計情報、52は同じく記憶装置50に
格納されたソフトウェア試験情報で、ソフトウェア設計
情報51を元にしてこのシステムにより生成される試験
項目56A、試験規格56B、試験装置制御情報56
C、試験プログラム56D、および試験結果56Eを含
むものである。
【0024】 なお、図1でシステム本体20の各手段
と記憶装置50の各情報との間に表示されている実線矢
印は、矢印方向への設定機能を示し、点線矢印は矢印方
向への参照機能を示すものである。
と記憶装置50の各情報との間に表示されている実線矢
印は、矢印方向への設定機能を示し、点線矢印は矢印方
向への参照機能を示すものである。
【0025】 また、この実施の形態は、RTOS上で
稼働するタスクの試験手順に、この発明による方式を適
用した例を示すものである。なお、被試験タスクへの入
力イベントは、OSを使用したタスク間通信方式として
一般的であるメッセージ通信を用いることとして説明す
る。
稼働するタスクの試験手順に、この発明による方式を適
用した例を示すものである。なお、被試験タスクへの入
力イベントは、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などのように、入力イベントに対す
る被試験プログラムの出力イベントや内部データ遷移値
が判断可能な設計情報より構成されている。
容を図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にも
とづいて実施されることになる。
計情報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の試験項目とするものである。
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が入力されるケースを示す。他の組み合わせ表示に
ついても同様である。
トの連続数を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)として定義されているケ
ースである。
ッセージ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において、実際に試験
対象項目として決定することにより、その試験項目に試
験対象情報が付加される。これにより、試験レベルにも
とづいて生成された全試験項目に対して試験対象項目が
占める割合を算出することも可能となる。
A→3A」は、タスク間シーケンス情報で(3)として
定義されているケースであるため、優先度は1となり、
「1A→1B」は、タスク間シーケンス情報の(1)〜
(4)の定義とは異なるケースであるため、優先度は2
となっている。このような優先度情報を参考にして、試
験作業者が図3のステップS15において、実際に試験
対象項目として決定することにより、その試験項目に試
験対象情報が付加される。これにより、試験レベルにも
とづいて生成された全試験項目に対して試験対象項目が
占める割合を算出することも可能となる。
【0032】次に、図5に示す制御情報生成手段26B
による試験装置制御情報56Cの生成手順について説明
する。試験装置制御情報56Cは、試験装置60への試
験モジュールの読み込み、試験モジュールの起動、被試
験タスクへのイベント入力、および試験結果としての被
試験タスクの入出力イベント、データ遷移値などを収集
する試験制御手順を試験装置のコマンド書式を使用して
書いた試験手順ファイルである。以下、試験制御手順を
図6に示す。まず、ステップS21において、試験モジ
ュールを試験装置60へロードする。ここで、試験モジ
ュールは図7(b)における試験時のソフトウェア構成
に示す各ソフトウェアを実行形式のファイルとして生成
したものである。各ソフトウェアの詳細については後述
する。
による試験装置制御情報56Cの生成手順について説明
する。試験装置制御情報56Cは、試験装置60への試
験モジュールの読み込み、試験モジュールの起動、被試
験タスクへのイベント入力、および試験結果としての被
試験タスクの入出力イベント、データ遷移値などを収集
する試験制御手順を試験装置のコマンド書式を使用して
書いた試験手順ファイルである。以下、試験制御手順を
図6に示す。まず、ステップS21において、試験モジ
ュールを試験装置60へロードする。ここで、試験モジ
ュールは図7(b)における試験時のソフトウェア構成
に示す各ソフトウェアを実行形式のファイルとして生成
したものである。各ソフトウェアの詳細については後述
する。
【0033】次に、ステップS22において試験タスク
へブレークポイントを設定する。設定箇所は、試験タス
クが疑似タスクへメッセージを送信する直前であり、こ
れについても詳細は後述する。次に、ステップS23に
おいて試験モジュールを起動することにより試験モジュ
ールを構成する各タスクが動作する。ステップS24で
は入力イベントの設定として試験タスクのデータ領域に
試験項目に対応した被試験タスクへの送信メッセージを
表わすビット列を設定するが、この処理はステップS2
2にて設定したブレークポイントにより試験タスクの動
作が一時的に停止された状態で行われる。従って、ステ
ップS24に示す試験タスクの再開は、このブレークポ
イントからの動作の再開を意味する。ステップS24
は、試験項目の入力イベント数の分だけ繰り返され(図
示の場合は2回)、その後、ステップS25にて試験結
果を試験結果ファイルに格納する。試験結果は、試験規
格として定義されている被試験タスクの入出力イベント
履歴および入力イベント毎のデータ遷移値を含み、他に
ソースコードレベルの実行網羅率であるカバレッジデー
タや特定区間の処理時間などを含んでも良い。
へブレークポイントを設定する。設定箇所は、試験タス
クが疑似タスクへメッセージを送信する直前であり、こ
れについても詳細は後述する。次に、ステップ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の動作を中断しないよう
に、試験系で最低値の優先度で生成・起動する。
る試験プログラムのソースコード生成手順について説明
する。マルチタスク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に示す試験時の各
タスクの処理フローに準ずる。
る生成手順を示す。まず、ステップS31にて試験タス
ク71のソースコードを、ステップS32にて必要数分
の疑似タスク72,73のソースコードを、ソフトウェ
ア設計情報51として定義されているプログラム言語に
て生成する。プログラム仕様は、図9に示す試験時の各
タスクの処理フローに準ずる。
【0036】図10は、各タスクの初期化時のシーケン
スを示すものである。試験タスク71は、タスク情報に
もとづいた属性を使用して被試験タスク70を生成、起
動する。これにより、タスクの実行権は被試験タスク7
0に移行し、被試験タスクは必要な初期化処理を実行し
た後、メッセージ受信待ち状態になる。被試験タスク7
0がメッセージ受信待ちになると、試験タスクに再び実
行権が移行し、各疑似タスク72,73を生成、起動す
る。各疑似タスクが生成、起動される毎に実行権はそれ
らのタスクへ移行するが、すぐにメッセージ受信待ち状
態になり、再び試験タスクに実行権が戻る。その後、試
験タスク71は試験装置制御情報にて設定されたブレー
クポイントにおいてその動作を一時停止する。なお、試
験タスク71はOSへ別途登録し、試験モジュール起動
時にOSより起動されるようにする。
スを示すものである。試験タスク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、試験タスクの順とさ
れている。
くメッセージ通信シーケンスを示すものである。試験タ
スク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が不合格であることと共に不整合箇所の情報
を画面表示する。
よび試験結果検証手段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 試験装置。
手段、 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 (10)
- 【請求項1】計算機と、表示装置と、記憶装置と、試験
装置とを有するコンピュータシステム本体を備え、デザ
インレビュー等にもとづくソフトウェア設計情報を上記
記憶装置に設定するソフトウェア設計支援手段と、上記
ソフトウェア設計情報にもとづいたソフトウェア試験を
自動化するためのソフトウェア試験手段とを上記コンピ
ュータシステム本体に設けると共に、上記ソフトウェア
試験手段は、上記ソフトウェア設計情報にもとづいて被
試験プログラムの試験項目および試験規格を自動的に抽
出する試験仕様生成手段を備え、上記試験項目について
上記ソフトウェア設計情報にもとづいて優先度情報を付
加するようにしたものにおいて、上記優先度情報は、被
試験対象として実行管理される単位のソフトウェア(以
下タスクと称す)の入出力イベントの組合せがタスク間
シーケンス情報として定義されているものを優先度1、
被試験タスクへの入力イベントに対して出力イベントが
発生するもので優先度1以外のものを優先度2、被試験
タスクへの入力イベントに対して被試験タスクの各デー
タ値に変化が発生するもので優先度1、2以外の試験項
目を優先度3、優先度1、2、3以外を優先度4の試験
項目とすることを特徴とするソフトウェア自動試験方
式。 - 【請求項2】上記ソフトウェア試験手段は、上記試験項
目に対応した試験装置を制御するための制御情報ファイ
ルを自動的に生成する制御情報生成手段を備えたことを
特徴とする請求項1記載のソフトウェア自動試験方式。 - 【請求項3】上記ソフトウェア試験手段は、上記試験項
目に対応した試験を実施するための試験用プログラムの
ソースコードを自動的に生成する試験プログラム生成手
段を備えたことを特徴とする請求項1記載のソフトウェ
ア自動試験方式。 - 【請求項4】上記ソフトウェア試験手段は、上記制御情
報ファイルにもとづいて試験装置を制御することによ
り、試験装置毎の試験手順によることなく試験を実施す
る試験実行手段を備えたことを特徴とする請求項2記載
のソフトウェア自動試験方式。 - 【請求項5】上記ソフトウェア試験手段は、上記試験実
行手段によって実施された試験の実行結果と試験規格と
を照合することにより、試験結果を自動的に検証する試
験結果検証手段を備えたことを特徴とする請求項4記載
のソフトウェア自動試験方式。 - 【請求項6】上記ソフトウェア試験手段は、ソフトウェ
ア設計情報にもとづいて被試験プログラムの試験項目お
よび試験規格を自動的に抽出する試験仕様生成手段と、
上記試験項目に対応した試験装置を制御するための制御
情報ファイルを自動的に生成する制御情報生成手段と、
上記試験項目に対応した試験を実施するための試験用プ
ログラムのソースコードを自動的に生成する試験プログ
ラム生成手段と、上記制御情報ファイルにもとづいて試
験装置を制御することにより、試験装置毎の試験手順に
よることなく試験を実施する試験実行手段と、上記試験
実行手段によって実施された試験の実行結果と上記試験
規格とを照合することにより、試験結果を自動的に検証
する試験結果検証手段とを備えたことを特徴とする請求
項1記載のソフトウェア自動試験方式。 - 【請求項7】上記ソフトウェア試験は、オペレーティン
グシステム(以下、OSと称す)により実行管理される
単位のタスクをOSと組み合わせた形態で実施し得るよ
うにしたことを特徴とする請求項1記載のソフトウェア
自動試験方式。 - 【請求項8】上記OSは、複数のタスクを実行管理する
OS(以下、マルチタスクOSと称す)であることを特
徴とする請求項7記載のソフトウェア自動試験方式。 - 【請求項9】上記OSは、複数のタスクを各タスクの優
先度に従って実行管理するリアルタイムOS(以下、R
TOSと称す)であることを特徴とする請求項7記載の
ソフトウェア自動試験方式。 - 【請求項10】上記ソフトウェア試験は、ソフトウェア
開発に使用するホストマシンのCPUと、実際にソフト
ウェアを動作させるハードウェアのCPUとが同じであ
る場合のソフトウェア開発(以下、ネイティブ開発と称
す)、およびそれらが異なる場合のソフトウェア開発
(以下、クロス開発と称す)のいずれのソフトウェア試
験にも適用し得るようにしたことを特徴とする請求項1
記載のソフトウェア自動試験方式。
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 JP2002157144A (ja) | 2002-05-31 |
JP3504605B2 true 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) |
Families Citing this family (6)
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 | ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム |
JP5651050B2 (ja) * | 2011-03-08 | 2015-01-07 | 株式会社富士通マーケティング | データ生成装置及びデータ生成プログラム |
JP2019153265A (ja) * | 2018-03-05 | 2019-09-12 | キヤノンマーケティングジャパン株式会社 | 情報処理装置、その処理方法及びプログラム |
-
2000
- 2000-11-17 JP JP2000350692A patent/JP3504605B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002157144A (ja) | 2002-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4950454B2 (ja) | テスト自動化のスタック階層化 | |
US7529990B2 (en) | Systems and methods for managing multi-device test sessions | |
WO2020140820A1 (zh) | 软件测试方法、系统、装置、设备、介质及计算机程序产品 | |
CN101046767B (zh) | 用于自动测试基于图形的编程工具的方法和系统 | |
US6901535B2 (en) | Information processing apparatus, defect analysis program, and defect analysis method | |
US20050235260A1 (en) | User interface application development device and development method | |
US20150100832A1 (en) | Method and system for selecting and executing test scripts | |
US20080086627A1 (en) | Methods and apparatus to analyze computer software | |
US10817819B2 (en) | Workflow compilation | |
US7895575B2 (en) | Apparatus and method for generating test driver | |
EP1292886A1 (en) | Methods and systems for supporting and deploying distributed computing components | |
US8250554B2 (en) | Systems and methods for generating and distributing executable procedures for technical desk-side support | |
US20070245322A1 (en) | System and method for interactive and assisted program development | |
US9026997B2 (en) | Systems and methods for executing object-oriented programming code invoking pre-existing objects | |
US20080127061A1 (en) | Method and system for editing code | |
JP3504605B2 (ja) | ソフトウェア自動試験方式 | |
JP5120103B2 (ja) | デバッグ方法およびデバッグプログラム | |
JP2006155047A (ja) | 検証システム及び検証方法 | |
JP2016126700A (ja) | プログラム検証装置、プログラム検証方法及びプログラム検証プログラム | |
CN111124893B (zh) | 一种基于Android设备的自动化测试方法和系统 | |
CN111290749B (zh) | 一种数据处理方法、智能终端及存储介质 | |
Gorsky | Continuous integration, delivery, and deployment for scientific workflows in Orlando Tools. | |
JP2000131194A (ja) | 車両診断プログラム作成装置及び車両診断装置 | |
KR101877841B1 (ko) | 아비바 마린(Aveva Marine) 캐드 시스템 내의 Add-in 프로그램 개발 방법 | |
JPH04248636A (ja) | 複数プログラム制御方式 |
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 |