TA的每日心情 | 开心 2019-8-10 21:26 |
---|
签到天数: 2 天 连续签到: 1 天 [LV.1]测试小兵
|
发表于 2018-11-7 19:58:10
|
显示全部楼层
本帖最后由 卡卡罗特 于 2018-11-8 13:02 编辑
我自己操作试了下。可以用xpath顺利执行。(用的机型为小米6,qq为最新版)通常首先考虑用id,如果没有id就用xpath。通过这两种属性基本都能定位并操作对应的办法。
另外为了动态加载等待对象的时间,可以添加个WebDriverWait。比用sleep硬等待时间会更好些。
参考代码如下(部分):
from appium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
#配置
caps = {'platformName': 'Android', 'deviceName': 'XXXX,'appPackage': 'com.tencent.mobileqq', 'appActivity': 'com.tencent.mobileqq.activity.SplashActivity','XXXX':'XXXX'}
#驱动
driver = webdriver.Remote("http://localhost:4723/wd/hub", caps)
wait = WebDriverWait(driver, 30)
#定位对象并调用方法操作
xpath = u'//android.widget.TextView[@content-desc="说说"]'
shuoshuo = wait.until(EC.presence_of_element_located((By.XPATH, xpath)))
shuoshuo.click()
|
|