APP 自动化测试 Appium+Python

        这篇文章主要讲一下使用python 编写脚本,然后使用appium 开源功能做自动化的入门。有志于做自动化测试又没有思路的同学可以参考学习!

1、首先安装需要的软件:

1)python 安装

笔者电脑已安装3.7.0版本

2)pycharm 安装

主要用于编写脚本用的工具,这里已安装。

3)appium 安装

补充一下,笔者是Windows 系统,官网有时不容易打开,可以搜索下载

或者百度云盘下载,双击和别的软件安装类似进行安装。

链接:https://pan.baidu.com/s/1uk4v-7ucv2Hu4QISj4hgeA?pwd=d4l2 
提取码:d4l2

笔者下载的这个版本

Appium-Server-GUI-windows-1.22.0.exe

2、通过adb连接手机

可以通过USB连接手机,打开USB调试

输入命令 adb devices 查看有无连接,像下图就是连接成功,是设备id,我这里是荣耀手机。

可能遇到的问题:

adb devices 看不到手机

注意检查:1)电脑要安装有手机驱动,2)数据线可能要原装的,开始又发现一些数据线随便拿一个不行;3)打开USB调试。

这里选择USB连接方式荣耀50选择了  仅充电,和“仅充电”模式下允许ADB调试,解决了上面的问题。

3、打开appium编写初始化参数

初始化参数来保证可以和手机的被测APP联通。

1)通过appium 编写参数调试

双击打开appium 后点击下方按钮

点击new session Windows...

2)包名和启动页确认

找到被测APP的包名和Activity Name

手机连接上电脑后,在DOS环境先使用adb devices命令确认手机与电脑连接正常。

然后 打开被测APP,输入下面的命令,就会显示出APP的包名与ActivityName

输入命令:adb shell dumpsys window |findstr mCurrent

下方两个框住的分别是包名和ActivityName,也写到3-1步骤的appium中

3)appium去调试打开APP

点击下图的右下角 start session

若是看到正常启动了手机端的被测APP,说明参数没有问题。可进行下一步

4、编写第一个登陆测试程序测试

这里利用unittest 测试框架写编写了简单的测试登陆的用例:

登陆成功后断言

点睛之笔:以上就是一个APP自动化测试的入门实例,需要一些基础知识:如python 脚本的编写,unittest 测试框架的熟悉,appium GUI的熟悉,以及一些元素的定位方法。

工作原理简单理解:测试脚本→appium 服务器→UI automator →手机APP运行

5、可能遇到问题及解决方法:

问题描述、[UiAutomator] UiAutomator exited unexpectedly with code 0, signal null

使用appium 调起APP时报错

上面问题看起来是UiAutomator 的问题,通过改用:UiAutomator2   解决了。

学海无涯,我们一起努力!

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Appium是一个开源的自动化测试框架,主要用于移动应用的UI测试,特别是跨平台的iOS和Android应用程序。它利用WebDriver协议来控制实际设备或模拟器,PythonAppium的一种常用语言接口之一,因为它易于编写和理解。 使用Appium + Python进行iOS应用自动化测试的步骤主要包括: 1. 安装依赖:首先确保你已经在本地环境中安装了PythonAppium服务器(通过`npm install -g appium`)以及相关的Python库,如`selenium-python`(用于与Appium交互)和`appium-python-client`(用于与Appium服务进行通信)。 2. 配置Appium:在服务器端配置一个iOS模拟器或真机,指定使用的操作系统版本、设备名称等信息。你需要在Appium的偏好设置中配置对应的SDK路径和必要的证书。 3. 创建测试脚本:用Python编写测试脚本,通过`selenium.webdriver.Remote()`创建一个WebDriver实例,并连接到Appium服务器。例如: ```python from appium import webdriver desired_caps = {'platformName': 'iOS', 'platformVersion': '14.5', 'deviceName': 'iPhone 12', 'app': '/path/to/your.app'} driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) ``` 4. 测试逻辑:使用Python的selenium库编写测试用例,包括启动应用、点击元素、输入文本、检查元素状态等操作。执行完毕后记得调用`driver.quit()`关闭会话。 5. 运行测试:运行Python脚本,Appium将根据脚本的指令控制iOS应用的行为,执行测试并返回结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值