目前我正在为ios离子应用编写Appium脚本,我使用以下方法进行滑动功能。
public void swipeHorizontal(AppiumDriver<MobileElement> driver, double startPercentage, double finalPercentage, int duration) throws Exception {
Dimension size = driver.manage().window().getSize();
int width = (int) (size.width/2);
int startPoint = (int) (size.getHeight()*startPercentage);
int endpoint = (int) (size.getHeight()*finalPercentage);
new TouchAction(driver).press(width,startPoint).waitAction(Duration.ofSeconds(0)).moveTo(width,endpoint).release().perform();
}
&#13;
在上面的方法中按下word,waitAction&amp;移动到切断消息&#34;按(int,int)&#34;已弃用。与waitAction&amp;也是如此。是否可以使用这种弃用的方法,或者我做错了什么?
答案 0 :(得分:1)
每当你看到某些内容被“弃用”时,它意味着虽然它仍然受技术支持,但它只受支持,以便现有(旧版)应用程序将继续运行,并且新的,并且据称更好的东西已取代它,你应该使用新方法。
现在Appium中有一个滑动方法,它使事情变得简单得多。这是我使用滑动的代码:
/**
* This method performs a swipe on an Android element
* @author Bill Hileman
* @param element - an Android element, i.e. an EditView, TextView, etc.
* @param locator - a verbal description of the element for logging purposes
* @param direction - a value of type SwipeElementDirection
* @param duration - time in milliseconds for the swipe to complete
*/
public void swipe(AndroidElement element, String locator, SwipeElementDirection direction, int duration) {
try {
element.swipe(direction, duration);
} catch (NullPointerException | NoSuchElementException e) {
System.err.println("Unable to locate element '" + locator + "'");
fail();
} catch (Exception e) {
System.err.println("Unable to swipe " + direction.toString() + " element '" + locator + "'");
e.printStackTrace();
fail();
}
}