press

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

Выполните жест нажатия на компоненте пользовательского интерфейса

Описание

пример

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

пример

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

пример

press(testcase,spn,direction) задает, нажать ли или 'вниз' direction кнопка в счетчике spn.

пример

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

пример

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

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

развернуть все

Экземпляр теста в виде matlab.uitest.TestCase объект.

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

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

Местоположение, чтобы нажать в виде координат точки:

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

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

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

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

Пример: [Пи/2 0.5] (Полярные оси)

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

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

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

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

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

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

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

Значение

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

'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