Main Content

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

choose

クラス: matlab.uitest.TestCase
パッケージ: matlab.uitest

UI コンポーネントでの選択動作の実行

構文

choose(testcase,comp,option)
choose(testcase,compNoOpts)

説明

choose(testcase,comp,option) は、comp UI コンポーネントの指定された項目で選択動作を実行します。

choose(testcase,compNoOpts) は、タブやツリー ノードなど、追加情報を必要としない UI コンポーネントでの選択動作を実行します。たとえば、特定のタブの選択にはこの構文を使用しますが、タブ グループから特定のタブを選択するには前の構文を使用します。

入力引数

すべて展開する

テスト ケースのインスタンス。matlab.uitest.TestCase オブジェクトとして指定します。

テスト中に選択するコンポーネント。選択動作をサポートする UI コンポーネント オブジェクトとして指定します。選択動作をサポートするコンポーネントには、チェック ボックス、ノブ、スイッチ、ドロップダウン リストが含まれます。

サポートされるコンポーネント一般的な作成関数
ボタン

uiradiobutton

uitogglebutton

チェック ボックス

uicheckbox

ドロップ ダウン

uidropdown

リスト ボックス

uilistbox

スライダー

uislider

状態ボタンuibutton('state')
ボタン グループ

uibuttongroup

タブ グループ

uitabgroup

ノブ、離散型ノブ

uiknob

スイッチ、ロッカー スイッチ、トグル スイッチ

uiswitch

データ型: matlab.ui.container.ButtonGroup | matlab.ui.container.TabGroup | matlab.ui.control.CheckBox | matlab.ui.control.DiscreteKnob | matlab.ui.control.DropDown | matlab.ui.control.Knob | matlab.ui.control.ListBox | matlab.ui.control.RadioButton | matlab.ui.control.RockerSwitch | matlab.ui.control.Slider | matlab.ui.control.StateButton | matlab.ui.control.Switch | matlab.ui.control.ToggleButton | matlab.ui.control.ToggleSwitch

コンポーネントで選択する項目。option のデータ型はテスト対象のコンポーネントのタイプに依存します。たとえば、comp がスイッチの場合、option はスイッチの Items プロパティからのテキストまたは数値になります。comp がチェック ボックスの場合、option は論理値になります。

コンポーネントに Items プロパティがある場合、optionItems 内の要素の値、または Items 内の要素へのインデックスになります。たとえば、既定の離散型ノブでは、option の値として 'Medium' または 3 を使用して 'Medium' を選択できます。

選択するコンポーネント。選択動作をサポートし、追加情報を必要としない UI コンポーネント オブジェクトとして指定します。選択動作をサポートするコンポーネントには、タブやツリー ノードが含まれます。

サポートされるコンポーネント一般的な作成関数
タブ

uitab

ツリー ノード

uitreenode

データ型: matlab.ui.container.Tab | matlab.ui.container.TreeNode

すべて展開する

離散型ノブを作成します。

knob = uiknob('discrete');

対話型のテスト ケースを作成し、ノブの値 'High' を選択します。アニメーション化された青い点でプログラムによる選択動作が示されます。

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.choose(knob,'High')

ノブの Items プロパティの値を表示します。

knob.Items
ans =

  1×4 cell array

    {'Off'}    {'Low'}    {'Medium'}    {'High'}

インデックスでノブの値 'Low' を選択します。ノブが 'High' から 'Low' に切り替わります。

tc.choose(knob,2)

リスト ボックスを作成し、複数のノードを選択できるようにします。

listbox = uilistbox('Multiselect','on')
listbox = 

  ListBox (Item 1) with properties:

              Value: {'Item 1'}
              Items: {'Item 1'  'Item 2'  'Item 3'  'Item 4'}
          ItemsData: []
        Multiselect: 'on'
    ValueChangedFcn: ''
           Position: [100 100 100 74]

  Show all properties

対話型のテスト ケースを作成し、項目 1 ~ 3 を選択します。

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.choose(listbox,1:3)

Items プロパティの値を使用して項目 1 と 3 を選択します。

tc.choose(listbox,{'Item 1','Item 3'})

スライダーを作成します。

s = uislider;

対話型のテスト ケースを作成し、スライダー ボタンの値が 0 であることを確認します。

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.verifyEqual(s.Value,0)
Verification passed.

新しいスライダーの値を選択し、スライダーの値が変わることを確認します。フレームワークでは任意の適合値に対するコンポーネントの操作が模倣されるため、許容誤差を使用してスライダーの実際の値と期待される値を比較するのがベスト プラクティスです。

expVal = 42;
tc.choose(s,expVal)
tc.verifyEqual(s.Value,expVal,'AbsTol',0.1)
Verification passed.

2 つのタブを含む Figure を作成します。

fig = uifigure;
group = uitabgroup(fig);
tab1 = uitab(group,'Title','Tab #1');
tab2 = uitab(group,'Title','Tab #2');

対話型のテスト ケースを作成し、選択されているタブのタイトルに部分文字列 '#1' が含まれていることを確認します。

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.verifySubstring(group.SelectedTab.Title,'#1')
verification passed.

タブ 2 を選択し、タブの選択が変わることを確認します。

tc.choose(group,'Tab #2')
tc.verifyEqual(group.SelectedTab,tab2)
Verification passed.
R2018a で導入