zoukankan      html  css  js  c++  java
  • 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页面广告,程序会运行失败。
    You don't start over,Every step you take is forever.
  • 相关阅读:
    052_from表单的两种请求方式
    051_ajax的两种请求方式与传递流
    050_SpringMVC配置文件解析器
    049_文件下载为什么只能使用同步请求?
    048_io流
    048_get与url的编码问题
    062_什么是http协议?什么又是三次握手?
    020_全选功能无法出现统一协调时
    064_js中function怎么才能有返回值呢?
    Kali单用户模式下重置登录口令教程
  • 原文地址:https://www.cnblogs.com/softerware/p/10917396.html
Copyright © 2011-2022 走看看