java - 无法找到 Android 日期选择器元素

标签 java android selenium selenium-webdriver appium

我正在使用 Java 中的 Appium 和 Selenium 进行 Android Web 应用程序自动化。当我尝试单击移动元素来选择日期时,显示“NoSuchElementException”。请在下面找到我的代码并让我知道如何处理这个问题。

class openBrowser() {   
public static WebDriver driver;   
public static AppiumDriver<MobileElement> androidDriver;   
@Test   
public static void launchBrowser(){   
desiredCapabalities(...);   
androidDriver = new AndroidDriver<MobileElement>(new 
URL("http://localhost:4723/wd/hub", desiredCapabilities));    
driver = androidDriver;   
}

class pickDate() {    
MobileElement element;
try{    
element = (MobileElement) 
androidDriver.findElementByXPath("//android.view.View[@content-desc='28 May  2017']").click();   
}catch(Exception e) { 
throw e; 
}  
}

设备详细信息:
联想A6000,操作系统版本:5.0.2
日期选择器截图:Date Picker

请给我建议任何解决方案。提前致谢。

最佳答案

不要尝试单击日期输入字段,然后处理日期选择器。您可以更好地直接在日期输入字段中输入日期:

dateInputField.sendKeys("20-08-1985");

关于java - 无法找到 Android 日期选择器元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43798831/

相关文章:

java - 使用 Java PreparedStatement 指示行更新没有变化的最佳方法

java - XMLReader 搜索相对于主应用程序的 DTD 文件而不是 XML 文件

android - registerMediaButtonEventReceiver 替代 setMediaButtonReceiver (PendingIntent mbr) 不工作

python - Selenium ChromeDriver ssl_client_socket_impl.cc(941) 握手失败

python - Selenium driver.get() 抛出异常

java - 无法在弹出的新窗口中访问框架内的网络元素

java - BufferedReader 由 HTTPClient 终止

java - OrmLite 不会在 "where"上使用 "not equals"比较器和空列值带来结果

AndroidJUnitRunner 给出 'java.lang.ClassNotFoundException' 的 Android 概率

c# - 如何使用 Android C# 以编程方式检查 CheckBox?