appium 拖动进度条
方法:找到元素获取元素的坐标获取元素的size百分比拖动进度条代码:java(具体参考GitHub)public void testSeekbar() throws Exception{Thread.sleep(3000);driver.findElementByAndroidUIAutomator("new UiSelector().t...
·
方法:
- 找到元素
- 获取元素的坐标
- 获取元素的size
- 百分比拖动进度条
代码:
- java(具体参考GitHub)
public void testSeekbar() throws Exception{
Thread.sleep(3000);
driver.findElementByAndroidUIAutomator("new UiSelector().text(\"LOG IN\")").click();
driver.findElementByAndroidUIAutomator("new UiSelector().text(\"Slider\")").click();
MobileElement slider =driver.findElementByAccessibilityId("slider");
//精度不是很准确,需自己调,当percent为1时可能不会移动到100%,可以尝试1.5或2
// 拖动100%
moveSeekbar(slider, 1.5);
// 拖动40%
// moveSeekbar(slider, 0.6);
}
public void moveSeekbar(MobileElement element, double percent){
// 获取拖动条的宽
int width = element.getSize().getWidth();
// 获取坐标
int x = element.getLocation().getX();
int y = element.getLocation().getY();
TouchAction action = new TouchAction(driver);
action.press(x,y).moveTo((int)(width*percent),y).release().perform();
}
- python(具体参考GitHub)
def test_seekbar(self):
self.driver.implicitly_wait(3)
self.driver.find_element_by_android_uiautomator("new UiSelector().text(\"LOG IN\")").click()
self.driver.find_element_by_android_uiautomator("new UiSelector().text(\"Slider\")").click()
slider = self.driver.find_element_by_accessibility_id("slider")
self.driver.implicitly_wait(2)
# 移动 100%
# self.move_seekbar(slider, 1.5)
# 移动 40%
self.move_seekbar(slider, 0.4)
def move_seekbar(self, element, percent):
# 精度不是很准确,需自己调,当percent为1时可能不会移动到100%,可以尝试1.5或2
# 获取拖动条的宽
width = element.size.get("width")
# 获取坐标
x = element.location.get("x")
y = element.location.get("y")
self.driver.swipe(x, y, int(width*percent), y, 1000)
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献1条内容
所有评论(0)