无法使用appium和java单击日期选择器按钮更改日期

fhity93d  于 2023-05-21  发布在  Java
关注(0)|答案(3)|浏览(141)

我无法单击日期选择器上的月份、日期、年份、hh、mm按钮来更改值。但是使用getText方法我可以读取按钮的名称。
List allButtons = driver.findElements(By.className(“android.widget.Button”)); System.out.println(“上一个日期是“+allButtons.get(0).getText()); get. println();
Java代码和appium没有显示任何错误,testng测试用例通过。无法使用appium和java x1c 0d1x单击日期选择器按钮更改日期

67up9zun

67up9zun1#

我建议你使用滑动方法来帮助你滚动日历日期。
例如:
首先单击日历图标,然后使用以下代码:

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日,例如,您可以根据需要更改。告诉我这样行不行。

krcsximq

krcsximq2#

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);
t1qtbnec

t1qtbnec3#

您可以单击并选择您正在尝试的设备中的日期。您需要使用发送键。试试下面的代码:

driver.findElement(By.xpath("//UIAPickerWheel[1]")).sendKeys(Dec);
driver.findElement(By.xpath("//UIAPickerWheel[2]")).sendKeys(04);
driver.findElement(By.xpath("//UIAPickerWheel[3]")).sendKeys(2015);

相关问题