【发布时间】:2016-03-16 01:09:24
【问题描述】:
在 Android 中,我需要在我的应用程序中拖动一个对象并在仍持有该对象时截取屏幕截图。
我知道有两种使用触摸动作的方法(我什至没有考虑更高级别的方法,例如 swipe(),因为它们让我对触摸动作的控制少得多):
new TouchAction(driver).press(element).moveTo(x,y).release().perform();
和
driver.performTouchAction(new TouchAction(driver).press(element).moveTo(x,y).release());
当我尝试将我的触摸动作分成两部分,并在其间插入屏幕截图时,如下代码所示:
new TouchAction(driver)
.press(x,y)
.moveTo(newX,newY)
.perform();
takeScreenshot(); // My own implementation for readability
new TouchAction(driver)
.release()
.perform();
我收到以下错误:
org.openqa.selenium.WebDriverException: ERROR running Appium command: Cannot read property 'x' of null
Command duration or timeout: 14 milliseconds
程序在第二次触摸动作时失败,即截图成功,但我以这种方式抓取后无法释放对象。
有什么想法吗?
【问题讨论】:
标签: android automation screenshot appium