matlab.unittest.TestSuite クラス
名前空間: matlab.unittest
実行するテストをグループ化する基本的なインターフェイス
説明
この matlab.unittest.TestSuite クラスは、テスト フレームワークのテストをグループ化するために使用される基本的なインターフェイスです。テスト ランナーは TestSuite オブジェクトの配列を処理します。
作成
TestSuite クラスの静的メソッドを使用して TestSuite 配列を作成します。また、関数 testsuite を使用してテスト スイートを作成することもできます。
メソッド
matlab.unittest.TestSuite.fromClass | テスト クラスからテスト スイートを作成する |
matlab.unittest.TestSuite.fromFile | テスト ファイルからテスト スイートを作成する |
matlab.unittest.TestSuite.fromFolder | フォルダー内のテストからテスト スイートを作成する |
matlab.unittest.TestSuite.fromMethod | 単一のテスト メソッドからテスト スイートを作成する |
matlab.unittest.TestSuite.fromName | 単一のテスト名からテスト スイートを作成する |
matlab.unittest.TestSuite.fromNamespace | Create test suite from tests in namespace |
matlab.unittest.TestSuite.fromProject | プロジェクト内のテストからテスト スイートを作成する |
matlab.unittest.TestSuite.fromRequirements (MATLAB Test) | Create test suite from requirements |
run | 既定のテスト ランナーを使用してテスト スイートを実行する |
selectIf | 条件を満たすテスト スイート要素を選択する |
sortByFixtures | 共有フィクスチャに基づくテスト スイートの並べ替え |
例
さまざまなテスト スイートを作成してから、スイートを連結します。
現在のフォルダー内の eyeTest.m という名前のファイルに、関数 eye をテストする関数ベースのテストを作成します。
function tests = eyeTest tests = functiontests(localfunctions); end function doubleClassTest(testCase) actual = eye; verifyClass(testCase,actual,"double") end function singleClassTest(testCase) actual = eye("single"); verifyClass(testCase,actual,"single") end function uint16ClassTest(testCase) actual = eye("uint16"); verifyClass(testCase,actual,"uint16") end function sizeTest(testCase) expected = [7 13]; actual = eye(expected); verifySize(testCase,actual,expected) end function valueTest(testCase) actual = eye(42); verifyEqual(testCase,unique(diag(actual)),1) % Diagonal values must be 1 verifyEqual(testCase,unique(triu(actual,1)),0) % Upper triangular values must be 0 verifyEqual(testCase,unique(tril(actual,-1)),0) % Lower triangular values must be 0 end
現在のフォルダー内の ZerosTest.m という名前の別のファイルに、関数 zeros をテストするクラスベースのテストを作成します。
classdef ZerosTest < matlab.unittest.TestCase properties (TestParameter) type = {'single','double','uint16'}; size = struct("s2d",[3 3],"s3d",[2 5 4]); end methods (Test) function testClass(testCase,size,type) testCase.verifyClass(zeros(size,type),type) end function testSize(testCase,size) testCase.verifySize(zeros(size),size) end function testDefaultClass(testCase) testCase.verifyClass(zeros,"double") end function testDefaultSize(testCase) testCase.verifySize(zeros,[1 1]) end function testDefaultValue(testCase) testCase.verifyEqual(zeros,0) end end end
関数ベースのテスト ファイルからテスト スイートを作成します。
import matlab.unittest.TestSuite suite1 = TestSuite.fromFile("eyeTest.m");
ZerosTest テストクラスから、パラメーター化されたテストのみを含むテスト スイートを作成します。
suite2 = TestSuite.fromClass(?ZerosTest,"ParameterProperty","*");
テスト スイートを連結して、結果のスイートを実行します。すべてのテストがパスします。
fullSuite = [suite1 suite2]; results = run(fullSuite);
Running eyeTest ..... Done eyeTest __________ Running ZerosTest ........ Done ZerosTest __________
バージョン履歴
R2013a で導入matlab.unittest.TestSuite.fromPackage メソッドの名前が matlab.unittest.TestSuite.fromNamespace に変更されました。このメソッドの動作は同じままで、コード内の既存の matlab.unittest.TestSuite.fromPackage のインスタンスは引き続き想定どおりに機能します。matlab.unittest.TestSuite.fromPackage への既存の参照のサポートを削除する予定はありません。
matlab.unittest.TestSuite クラスには、要件を検証するテストからテスト スイートを作成できる新しい静的メソッド matlab.unittest.TestSuite.fromRequirements があります。このメソッドを使用するには、MATLAB® Test™ および Requirements Toolbox™ がインストールされている必要があります。
matlab.unittest.TestSuite クラスには、MATLAB プロジェクトのテスト ファイルからテスト スイートを作成できる新しい静的メソッド matlab.unittest.TestSuite.fromProject があります。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)