このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
matlab.unittest.TestSuite クラス
パッケージ: matlab.unittest
実行するテストをグループ化する基本的なインターフェイス
説明
この matlab.unittest.TestSuite
クラスは、テスト フレームワークのテストをグループ化するために使用される基本的なインターフェイスです。テスト ランナーは TestSuite
オブジェクトの配列を処理します。
作成
TestSuite
クラスの静的メソッドを使用して TestSuite
配列を作成します。また、関数 testsuite
を使用してテスト スイートを作成することもできます。
メソッド
パブリック メソッド
matlab.unittest.TestSuite.fromClass | TestCase クラスからの配列 TestSuite の作成 |
matlab.unittest.TestSuite.fromFile | テスト ファイルからの配列 TestSuite の作成 |
matlab.unittest.TestSuite.fromFolder | フォルダー内のテストから配列 TestSuite を作成 |
matlab.unittest.TestSuite.fromMethod | 単一のテスト メソッドから配列 TestSuite を作成 |
matlab.unittest.TestSuite.fromName | 単一のテスト名から Test オブジェクトを作成 |
matlab.unittest.TestSuite.fromPackage | パッケージ内のテストから配列 TestSuite を作成 |
matlab.unittest.TestSuite.fromProject | プロジェクト内のテストから配列 TestSuite を作成 |
matlab.unittest.TestSuite.fromRequirements (MATLAB Test) | Create test suite from requirements |
run | テキスト出力用に設定された TestRunner オブジェクトを使用して配列 TestSuite を実行 |
selectIf | 条件を満たす TestSuite 配列要素を選択 |
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 で導入R2023a: 要件を検証するテストからのテスト スイートの作成
matlab.unittest.TestSuite
クラスには、要件を検証するテストからテスト スイートを作成できる新しい静的メソッド matlab.unittest.TestSuite.fromRequirements
があります。このメソッドを使用するには、MATLAB® Test™ および Requirements Toolbox™ がインストールされている必要があります。
R2019a: MATLAB プロジェクト内のテストからのテスト スイートの作成
matlab.unittest.TestSuite
クラスには、MATLAB プロジェクトのテスト ファイルからテスト スイートを作成できる新しい静的メソッド matlab.unittest.TestSuite.fromProject
があります。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)