appium自动化测试,实例分享

appium自动化测试,实例分享。

本篇讲述的是考研帮.apk的登录功能的自动化脚本开发。
三个步骤:
1、元素定位
【这里粘贴了部分元素定位,以作示例】
点击同意(条款):
com.tal.kaoyan:id/tip_commit

点击跳过:
com.tal.kaoyan:id/tv_skip

登录界面,点击密码登录
com.tal.kaoyan:id/login_code_touname

点击用户名/邮箱输入框,并传参
com.tal.kaoyan:id/login_email_edittext

点击密码输入框,并传参
com.tal.kaoyan:id/login_password_edittext

点击登录
com.tal.kaoyan:id/login_login_btn

2、我们把capability配置文件封装在capability20201106.py,以便业务脚本appium20201106-01.py调用;

from appium import webdriver
import time
def capability_config():
    desired_caps = {
        "platformName": "Android",
        "deviceName": "127.0.0.1:52001",
        "platforVersion": "5.1.1",
        "app": r"F:\1python\kaoyanbang_3.7.4.297.apk",
        "appPackage": "com.tal.kaoyan",
        "appActivity": "com.tal.kaoyan.ui.activity.SplashActivity",
        "unicodekeyboard": "True",  # 解决中文编码问题
        "resetkeybodar": "True",  # 输入法守护神
        # "noReset": "true"
        "noReset": "false"
    }
    # driver = webdriver.Remote("http://127.0.0.1:4444/wd/hub", desired_caps)
    driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps)
    driver.implicitly_wait(5)  # 隐式等待
    return driver

#capability_config()

3、appium20201106-01.py是业务脚本;我们在这个py文件里编写考研帮apk登录的代码

from appium import webdriver
from find_element20201106.capability20201106 import capability_config
import time
from selenium.common.exceptions import NoSuchElementException

# # 点击“暂不使用”用户信息保护及隐私条款
# el1 = driver.find_element_by_id("com.tal.kaoyan:id/tip_cancle")
# el1.click()
driver = capability_config()
print("即将开始旅程...")
# time.sleep(120)
# 点击“同意”条款
def check_tk():
    print("检查是否有同意条款的元素")
    try:
        tiaokuan = driver.find_element_by_id("com.tal.kaoyan:id/tip_commit")
    except NoSuchElementException:
        print("检查没有同意条款的元素,正常跳过")
    else:
        print("检查到同意条款的元素,即将点击该元素.....")
        tiaokuan.click()
driver.implicitly_wait(30)

def check_skip():
    print("检查是否有升级的元素")
    try:
       r_skip = driver.find_element_by_id("com.tal.kaoyan:id/tv_skip")
    except NoSuchElementException:
        print("无跳过元素")
    else:
        print("即将点击跳过按钮")
        r_skip.click()

driver.implicitly_wait(30)
def login():
    name_login = driver.find_element_by_id("com.tal.kaoyan:id/login_code_touname")
    name_login.click()

    name_input = driver.find_element_by_id("com.tal.kaoyan:id/login_email_edittext")
    name_input.clear()
    name_input.send_keys("username")

    passwd_input = driver.find_element_by_id("com.tal.kaoyan:id/login_password_edittext")
    passwd_input.clear()
    passwd_input.send_keys("passwd")

    login_btn = driver.find_element_by_id("com.tal.kaoyan:id/login_login_btn")
    login_btn.click()
    print("用户名或密码错误,请重新输入.....游戏结束")
    driver.close_app()
    print("app已成功关闭")
# print("即将输入用户名")
# el1 = driver.find_element_by_id("com.tal.kaoyan:id/kylogin_phone_input_phonenum")
# el1.send_keys("18888888888")
# print("即将输入验证码")
# el2 = driver.find_element_by_id("com.tal.kaoyan:id/kylogin_phone_input_code")
# el2.send_keys("1234")
check_tk()
check_skip()
login()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值