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

サポートされるコンポーネント一般的な作成関数
ボタン グループuibuttongroup
チェック ボックスuicheckbox
離散型ノブuiknob
ドロップ ダウンuidropdown
ノブuiknob
リスト ボックスuilistbox
ラジオ ボタンuiradiobutton
スライダーuislider
状態ボタンuibutton
スイッチ (ロッカー、スライダー、トグル)uiswitch
タブ グループuitabgroup
トグル ボタンuitogglebutton
トグル ツールuitoggletool

選択する UI コンポーネントのアイテム。option のデータ型は、テストするコンポーネントの型によって異なります。たとえば、comp がスイッチの場合、option はスイッチの Items プロパティからのテキストまたは数値になります。comp がチェック ボックスまたはトグル ツールの場合、option は論理値になります。

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

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

サポートされるコンポーネント一般的な作成関数
タブuitab
ツリー ノードuitreenode

すべて展開する

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

knob = uiknob('discrete');

A figure with a discrete knob. The knob value is 'Off'.

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

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

A figure with a discrete knob. The knob value is 'High'.

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

knob.Items
ans =

  1×4 cell array

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

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

tc.choose(knob,2)

A figure with a discrete knob. The knob value is 'Low'.

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

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

A figure with a list box that has four items. Item 1 is chosen.

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

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

A figure with a list box that has four items. Items 1 through 3 are chosen.

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

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

A figure with a list box that has four items. Items 1 and 3 are chosen.

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

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.

互換性についての考慮事項

すべて展開する

R2020b での動作変更

R2018a で導入