Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

sldv.test

Stateflow チャートと MATLAB Function ブロックのテスト オブジェクティブ関数

説明

テストの生成時、sldv.test(expr)expr を true として指定します。expr には有効な論理式を使用します。

この関数はなにも出力しないため、expr を評価する間接的な副作用があるだけで、親関数には影響を与えません。MATLAB® コマンド ラインからこの関数を実行しても、効果はありません。

コード内に sldv.test テスト オブジェクティブを組み入れるか、オブジェクティブを分離して検証スクリプトに入れます。

[テスト生成] ペインの [テスト オブジェクティブ] オプションは、関数 sldv.test と Test Objective ブロックによって表されるテスト オブジェクティブに適用されます。

すべて折りたたむ

MATLAB Function ブロックを使用して、テスト オブジェクティブとテスト条件を追加します。

sldvdemo_cruise_control モデルを開き、ex_sldvdemo_cruise_control として保存します。

speed 信号から Test Condition ブロックを削除します。Test Condition ブロックの代わりに、この例では、sldv.testsldv.condition を使用します。

ユーザー定義関数ライブラリから、MATLAB Function ブロックを追加します。

  • ブロックに tests という名前を付けます。

  • ブロックを開いて次のコードを追加します。

    function define_tests(speed, target)
    %#codegen
    
    sldv.condition(speed >= 0 && speed <= 100);
    sldv.test(speed > 60 && target > 40 && target < 50);
    sldv.test(speed < 20 && target > 50);
  • [エディター] タブで [保存] をクリックし、エディターを閉じます。

  • このブロックを、speed ブロックの信号と target ブロックの信号に接続します。

変更を ex_sldvdemo_cruise_control モデルに保存します。

テスト ケースを生成するには、[Design Verifier] タブで、[テスト生成] をクリックします。

入力引数

すべて折りたたむ

MATLAB 式。たとえば、x > 0

代替方法

関数 sldv.test を使用する代わりに、Test Objective ブロックをモデルに挿入できます。Test Objective ブロックの代わりに sldv.test を使用すると、What is Test Case Generation?で説明されているとおり、いくつかの利点があります。

R2009b で導入