3.5
テスト
テスト工程では、製作したアプリケーションS/Wの動作検証を行う。ここでアプリケーションS/Wは、FBが階層的に組み合わされた構造となっている。そのため、下層のFB(基本部FB)の単体テストから始め、上層のFB(応用部FB)へと順に組み合わせテストを行う。
まず、“分岐"FB以下の5つの基本部FBの単体テストを実施後、基本部FBを組み合わせた応用部FBをテストする。
図26に示す“合流"FB以下のテストでは、一度テストを行ったFB(動作検証済みのFB)については、そのFBが再利用されていても、繰返しテストを行う必要はない。したがって、“合流"FB以下の8つの基本部FBのうち、上述の“分岐"FB以下の各FBのテストが既に実施済みである場合、“合流制御"FB及び“ベルトトランスファ"FBの2つの単体テストを実施後、基本部FBを組み合わせた応用部FBをテストすればよい。
こうして、動作検証済みのFBを再利用することは、テスト工数の大幅な削減となることがわかる。
3.5.1
FB単体テストの実施方法
a)テストケースの準備
FBの動作をテストする場合、あらかじめ何をテストするか(これをテストケースと呼ぶ)を明確にせずに実行すると、無駄なテスト及び多くの確認漏れが生じて、確実な品質保証が困難になる。そのため、事前にテストケースを準備することが大切である。このテストケースの作成には、次の情報を元に作成するとよい。
1)FBの制御仕様
2)FBの入力値及び出力値の範囲
1)については、3.3の設計段階によって各FBの制御内容を明確化している。2)についても、3.4.4a)のFBのヘッダコメントの記述によって各変数(入力変数、出力変数及び外部変数)の内容を明確化している。
このほか、必要に応じてFBの内部変数及び実行制御の様子を確認するテストケースも加えるとよい。
b)テストケースによるFB単体テストの実施
a)のテストケースに基づいて、テスト対象のFBを評価する。評価は、実際にPLC実機でプログラムを実行して動作検証を行うことができるが、PLCシミュレータを用いることでPLC実機を用いないで動作検証することもできる。PLC実機を用意する手間を省き、机上によって簡単に評価する場合に便利である。FB単体テストの実施方法について、次に2つの例を示す。
1)暫定プログラムを用意しての単体テストの実施例
ほかのプログラム要素の影響を受けることなくFBを単体テストするために、テスト対象のFBだけを抜き出した次のような簡単な暫定プログラムを作成する。
この暫定プログラムをPLCシミュレータで実行し、FBに模擬入力を与えて、期待される結果が出力されるかモニタリングすることで、a)で用意したテストケースの評価が行いやすくなる。
2)アプリケーションS/Wに組み込んだままの単体テストの実施例
ブレークポイント機能(一時停止機能)またはステップ実行機能を活用することで、テスト対象のFBを抜き出さず、アプリケーションS/Wに組み込んだまま単体テストを実施することができる。次の手順でテスト対象のFBを実際のプログラムに組み込んだまま動作検証を行う。
2.1)テスト対象のFBの手前で一時停止させる。
2.2)FBの入力変数に模擬入力を与える。
2.3)ステップ実行(またはFBの直後で一時停止)させてFBの出力及び内部の振る舞いを確認する。
3.6
ドキュメンテーション
ドキュメンテーションの主な目的は、システムの保守にある。
PLCシステムのS/Wに関する仕様書として、4.2の機能分析の結果をまとめた文書のほかに、プログラムそのものが活用できる。機能単位にモジュール化されたプログラムが可読性が高いプログラミング言語で記述し、更に十分なコメントが加わっているため、仕様書としての情報の量及び質を備えているからである。
(つづく)
【日本電機工業会PLC技術専門委員会プログラミング・ツール分科会の「PLCアプリケーションの開発効率化指針」から転載】