python+appium自动化启动APP

听说自动化测试很厉害,所以我自己也是尝试搭建了环境,这里主要是记录APP启动操作,具体代码如下(这里以智联招聘做了一下练习):

此程序实现的是,登录智联成功后并退出。

import time
from appium import webdriver


# 设置appium的配置并启动Appium
caps = {}
caps['platformName'] = 'Android'    # 手机类型
caps["app"] = "\\Appium\\apk\\com.zhaopin.social_8006.apk"    # apk存放的路径,注意路径中的单斜杠需要换成双斜杠
caps['deviceName'] = '68U5T17A17xxxxx'   # 使用的手机或模拟器类型
caps['appPackage'] = 'com.zhaopin.social' # app的apk包名
caps['com.zhaopin.social.SplashActivity'] # apk的launcherActivity
caps['noReset'] = 'true' # 启动APP不要清除原来的数据(防止有广告或者异常弹窗)
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', caps) # 调用appium的驱动
time.sleep(10) # 通过appium将app启动后等待3秒,方便元素加载完成
# 程序运行到这里时APP启动已经完成,后续是进行操作的过程
driver.find_element_by_id("com.zhaopin.social:id/startpage_top").clike()
driver.find_element_by_id("com.zhaopin.social:id/pwToPwdLogin").click()
driver.find_element_by_id("com.zhaopin.social:id/ppEtAccount").send_keys("登录用户名")
driver.find_element_by_id("com.zhaopin.social:id/pplEtPwd").send_keys("登录用户密码")
driver.find_element_by_id("com.zhaopin.social:id/pOkBtn").click()
driver.find_element_by_id("com.zhaopin.social:id/ivSocailMine").click()
driver.swipe(300, 800, 300, 100, 200)
driver.find_element_by_id("com.zhaopin.social:id/my_setting").click()
driver.swipe(300, 800, 300, 100, 200)
driver.find_element_by_id("com.zhaopin.social:id/button1").click()
# 退出程序
driver.quit()

 此程序需要注意的事项:

   1.如果是Android手机,下面这两个参数不需要配置,直接注释掉,否则可能会出现appium启动失败的情况。 

  caps['appPackage'] = 'com.zhaopin.social' # app的apk包名

caps['com.zhaopin.social.SplashActivity']   # apk的launcherActivity

   2.需要配置一下下面这个参数

  caps['noReset'] = 'true'

如果不配置这个参数,appium启动的时候默认清除APP原有的参数,你会看到广告,甚至一些h5页面广告,程序会运行失败。

猜你喜欢

转载自www.cnblogs.com/softerware/p/10917396.html