我正在将longpress()用于apium中的Web元素,并且正在使用ApiumDriver。 下面是代码和错误:
TouchAction ac = new TouchAction(driver);
ac.longPress(((LongPressOptions)sm).perform()。release();
其中sm是我的网络元素,而错误如下:
无法将io.appium.java_client.android.AndroidElement强制转换为io.appium.java_client.touch.LongPressOptions
答案 0 :(得分:1)
在longPress
方法内,您必须使用AndroidElement
传递ElementOption
import static io.appium.java_client.touch.offset.ElementOption.element;
import static io.appium.java_client.touch.LongPressOptions.longPressOptions;
import io.appium.java_client.TouchAction;
WebElement someElement =
driver.findElement(By.id("someID"));
// WAY 1
TouchAction ac=new TouchAction(driver);
ac.longPress(element(someElement)).perform().release();
// WAY 2
TouchAction dragNDrop = new TouchAction(driver)
.longPress(longPressOptions()
.withElement(element(someElement))
.withDuration(ofSeconds(2)))
.perform().release();