Press key (FR)
Perfecto Command
mobile:presskey
Purpose
Clicks a single key or a sequence of special device keys (either control or keyboard). You can hover over the device keys to identify them and then enter the Keys parameter according to the required syntax.
Common keys include: LEFT, RIGHT, UP, DOWN, ENTER, BACK, MENU, VOL_UP, VOL_DOWN, CAMERA, CLEAR
The Presskey
command always presses the keyboard keys according to the default layout configuration.
To press on Enter/Submit/Search, as the Keys parameter value, enter the following (supported on Android and iOS):
- KEYBOARD_GO
- KEYBOARD_SEARCH
- KEYBOARD_SEND
- KEYBOARD_NEXT
- KEYBOARD_DONE
- KEYBOARD_PREVIOUS
- KEYBOARD_ENTER
- KEYBOARD_SUBMIT
To activate Siri on devices running 10.3 or later and configured for the XCUITest Framework, use the value LONGHOME.
Parameters
Name | Type | Possible Values | Description |
---|---|---|---|
keySequence |
String |
ENTER | |
(Required) The physical device keys to press. It is possible to select a sequence of comma separated keys. To define a long key press, use a colon follow by the time in milliseconds. Example: END:3000
To embed a wait as part of the sequence, use WAIT= followed by the time in milliseconds.
Example: WAIT=2000 For multiple key presses, use an asterisk. Example: 3*ENTER This is the same as: ENTER,ENTER,ENTER Example: ENTER,WAIT=2000,2*DOWN,ENTER:3000 For iOS, the only supported values are HOME and LONGHOME. |
keypad |
String |
|
Specify the logical name of the virtual keypad to be used. A virtual keypad is defined as the keypad popping up to the user when inputs are required.
|
Return Value
None
Exceptions
None
Examples
Java sample
Map<String, Object> params = new HashMap<>();
params.put("keySequence", "BACK");
driver.executeScript("mobile:presskey", params);
JavaScript sample
var params = {
"keySequence":"ENTER" }
browser.executeScript('mobile:presskey', params);
To activate Siri
Map<String, Object> params = new HashMap<>();
params.put("keySequence", "LONGHOME");
driver.executeScript("mobile:presskey", params);
C# sample
Dictionary<String, Object> pars = new Dictionary<String, Object>();
pars.Add("keySequence", "BACK");
driver.ExecuteScript("mobile:presskey", pars);