我正在使用appium进行自动化测试

我正在使用appium进行自动化测试,appium,Appium,如何在IOS中移动seekbar 我正在使用Appium进行自动化测试 我在上图中用红色标记了该WebElement 我正在为那个Webelement使用Xpath 我正在使用下面的函数 WebElement sliderMove = MobileUtils.getMobElement(fieldObjects, testCase, "sleepBrightnessSliderBar"); int xAxisStartPoint = sliderMove.getLocation().getX()

如何在IOS中移动seekbar 我正在使用Appium进行自动化测试

我在上图中用红色标记了该WebElement 我正在为那个Webelement使用Xpath 我正在使用下面的函数

WebElement sliderMove = MobileUtils.getMobElement(fieldObjects, testCase, "sleepBrightnessSliderBar");
int xAxisStartPoint = sliderMove.getLocation().getX();
int xAxisEndPoint = xAxisStartPoint + sliderMove.getSize().getWidth();
int yAxis = sliderMove.getLocation().getY();

TouchAction act = new TouchAction(testCase.getDriver());
TouchAction sliderChk = act.longPress(xAxisStartPoint,yAxis).moveTo(xAxisEndPoint-1,yAxis).release().perform();
sliderChk的值不为空,但不会将滑块移动到任何位置 价值 XaxiStartPoint=68 XaxiEndpoint=307 yAxis=160 seekbar只能移动10% 有五个插槽,即0%10%20%30%40%50% 如果当前值为10%,则我必须仅移动10%,即移动到20%
如何将seekbar控制到特定位置,如果它正在移动,滑块上的值根据应用介于0到1之间。因此,您必须按照以下方式编写代码

driver.findElementByClassName("<SliderClassName>").sendKeys("0.6");
driver.findElementByClassName(“”).sendKeys(“0.6”);

上面的代码将搜索栏上的滑块位置移动到60%。

我认为在IOS中findElementByClassName不存在。它出现在Android中。让我来分享一张图片。点击下面的链接以获得滑动条的屏幕截图。如果看到IOS的属性,则不存在类属性。那么如何移动滑块呢?我正在为IOS使用xpath,还有uses name属性,但它并没有移动到特定的位置。如果将驱动程序初始化为AppiumDriver driver=new IOSDriver(“URL”,caps),则findElementByClassName可用;我相信您使用的是webDriver而不是AppiumDriver。这不是问题。如果您有XPath,那么XPath或name将使用name。只需将代码中的类名替换为Xpath/name.driver.findElement(By.name(“”)).sendKeys(“0.6”);或driver.findelelement(By.XPath(“”).sendKeys(“.0”);AppiumDriver driver=testCase.getDriver();driver.findelementbypath(“sleepBrightnessSliderBar”).sendKeys(“0.6”);我已经使用上面的代码行通过XPath和byName移动滑块,但它给了我解析器错误