Python+Appium实现自动化测试(macOS 10.15.7)

一、环境准备

1.脚本语言: Python3.x IDE:安装 Visual Studio Code

2.安装 Java JDK 、 Android SDK

3.adb环境,path添加 %Android_SDK%\platform-tools

4.安装 Appium for mac ,官网地址 http://appium.io/

点击下载按钮会到GitHub的下载页面,选择对应平台下载

安装完成后,启动Appium,host和port默认的即可,然后设置Android SDk和Java JDK

然后点下边那个保存并重启的按钮,然后点第一个Start Server按钮,将会看到

二、真机测试

1.连接手机

打开开发者模式,USB线连接手机和电脑,并且在开发者选项当中,开启USB调试

测试是否连接成功,可执行命令adb devices

出现上图就证明手机和电脑连接成功。。。

2.点击 Start Inspector Session ,

按如下配置 Desired Capabilities

  platformName :声明是 IOS 还是 Android 系统

platformVersion : Android 内核版本号,可通过命令 adb shell getprop ro.build.version.release 查看

deviceName :连接的设备名称,通过命令 adb devices -l 中model查看

appPackage : apk 的包名

appActivity : apk的 launcherActivity ,通过命令 adb shell dumpsys activity | findstr mResume 查看(需先打开手机应用)

注意: Android 8.1 之前应使用 adb shell dumpsys activity | grep mFocus

3.运行 Start Session ,选择元素

右侧 Selected Element 区域有三个按钮

Tap
Send Keys

4.录制脚本

录制生成的python代码如下:

# -*- coding:utf-8 -*-
# This sample code uses the Appium python client
# pip install Appium-Python-Client
# Then you can paste this into a file and simply run with Python
 
from appium import webdriver
 
# 多点触摸滑动
from appium.webdriver.common.touch_action import TouchAction
from appium.webdriver.common.multi_action import MultiAction
 
 
caps = {}
caps["platformName"] = "Android"
caps["platformVersion"] = "10"
caps["deviceName"] = "BMH_AN10"
caps["appPackage"] = "com.antfortune.wealth"
caps["appActivity"] = "com.alipay.mobile.quinox.LauncherActivity"
#caps["resetKeyboard"] = True
#caps["unicodeKeyboard"] = True
 
driver = webdriver.Remote("http://localhost:4723/wd/hub", caps)
 
el1 = driver.find_element_by_id("com.antfortune.wealth.login:id/login_main_button")
el1.click()
el2 = driver.find_element_by_id("com.alipay.mobile.accountauthbiz:id/auth_login_btn")
el2.click()
 
driver.quit()

5.在 Visual Studio Code 中建立项目将代码粘入,在运行之前,还需通过pip命令安装 pip install Appium-Python-Client 依赖包

最后,记一个我在这些过程中遇到的问题(现已解决)

在Appium-desktop中运行Start Session时,出现

解决方法:在开发者模式下,打开usb调试功能和use模拟点击,两个都要打开,此时再重新运行,即可解决

下面有我近几年的收集和整理,整体是围绕着【软件测试】来进行整理的,主体内容包含:python自动化测试专属视频、Python自动化详细资料、全套面试题等知识内容。
在这里插入图片描述在这里插入图片描述
对于软件测试的的朋友来说应该是最全面最完整的面试备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你

关注微信公众号【程序员二黑】即可领取Python自动化测试超硬核资源啦

猜你喜欢

转载自blog.csdn.net/m0_52650621/article/details/112970772