press

Класс: testCase
Пакет: matlab.uitest

Выполните нажатие жеста на компоненте UI

Описание

пример

press(testcase,comp) выполняет нажатие жеста на компоненте пользовательского интерфейса comp.

пример

press(testcase,comp,location) задает местоположение для нажатия в компоненте. Можно задать расположение только с пятью доступными компонентами: осями, осями пользовательского интерфейса, полярными осями, панелью и фигурой пользовательского интерфейса. Если вы не задаете местоположение, MATLAB® нажимает в центре comp.

пример

press(testcase,spn,direction) определяет, следует ли нажимать клавишу 'up' или 'down' direction кнопка в счетчике spn.

пример

press(testcase,fig,'SelectionType',type) выполняет жест нажатия на фигуру пользовательского интерфейса fig использование типа выбора мыши type.

пример

press(testcase,fig,location,'SelectionType',type) задает местоположение для нажатия в фигуре пользовательского интерфейса с помощью заданного типа выбора мыши.

Входные параметры

расширить все

Образец теста, заданный как matlab.uitest.TestCase объект.

Компонент для нажатия во время теста, заданный как объект компонента пользовательского интерфейса, который поддерживает жест прессы. Компоненты, поддерживающие жесты нажатия, включают изображения, кнопки, флажки, переключатели, меню, оси и рисунки.

Поддерживаемый компонентТипичная функция создания
Осиaxes
Кнопкаuibutton
Флажокuicheckbox
Изображениеuiimage
Менюuimenu
Панельuipanel
Полярные осиpolaraxes
Толкайте инструментuipushtool
Переключательuiradiobutton
Кнопка состоянияuibutton
Переключатель (качалка, ползунок, переключатель)uiswitch
Кнопка-переключательuitogglebutton
Переключение инструментаuitoggletool
UI Axesuiaxes
Фигура пользовательского интерфейсаuifigure

Место для нажатия, заданное как координаты точки:

  • Оси и UI Axes - A 1 на 2 или 1 на 3 числовой массив, содержащий x -, y - и опционально z - координаты.

  • Полярные оси - числовой массив 1 на 2, содержащий θ - и r - координаты.

  • Панель и фигура UI - числовой массив 1 на 2, содержащий x - и y - координаты. Задайте координаты точки, чтобы нажать в пикселях из левого нижнего угла компонента.

Пример: [32.5 13 0.25] (оси UI)

Пример: [pi/2 0,5] (полярные оси)

Пример: [100 200] (фигура пользовательского интерфейса)

Компонент Spinner для нажатия во время теста, заданный как matlab.ui.control.Spinner объект. Компоненты Spinner обычно создаются с помощью uispinner функция.

Направление изменения для счетчика, заданное как 'up' или 'down'. Чтобы увеличить значение счетчика, используйте 'up'. Чтобы уменьшить значение, используйте 'down'.

Типы данных: char | string

Компонент фигуры пользовательского интерфейса для нажатия во время теста с использованием заданного типа выбора мыши, заданного как matlab.ui.Figure объект. Компоненты фигуры пользовательского интерфейса создаются с помощью uifigure функция.

Тип выбора мыши, заданный как 'normal', 'extend', 'alt', или 'open'. Этот вход предоставляет информацию о том, как кнопка мыши нажата на фигуре пользовательского интерфейса. Для получения дополнительной информации см. раздел Свойств фигуры пользовательского интерфейса».

В этой таблице перечислены возможные значения типов выбора и действия, которые приводят к этим значениям.

Значение

Соответствующее действие

'normal'

Нажмите левую кнопку мыши.

'extend'

Любое из следующих:

  • Shift - щелкните левой кнопкой мыши.

  • Нажмите среднюю кнопку мыши.

  • Нажмите на левую и правую кнопки мыши.

'alt'

Одно из следующих:

  • Control - щелкните левой кнопкой мыши.

  • Щелкните правой кнопкой мыши.

'open'

Дважды кликните любую кнопку мыши.

Типы данных: char | string

Примеры

расширить все

Создайте переключатель ползунок.

s = uiswitch('slider');

A figure with a slider switch in the 'Off' state

Создайте интерактивный тест и нажмите на переключатель. Появляется синяя точка, представляющая программный жест нажатия, и затем исчезает в центре переключателя. Переключатель переходит от 'Off' на 'On'.

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.press(s);

A figure with a slider switch in the 'On' state

Создайте оси пользовательского интерфейса и интерактивный образец теста.

ax = uiaxes;
tc = matlab.uitest.TestCase.forInteractiveUse;

Нажмите на центр осей. Появляется синяя точка, представляющая программный нажимной жест, и затем исчезает в центре осей.

tc.press(ax)

Нажмите оси в координатах (0,85, 0,2). Появляется синяя точка, представляющая программный нажимной жест, и затем исчезает в заданных координатах осей.

tc.press(ax,[0.85 0.2])

Создайте кнопку состояния.

b = uibutton('state');

Создайте интерактивный тест и проверьте, что значение кнопки состояния false.

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.verifyFalse(b.Value)
Verification passed.

Нажмите кнопку и проверьте состояние изменения на true. Появляется синяя точка, представляющая программный нажимной жест, и затем исчезает на кнопке.

tc.press(b)
tc.verifyTrue(b.Value)
Verification passed.

Создайте счетчик с начальным значением 42.

s = uispinner('Value',42);
initVal = s.Value;

Создайте интерактивный тест и увеличьте счетчик. Проверьте, что новое значение счетчика является начальным значением плюс значение шага счетчика.

tc = matlab.uitest.TestCase.forInteractiveUse;
tc.press(s,'up')
tc.verifyEqual(s.Value,initVal+s.Step)
Verification passed.

Уменьшите значение счетчика и проверьте, что значение счетчика снова равно начальному значению.

tc.press(s,'down')
tc.verifyEqual(s.Value,initVal)
Verification passed.

Создайте фигуру пользовательского интерфейса и интерактивный образец теста.

f = uifigure;
tc = matlab.uitest.TestCase.forInteractiveUse;

Протестируйте щелчок правой кнопкой мыши в центре фигуры пользовательского интерфейса. Появляется синяя точка, представляющая программный нажимной жест, и затем исчезает в центре рисунка.

tc.press(f,'SelectionType','alt')

Дважды кликните фигуру пользовательского интерфейса в координатах (100, 200). Появляется синяя точка, представляющая программный нажимной жест, и затем исчезает в указанном месте.

tc.press(f,[100 200],'SelectionType','open')
Введенный в R2018a
Для просмотра документации необходимо авторизоваться на сайте