pra*_*k03 7 selenium automation android android-testing appium
如何在Android自动化测试中从Appium中的软键盘发送/按Enter键?
我尝试了几个选项,但它们都没有工作 - 而不是按键,它们正在清除在文本区域中输入的文本.下面是代码(使用JAVA语言):
String app_package_name = "abc.xyz.android";
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("deviceName", "Nexus_5X_API_23");
capabilities.setCapability("platformVersion", "6.0");
capabilities.setCapability("appPackage", app_package_name);
capabilities.setCapability("appActivity", app_package_name + ".activity.StartupActivity_");
String url = "http://127.0.0.1:4723/wd/hub";
AndroidDriver driver = new AndroidDriver(new URL(url), capabilities);
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
By password = By.id(app_package_name_with_id + "et_password");
WebElement enterPassword = driver.findElement(password);
enterPassword.click();
driver.getKeyboard().sendKeys("12345");
driver.getKeyboard().sendKeys(Keys.ENTER); // THIS IS NOT WORKING.
driver.getKeyboard().sendKeys(Keys.RETURN); // THIS IS ALSO NOT WORKING.
driver.pressKeyCode(AndroidKeyCode.ENTER); // THIS IS ALSO NOT WORKING.
driver.pressKeyCode(AndroidKeyCode.KEYCODE_NUMPAD_ENTER); // SAME HERE.
enterPassword.sendKeys(Keys.ENTER); // SAME HERE.
Run Code Online (Sandbox Code Playgroud)
如果有人能帮助我实现它吗?
小智 6
你可以尝试一下,它适用于所有设备
driver.executeScript("mobile:performEditorAction", ImmutableMap.of("action", "done"));
Run Code Online (Sandbox Code Playgroud)
您可以使用机器人类:-
Robot robot;
try {
robot = new Robot();
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
} catch (AWTException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
如果您的测试用例要在后台执行,则不建议这样做。机器人框架将直接进入,而不声明任何内容。
或者您可以尝试下面的代码:-
driver.pressKeyCode(AndroidKeyCode.KEYCODE_NUMPAD_ENTER );
Run Code Online (Sandbox Code Playgroud)
来源:-(还有其他方式按回车键):-
https://discuss.appium.io/t/how-to-click-enter-after-entering-some-text/3136/4
希望它能帮助你:)
| 归档时间: |
|
| 查看次数: |
10417 次 |
| 最近记录: |