JP5230587B2 - ラダープログラムのプログラム試験装置、ラダープログラムのプログラム試験方法およびラダープログラムのプログラム試験用プログラム - Google Patents
ラダープログラムのプログラム試験装置、ラダープログラムのプログラム試験方法およびラダープログラムのプログラム試験用プログラム Download PDFInfo
- Publication number
- JP5230587B2 JP5230587B2 JP2009268772A JP2009268772A JP5230587B2 JP 5230587 B2 JP5230587 B2 JP 5230587B2 JP 2009268772 A JP2009268772 A JP 2009268772A JP 2009268772 A JP2009268772 A JP 2009268772A JP 5230587 B2 JP5230587 B2 JP 5230587B2
- Authority
- JP
- Japan
- Prior art keywords
- test
- program
- module
- information
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Programmable Controllers (AREA)
- Testing And Monitoring For Control Systems (AREA)
Description
がないと設計ができない。
また、テスト結果の検証は正常値との比較といった単純なものだけしか扱うことができないため、複数の条件を組み合せたり、時間や状態変化を考慮するものであったり、ある条件での試験結果を他の条件の入力データとして使ったりするなどプログラマブルな条件を指定することができない。
本発明は、このような課題を解決するためになされたもので、複数の条件を組み合せたり、時間や状態変化を考慮できたり、ある条件での試験結果を他の条件の入力データとして使ったりするなど、プログラマブルな条件でプログラム試験が行えるプログラム試験装置を提供することを目的とする。
の識別情報とを入力部から取得してモジュールの情報に加えてモジュール情報とし、このモジュール情報と変数情報とをテストデータベースに格納するプログラム解析部と、テストデータベースに格納されたモジュール情報と変数情報とを用いて、モジュール毎にプログラム試験を行うために必要なテストロジックとテストデータとを入力部から入力するためのテスト入力画面を生成してこのテスト入力画面を構成するためのテスト入力画面情報を上記テストデータベースに格納するテスト入力画面生成部と、テスト入力画面情報を用いて表示部にテスト入力画面を表示させるとともに、テスト入力画面を用いて入力されたテストロジックから生成されたテストプログラムと入力されたテストデータをテストデータベースに格納するテスト編集部と、入力されたテストデータを用いてテストプログラムを実行し、テスト結果をテストデータベースに格納するテストプログラム実行部とを備えたものである。
図1は本発明の一実施の形態によるプログラム試験装置の概要を示すブロック図である。プログラム試験装置はテストデータベース80と制御部70と、オペレータからデータを入力できる入力部4と、出力結果をグラフィックあるいはテキスト形式で表示する表示部2で構成される。なお、制御部70はコンピュータがプログラムにより実行するものである。すなわち制御部70はプログラム試験プログラムと同義である。入力部4から制御部70にテストに関するデータの入力を行い、その出力結果を表示部2に出力する。入力部4から試験対象プログラム92が入力されると、制御部70は試験対象プログラム92をいくつかのモジュールに分割し、モジュールのもつ変数に設定するテストデータやテストに指定するロジックを機能単位で分割してテストデータベース80に記憶する。また試験対象プログラム92を解析してプログラム中に宣言されている変数の情報をテストデータベース80に格納する。記録したテストプログラムを実行するとテスト実行結果85がテストデータベース80に記憶される。
発明の特徴がある。
テストデータの入力画面とテストロジックの入力画面は合成されてテスト入力画面として生成され、生成されたテスト入力画面がデータ形式でテスト入力画面情報88としてテストデータベース80に格納される。
内に記述可能なスクリプトとして入力される。このようなスクリプトはコンパイル不要な言語で、軽量言語と呼ばれている。上記した変数の別名を使って制御構文などを使ってテストの検証ロジックを記述する。このように、テストロジックを、制御構造を有する軽量言語で記述できるので、機械語に近い低度な表現力しか有さないラダープログラムでは記述し難かった検証ロジックを簡単に記述することができる。テスト編集部73は入力されたロジックと、別名でプログラムの変数にアクセスするためのプログラムを結合してテストプログラム83を生成してテストデータ84とともにテストデータベース80に記録する。
テストプログラム実行部74はテストデータベース80に記録されたテストデータ84を用いてテストプログラム83を実行することによりテストを実行しテスト実行結果85をテストデータベース80に記録する。
で使われるすべてのテストデータ84とテストプログラム83が格納されている。モジュール情報領域820にはプログラムの解析単位であるプログラムの部分(行番号のどこからどこまで)や直接関連する機能などが記憶されており、各モジュールのモジュール情報領域に変数情報領域810、テスト情報領域86を有している。変数情報領域810には各モジュールで使われている変数に関する属性(名称、型名、別名など)や、変数の使用状況(入力変数、出力変数、値の参照)が記憶されている。このように、各情報は、モジュール毎に関連付けて格納されており、モジュール情報にはそのモジュールが実現する機能の情報も含まれているため、結局各情報は機能ごとに管理されることになる。
入力する(ST10)。対象となるプログラムにテスト入力画面を生成するための解析を行うモジュールがなければ終了し、そうでない場合は次の処理を行う(ST11)。
次に、プログラムのもつモジュールの解析されていない最初の要素IDを取得してモジュールを読み込む(ST12)。次に作成するテスト入力画面を識別するテスト番号を入力する(ST13)。
); } を記述している。これはビット型変数であるA3とA4のいずれかがtrueであるとき、WORD型の変数A2がWORD型の変数A1より100大きい数でない場合が異常であること
を検出するロジックである。このようなテストロジックは、試験毎にオペレータが決める必要があり、テスト入力画面生成部71によって自動で生成することはできないため、入力画面によってオペレータが入力するように構成している。このようにプログラマブルな条件を指定できるように構成することで、複雑な条件など、種々の状態を模擬した試験が行えるようになる。
と56についてはテストが成功していないが、次の日の9月10日のテストでは各モジュールのバージョンがともに0.8から1.0、1.1から2.0に更新されることでテストがクリアされていることがわかる。このようにテスト結果を一元的に管理することで機能単位、モジュール単位、日時単位といった側面で多角的に分析を行えるため試験の効率化をはかることが可能になる。
図13は、本発明の実施の形態2によるプログラム試験装置のプログラム解析部75の動作の概要を説明するフローチャート図である。各機能は、機能同士で関連する場合がある。例えばある機能の出力値が別の機能の入力になったり、ある機能の出力値により別の機能の判断が変化したり、といった様に、相互に他の機能に依存することが多い。このような依存関係は、プログラムの解析によるだけでは抽出できない場合が多い。このため、オペレータに依存関係を入力させて、依存関係を明確にしておくことで、プログラム試験が、より効率的に実行できることになる。
いる。つまり要素ID69634のモジュールは要素ID137222のモジュールから呼び出され
るモジュールとなる。この情報は、モジュール情報に格納される。なお、依存関係は、モジュールではなく、依存する機能を入力させるようにしても良い。依存する機能がわかれば依存するモジュールが抽出できるからである。この場合、機能のIDまたは機能名を入力させることになる。
70:制御部 71:テスト入力画面生成部
73;テスト編集部 74:テストプログラム実行部
80:テストデータベース 81:変数情報
82:モジュール情報 83テストプログラム
84:テストデータ 92:試験対象プログラム
Claims (3)
- 入力部と表示部と制御部とテストデータベースとを備えたラダープログラムのプログラム試験装置において、
上記制御部は、上記入力部から入力された試験対象ラダープログラムを複数のモジュールに分割し、この分割されたモジュール毎に当該モジュールを解析して、モジュールの情報と、上記モジュール毎に用いられている変数情報とを取得し、上記モジュール毎に当該モジュールが実現する機能の情報と、当該モジュールに依存する他のモジュールの識別情報とを上記入力部から取得して上記モジュールの情報に加えてモジュール情報とし、このモジュール情報と上記変数情報とを上記テストデータベースに格納するプログラム解析部と、
上記テストデータベースに格納された上記モジュール情報と上記変数情報とを用いて、上記モジュール毎にプログラム試験を行うために必要なテストロジックとテストデータとを上記入力部から入力するためのテスト入力画面を生成してこのテスト入力画面を構成するためのテスト入力画面情報を上記テストデータベースに格納するテスト入力画面生成部と、
上記テスト入力画面情報を用いて上記表示部に上記テスト入力画面を表示させるとともに、上記テスト入力画面を用いて入力されたテストロジックからテストプログラムを生成し、生成したテストプログラムと入力されたテストデータを上記テストデータベースに格納するテスト編集部と、
上記テストデータベースに格納された上記テストデータを用いて上記テストプログラムを実行し、テスト結果を上記テストデータベースに格納するテストプログラム実行部と
を備えたことを特徴とするラダープログラムのプログラム試験装置。 - 入力された試験対象ラダープログラムを複数のモジュールに分割するステップと、
この分割されたモジュール毎のモジュールの情報と、これらモジュール毎に用いられている変数情報とを解析して取得するステップと、
上記モジュール毎に当該モジュールが実現する機能の情報を入力部から取得して上記モジュールの情報に加えてモジュール情報とし、このモジュール情報と上記変数情報とをテストデータベースに格納するステップと、
上記モジュール毎に当該モジュールに依存する他のモジュールの識別情報を入力部から取
得し、取得した上記他のモジュールの識別情報を当該モジュールの上記モジュール情報に加えて上記テストデータベースに格納するステップと、
上記テストデータベースに格納された上記モジュール情報と上記変数情報とを用いて、上記モジュール毎にプログラム試験を行うために必要なテストロジックとテストデータとを入力するためのテスト入力画面を生成するステップと、
生成された上記テスト入力画面を表示部に表示させて、上記入力部から入力されたテストロジックからテストプログラムを生成し、この生成されたテストプログラムと上記入力部から入力されたテストデータとを上記テストデータベースに格納するステップと、
上記テストデータベースに格納された上記テストデータを用いて上記テストプログラムを実行し、テスト結果を上記テストデータベースに格納するステップとを備えたことを特徴とするラダープログラムのプログラム試験方法。 - 入力された試験対象ラダープログラムを複数のモジュールに分割する手順と、
この分割されたモジュール毎のモジュールの情報と、これらモジュール毎に用いられている変数情報とを解析して取得する手順と、
上記モジュール毎に当該モジュールが実現する機能の情報を入力部から取得して上記モジュールの情報に加えてモジュール情報とし、このモジュール情報と上記変数情報とをテストデータベースに格納する手順と、
上記モジュール毎に当該モジュールに依存する他のモジュールの識別情報を入力部から取得し、取得した上記他のモジュールの識別情報を当該モジュールの上記モジュール情報に加えて上記テストデータベースに格納する手順と、
上記テストデータベースに格納された上記モジュール情報と上記変数情報とを用いて、上記モジュール毎にプログラム試験を行うために必要なテストロジックとテストデータとを入力するためのテスト入力画面を生成する手順と、
生成された上記テスト入力画面を表示部に表示させ、テストロジックとテストデータとを入力させる手順と、
入力された上記テストロジックからテストプログラムを生成する手順と、
入力された上記テストデータを用いて上記テストプログラムを実行し、テスト結果を上記テストデータベースに格納する手順と、
をコンピュータに実行させることを特徴とするラダープログラムのプログラム試験用プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009268772A JP5230587B2 (ja) | 2009-11-26 | 2009-11-26 | ラダープログラムのプログラム試験装置、ラダープログラムのプログラム試験方法およびラダープログラムのプログラム試験用プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009268772A JP5230587B2 (ja) | 2009-11-26 | 2009-11-26 | ラダープログラムのプログラム試験装置、ラダープログラムのプログラム試験方法およびラダープログラムのプログラム試験用プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011113277A JP2011113277A (ja) | 2011-06-09 |
JP5230587B2 true JP5230587B2 (ja) | 2013-07-10 |
Family
ID=44235567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009268772A Expired - Fee Related JP5230587B2 (ja) | 2009-11-26 | 2009-11-26 | ラダープログラムのプログラム試験装置、ラダープログラムのプログラム試験方法およびラダープログラムのプログラム試験用プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5230587B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6089893B2 (ja) * | 2013-03-29 | 2017-03-08 | 富士通株式会社 | テスト支援プログラム、テスト支援装置およびテスト支援方法 |
JP6869082B2 (ja) * | 2017-04-06 | 2021-05-12 | 株式会社日立製作所 | テストケースを選択する計算機及びテストケースの選択方法 |
JP7211229B2 (ja) * | 2019-04-10 | 2023-01-24 | 日本電信電話株式会社 | 入力値設定補助装置、入力値設定補助方法及びプログラム |
US20220261319A1 (en) * | 2019-06-24 | 2022-08-18 | Nec Corporation | Fault isolation system, method and program |
JP2021125020A (ja) * | 2020-02-06 | 2021-08-30 | 三菱電機株式会社 | 制御装置試験データ復元システム |
WO2023119519A1 (ja) * | 2021-12-22 | 2023-06-29 | 三菱電機株式会社 | Fa制御テスト支援プログラム、fa制御テスト支援装置、fa制御テスト支援方法及びfa制御テスト支援システム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0728521A (ja) * | 1993-07-09 | 1995-01-31 | Yaskawa Electric Corp | シミュレーションプログラム自動作成方法 |
JP2684981B2 (ja) * | 1993-12-27 | 1997-12-03 | 日本電気株式会社 | テスト支援装置 |
JPH08305609A (ja) * | 1995-04-28 | 1996-11-22 | Oki Electric Ind Co Ltd | プログラムのテスト方法および装置 |
JP4379687B2 (ja) * | 2003-07-25 | 2009-12-09 | オムロン株式会社 | シミュレーション支援ツールおよびラダープログラムの検証システムならびにプログラム製品 |
-
2009
- 2009-11-26 JP JP2009268772A patent/JP5230587B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011113277A (ja) | 2011-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20120116561A1 (en) | Program testing apparatus, method of testing a program, and program testing program | |
JP5230587B2 (ja) | ラダープログラムのプログラム試験装置、ラダープログラムのプログラム試験方法およびラダープログラムのプログラム試験用プログラム | |
US8356282B1 (en) | Integrated development environment for the development of electronic signal testing strategies | |
US7752501B2 (en) | Dynamic generation and implementation of globalization verification testing for user interface controls | |
JP2017142800A (ja) | プロセス制御ネットワークのルールビルダー | |
US20140089895A1 (en) | Test case pattern matching | |
WO2014167726A1 (ja) | プログラマブルコントローラの周辺装置およびデバッグ支援プログラム | |
EP3361398B1 (en) | Engineering apparatus, engineering method, and program | |
JP5303795B2 (ja) | アプリケーションの解析方法、解析システム及び解析プログラム | |
JP2012198888A (ja) | 制御システムにおける入出力モジュールをシミュレートするシステムおよび方法 | |
US8874598B2 (en) | Method and system for an executable specification | |
US7451358B2 (en) | Test executive system with automatic expression logging and parameter logging | |
JP5834991B2 (ja) | 図式プログラムのテスト網羅性測定装置およびその方法、並びにプログラム | |
US10579761B1 (en) | Method and system for reconstructing a graph presentation of a previously executed verification test | |
JP2008305079A (ja) | 要求仕様自動検証方式 | |
JP5726776B2 (ja) | シミュレータのソフトリプレース装置、方法、及びプログラム | |
JP5539921B2 (ja) | プログラム開発ツール | |
JPH11224211A (ja) | ソフトウェア検査支援装置 | |
JP5907857B2 (ja) | ロジック図面及び試験テーブル作成装置 | |
WO2016103229A1 (en) | A method for verifying a safety logic in an industrial process | |
JP5515815B2 (ja) | 検証装置及び検証プログラム | |
JP2016126700A (ja) | プログラム検証装置、プログラム検証方法及びプログラム検証プログラム | |
WO2017149737A1 (ja) | 高位合成装置、高位合成方法及び高位合成プログラム | |
JP6887407B2 (ja) | 装置、プログラム、プログラム記録媒体、および方法 | |
JP5736588B2 (ja) | ソースコード変換方法及びソースコード変換プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111025 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120926 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121009 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121120 |
|
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: 20130312 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130319 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160329 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5230587 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
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 |