嗨,通常我可以使用sendkey方法但是对于MobilePhone元素我不能这样,。我试图逐个发送密钥,部分内容或文本等。它没有用。你能帮帮我吗? 我的代码:
List<WebElement> menu22 =driver.findElements(By.className("android.widget.EditText"));
menu22.get(3).click();
((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_6);
((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_5);
((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_7);
((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_6);
((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_6);
((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_5);
((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_7);
((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_6);
The other my codes:
List<String> tel = Arrays.asList("5", "4", "5", "8", "5","3", "4", "5", "8", "5");
for (int i = 0; i < tel.size(); i++) {
menu22.get(3).sendKeys(tel.get(tel.size()-1-i));
driver.hideKeyboard();
}
和其他代码:
menu22.get(3).sendKeys("5458650215"));
答案 0 :(得分:0)
请使用以下功能
capabilities.setCapability(&#34; unicodeKeyboard&#34;,true); capabilities.setCapability(&#34; resetKeyboard&#34;,true);
这应该有助于隐藏键盘,也就是说,在测试执行过程中键盘根本不会出现,软键会代表执行
答案 1 :(得分:0)
移动应用中的某些元素会发生这种情况。要使用驱动程序键盘输入这些元素,如下所示:
List<WebElement> menu22 =driver.findElements(By.className("android.widget.EditText"));
menu22.get(3).click();
driver.getKeyboard().sendKeys("Your Text to be typed");