# -*-coding:utf8-*-
from time import sleep
from appium import webdriver
desired_caps = {}
desired_caps['platformName'] ='Android'
desired_caps['platformVersion'] = '4.1.2'
desired_caps['deviceName'] = '42f6d2145170cfed'
desired_caps['appPackage'] = '****'
desired_caps['appActivity'] = '*****'
#被测试的App在电脑上的位置
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
#4725 4726 4723
sleep(3) #sleep()的作用,当网络时间差,页面加载不出来的时候,需要等待几秒,要不然找不到需要定位的组件,就会报错
driver.find_element_by_android_uiautomator('text("请输入手机号")').send_keys('13000000001') #element_by_android_uiautomator是定位方法,click()是点击方法
sleep(2)
mine=driver.find_elements_by_class_name("android.widget.EditText") #elements_by_class_name是定位方法
mine[1].click()
mine[1].send_keys("123456") #send_keys()自动输入方法
sleep(2)
driver.find_element_by_android_uiautomator('text("登录")').click()
思考:还有很多种定位方法,比如 find_element_by_id() 等,留给你们自己研究喽
更多用法集合大全,参考:https://testerhome.com/topics/3711
解决方案:开启 appium
selenium 和 appium 版本不匹配,把 selenium 从 3.5 降级到 2.53.6 就好了
执行:
pip uninstall selenium
pip install selenium==2.53.6
(注意是 2 个==,中间不要留空格,这里推荐的是 2.53.6 的版本)
第一次运行时可能会遇到这样的 error:No module named appium
之所以会报这样的 error 是因为没有装 client
解决方案:
cd /usr/local/bin
pip3 install Appium-Python-Client