Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

retrieveFrom

クラス: matlab.unittest.plugins.Parallelizable
名前空間: matlab.unittest.plugins

テスト グループに対して格納されたデータの取得

R2019b 以降

説明

data = retrieveFrom(plugin,communicationBuffer) は、plugin によって収集された data をバッファー communicationBuffer から取得します。データは、テスト グループの実行中に、MATLAB® ワーカーによってバッファーに格納されなければなりません。

テストを並列実行するために、テスト フレームワークは元の TestSuite 配列を個別のグループに分割し、それらを現在の並列プール上のワーカーに割り当てます (Parallel Computing Toolbox™ が必要)。MATLAB クライアントがワーカーからデータを取得できるようにするには、TestRunnerPluginreportFinalizedSuite メソッドのスコープ内で retrieveFrom を呼び出します。ワーカーは、runTestSuite のスコープ内で storeIn メソッドを呼び出してデータを格納しなければなりません。

入力引数

すべて展開する

プラグイン オブジェクト。matlab.unittest.plugins.Parallelizable インターフェイスをサブクラス化するプラグイン クラスのインスタンスとして指定します。

クライアントがデータを取得するバッファー。matlab.unittest.plugins.plugindata.CommunicationBuffer クラスのインスタンスとして指定します。communicationBuffer は、reportFinalizedSuite メソッドに渡される matlab.unittest.plugins.plugindata.FinalizedSuitePluginData インスタンスのプロパティを表します。

出力引数

すべて展開する

バッファーから取得したデータ。スカラーまたはオブジェクトの配列として返されます。

属性

Accessprotected
Sealedtrue

メソッドの属性の詳細については、メソッドの属性を参照してください。

すべて展開する

プラグイン クラスの retrieveFrom メソッドを呼び出し、確定した TestSuite 配列内の要素数を取得します。

classdef ExamplePlugin < ...
        matlab.unittest.plugins.TestRunnerPlugin & ...
        matlab.unittest.plugins.Parallelizable
    
    methods (Access = protected)
        function runTestSuite(plugin, pluginData) 
            
            % Display and store running TestSuite size
            suiteSize = numel(pluginData.TestSuite);
            fprintf('### Running %d tests\n', suiteSize)
            plugin.storeIn(pluginData.CommunicationBuffer, suiteSize);

            runTestSuite@matlab.unittest.plugins.TestRunnerPlugin(...
                plugin, pluginData);
        end
        
        function reportFinalizedSuite(plugin, pluginData)
            
            % Retrieve and display finalized TestSuite size
            suiteSize = plugin.retrieveFrom(pluginData.CommunicationBuffer);
            fprintf('### Finished running %d tests\n', suiteSize)

            reportFinalizedSuite@matlab.unittest.plugins.TestRunnerPlugin(...
                plugin, pluginData);
        end
    end
    
end

バージョン履歴

R2019b で導入