自动化:利用Appnium实现自动化APP用户登录。

一.准备条件:
实现逻辑:Test Script ——>Appnium server——>UI Automator(adb,etc,苹果XCTest)——>Device
1.安装appium python client包 pip install Appium-Python-Client(Appnium库依赖selenium库,因此会自动安装selenium)
2.安装appnium server(基于js开发的)——Appnium Desktop
3.安装Android SDK(Appnium Server 依赖Android SDK)——Android Studio(Android应用的开发环境) 注 意:设置adb所在路径为环境变量,设置SDK目录为系统环境变量,名称为ANDROID_HOME
4.安装JDK,以备查看界面元素所需,设置SDK目录为系统环境变量,名称为JAVA_HOME
5.连接真实设备,进入开发者模式,打开usb调试
6.在cmd下输入adb devices -l 确认设备已连接
7.准备测试app应用,运行appnium server,启动被测的app运行环境(测试app以开发者头条为例)

二.代码:

from appium import webdriver
import time,traceback


desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '8'
desired_caps['deviceName'] = 'test'
desired_caps['app'] = "D:\Program Files\\toutiao.apk"
#在cmd下到Android sdk build-tools\30.0.0目录下查看:
#aapt.exe dump badging "D:\Program Files\toutiao.apk" | findstr package
#aapt.exe dump badging "D:\Program Files\toutiao.apk" | findstr activity
desired_caps['appPackage'] = 'io.manong.developerdaily'
desired_caps['appActivity'] = 'io.toutiao.android.ui.activity.LaunchActivity'
desired_caps['unicodeKeyboard'] = True
desired_caps['noReset'] = True
desired_caps['newCommandTimeout'] = 6000

#启动Remote RPC(Remote Procedure Call Protocol)
driver = webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)

try:
    driver.implicitly_wait(10)
    driver.find_element_by_id('io.manong.developerdaily:id/tab_bar_plus').click()
    time.sleep(1)
    driver.find_element_by_id('io.manong.developerdaily:id/btn_email').click()
    time.sleep(1)
    #定位用户名,密码输入登录信息
    user = driver.find_element_by_id('io.manong.developerdaily:id/edt_user')
    user.send_keys('用户名')
    pwd = driver.find_element_by_id('io.manong.developerdaily:id/edt_password')
    pwd.send_keys('密码')
    time.sleep(2)
    #定位登录,执行登录操作
    button = driver.find_element_by_id('io.manong.developerdaily:id/btn_login')
    button.click()
except:
    print(traceback.format_exc())

input('**** Press to quit ****')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值