我无法单击日期选择器上的月、日、年、hh、mm 按钮来更改值。但是使用 getText 方法我可以读取按钮的名称。
List allButtons = driver.findElements(By.className("android.widget.Button")); System.out.println("上一个日期是"+allButtons.get(0).getText()); allButtons.get(0).click();
Java 代码和 appium 没有显示任何错误并且 testng 测试用例通过了。 请帮忙 无法单击日期选择器按钮以使用 appium 和 java 更改日期
我建议您使用滑动方法来帮助您滚动日历日期。
例如:
首先点击您的日历图标,然后使用以下代码:
Thread.sleep(3000);
for(int x=0;x<9;x++)
{
// Swipe syntax sould be like this way depending on your needs, you have just need to change points
//driver.swipe(startx, starty, endx, endy, duration);
driver.swipe(450,550,350,500,0);
}
我使用的循环是从 3 月 1 日滚动到 3 月 10 日,例如您可以根据需要进行更改。 告诉我这是否适合你。
driver.findElement(By.xpath("//XCUIElementTypeOther[@name=\"Proposed Insured Information, tab panel\"]/XCUIElementTypeTextField[3]")).click();
List <WebElement> values = (List<WebElement>) driver.findElements(By.xpath("//XCUIElementTypePickerWheel"));
for (int i=0; i<values.size();i++)
`enter code here`{
System.out.println(values.get(i).getText());
}
values.get(0).sendKeys("30");
values.get(0).sendKeys(Keys.TAB);
values.get(1).sendKeys("November");
values.get(1).sendKeys(Keys.TAB);
values.get(2).sendKeys("1995");
values.get(3).sendKeys(Keys.TAB);
您可以按照您尝试的方式单击并选择设备中的日期。您需要使用发送密钥。试试下面的代码:
driver.findElement(By.xpath("//UIAPickerWheel[1]")).sendKeys(Dec);
driver.findElement(By.xpath("//UIAPickerWheel[2]")).sendKeys(04);
driver.findElement(By.xpath("//UIAPickerWheel[3]")).sendKeys(2015);