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()
快快开始你的自动化测试之旅吧。