appium+python完成app自动化

adb命令:

1. 进入设备的shell命令:adb -s 127.0.0.1:5555 shell

adb -s emulator-5554 shell

2. 获取当前设备打开的应用信息,包名称及活动页名称:dumpsys activity | grep mFocusedActivity

如果获取不到就用:adb shell dumpsys activity activities | findstr mResumedActivity

如果还是获取不到就用:adb shell dumpsys activity | findstr "ResumedActivity"

配置:

这里app使用的是蜻蜓FM+安卓7.1.2

{
  "platformName": "Android",
  "appium:platformVersion": "7.1.2",
  "appium:deviceName": "emulator-5554”",
  "appium:appPackage": "fm.qingting.qtradio",
  "appium:appActivity": "fm.qingting.qtradio.QTRadioActivity",
  "appium:automationName": "UiAutomator2"
}

app米游社+安卓9

{
  "platformName": "Android",
  "appium:platformVersion": "9",
  "appium:deviceName": "emulator-5554",
  "appium:appPackage": "com.mihoyo.hyperion",
  "appium:appActivity": "com.mihoyo.hyperion.main.HyperionMainActivity",
  "appium:automationName": "UiAutomator2"
}

附完整代码

#!/usr/bin/python
# -*- coding: UTF-8 -*-

# 米游社自动化登录
# 场景:未登录过app,首次打开,完成自动登录 ———— down

import time
from appium import webdriver
from appium.options.common.base import AppiumOptions
from appium.webdriver.common.appiumby import AppiumBy
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as ECS




# 配置appium通用项

options = AppiumOptions()
options.load_capabilities({
  "platformName": "Android",
  "appium:platformVersion": "9",
  "appium:deviceName": "emulator-5554",
  "appium:appPackage": "com.mihoyo.hyperion",
  "appium:appActivity": "com.mihoyo.hyperion.main.HyperionMainActivity",
  "appium:automationName": "UiAutomator2",
  'appium:disableIdLocatorAutocompletion':"true"
})

dr = webdriver.Remote(command_executor='http://127.0.0.1:4723/wd/hub', options=options)

# 点击"选好了"
dr.find_element(AppiumBy.ID,'com.mihoyo.hyperion:id/initChannelLayout').click()

time.sleep(1)

# 点击我知道了
# dr.find_element(By.XPATH,'//*[text() = "我知道了"]')
dr.find_element(AppiumBy.ID,'com.mihoyo.hyperion:id/tv_dialog_i_know').click()

time.sleep(1)

# 点击我的
dr.find_element(By.XPATH,"//*[@resource-id = 'com.mihoyo.hyperion:id/mHomeTabRadioBtnIv' and @bounds = '[924,1785][1014,1875]']").click()

time.sleep(1)

# 显示等待
WebDriverWait(dr,10).until(ECS.presence_of_element_located((By.ID,"com.mihoyo.hyperion:id/phone_login_edit_number")))

# 点击手机号输入框
phone = dr.find_element(By.ID,"com.mihoyo.hyperion:id/phone_login_edit_number")
phone.click()

# 输入手机号
phone.send_keys('17835757162')
time.sleep(1)
# 勾选同意并阅读
dr.find_element(By.ID,"com.mihoyo.hyperion:id/phone_login_iv_agree_check").click()
time.sleep(1)
# 点击获取验证码
dr.find_element(By.ID,"com.mihoyo.hyperion:id/phone_login_btn_captcha").click()
time.sleep(3)

dr.quit()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值