Pycharm+appium+python自动化测试真机

Pycharm+appium+python自动化测试APP(真机)

前提:1、Android sdk 2、jdk环境变量

1、安装pycharm https://www.jetbrains.com/pycharm/download/#section=windows  安装node.js http://nodejs.cn/download/

2、安装appium http://appium.io/

 (注意安装这两个文件

3、打开pycharm --file--setting--project:项目名称--python Interpreter

如果未安装点击+号 输入 appium-Python-Client安装( 安装这些完毕之后需要大家配置环境变量。我就直接截图给大家看啦)

环境变量配置完成之后需要检测一下是否  都已经安装正常

cmd 打开命令提示符  输入 appium-doctor 回车  

搭建完环境就可以开始 你的自动化测试之旅啦。

4、启动appium

5、选择高级设置  (1)输入服务器地址 127.0.0.1    (2)启动服务器

6.在Pycharm 项目名称上右键new Python file 输入文件名称 然后开始编写代码

# -*- coding: UTF-8 -*-
import time

from appium import webdriver
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import webdriverwait

# from selenium import webdriver

desired_caps = {}
desired_caps['platformName'] = 'Android'#平台 名称
desired_caps['platformVersion'] = '10' #Android 版本号
desired_caps['deviceName'] = '60d8a48d'#设备名称(cmd -- adb devices 确保手机连接电脑正常)
desired_caps['appPackage'] = '项目包名'
desired_caps['appActivity'] = '.ui.SplashActivity'#要打开的app入口Activity
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

time.sleep(2)

#打开app后允许的权限
def always_allow(driver, number=6):
    for i in range(number):
        loc = ("xpath", "//*[@text='始终允许']")
        try:
            e = webdriverwait(driver, 1, 0.5).until(EC.presence_of_element_located(loc))
            e.click()
        except:
            pass


if __name__ == "__main__":
    # 调用始终允许函数
    always_allow(driver)
time.sleep(1)
driver.find_element_by_id("alert_ok").click()
time.sleep(2)

homebar = driver.find_elements_by_id("messages")
homebar[3].click()

time.sleep(1)
driver.find_element_by_id("lly_login").click()
time.sleep(1)


def login(driver, edphones="18513147424", edPasss="123456"):
    driver.find_element_by_id("btn_ByPass").click()
    time.sleep(1)
    edPhone = driver.find_element_by_id("et_Phone")
    edPhone.send_keys(edphones)
    edPass = driver.find_element_by_id("et_Code")
    edPass.send_keys(edPasss)
    time.sleep(1)
    driver.find_element_by_id("btn_Login").click()
    time.sleep(2)
    pass


login(driver)
time.sleep(1)
homebar[0].click()

快快开始你的自动化测试之旅吧。

 

相关文章

前言:appium可以说是app最火的一个自动化框架,它的主要优势...
(原文:https://www.cnblogs.com/fancy0158/p/10047906.htm...
一Appium介绍1.1含义开源,跨平台,多语言支持的移动应用自动...
前言:Appium是一个自动化测试开源工具,支持iOS平台和Andro...
转:https://blog.csdn.net/Tigerdong1/article/details/801...
(原文:https://www.cnblogs.com/fancy0158/p/10056418.htm...