Appium环境搭建及元素定位

Appium是一个开源测试自动化框架,可用于原生,混合和移动Web应用程序测试。它使用WebDriver 协议驱动iOS,Android和Windows应用程序。

01 环境搭建步骤

Appium环境安装:

第一步安装 appium 桌面版客户端

Appium-1.12.1.dmg(MAC环境)/Appium-windows-1.12.1.exe

第二步安装 Appium-Python-Client

pip install Appium-Python-Client pip3 install Appium-Python-Client -i https://pypi.tuna.ts inghua.edu.cn/simple

注意:本版要>=0.29,通过pip list 可以查看版本号

第三步安装 selenium

pip install selenium

注意:本版要>=3.141.0

第四步安装 Android SDK

下载Android SDK,并配置环境变量

第五步安装 夜神模拟器

运行nox_setup_v6.2.8.0_full.exe

MAC 运行 .dmg

  • 第六步
  • 将Android SDK中 platform-tools路径下的adb.exe 复制到模拟器安装路径下的bin目录替换原有的adb.exe 删除原有的nox_adb.exe,将新的adb.exe复制一份改名nox_adb.exe
  • 第七步启动设置
  • 第八步
  • 打开模拟器,启动appium 桌面版客户端服务运行以下代码

02 Appium 原理

Capability

Appium Desktop

Appium Desktop是一款适用于Mac,Windows和Linux的开源应用程序,它以美观而灵活的用户界面为您提供Appium自动化服务器的强大功能。它是几个Appium相关工具的组合:

Appium Server的图形界面。您可以设置选项,启动/停止服务器,查看日志等...您也不需要使用Node 的NPM来安装Appium,因为Node运行时与Appium Desktop捆绑在一起

您可以使用Inspector查看应用程序的元素,获取有关它们的基本信息,并与它们进行基本的交互

Appium-desktop主界面包含三个菜单Simple、Advanced、Presets

Simple

设置Appium server的ip地址,本地调试可以将ip地址修改为127.0.0.1 port

设置端口号,默认是4723不用修改

Advanced

高级参数配置修改,主要是一些Android和iOS设备,log路径等相关信息的配置。

第一个appium脚本

03 capability - 参数介绍

  • 公共 capability

  • Android 独有capability

  • IOS 独有capability

启动过程【了解】

  • appium的启动实际上是在本机使用了4723端口开启了一个服务,我们写的 python 代码会访问本机的 appium 服务器,并获取 driver 对象
  • appium 会将我们的 driver 对象调用的方法转化成 post 请求,提交给appium服务器
  • appium 通过接收到的 post 请求发送给手机,再由手机进行执行

02 Appium元素信息的获取

01 UIAutomatorViewer的使用

用来扫描和分析 Android 应用程序的 UI 控件的工具

使用步骤:

1. 进入SDK目录下的目录

mac 在 tools/bin 目录下,打开 uiautomatorviewer windows 在 tools 目录下,打开 uiautomatorviewer.bat

2. 电脑连接真机或打开android模拟器

3. 启动待测试app

4. 点击 uiautomatorviewer 的左上角 Device Screenshot (从左数第二个按钮)

5. 点击希望查看的控件

查看右下角 Node Detail 相关信息示例

查看《设置》应用程序右上角 ”放大镜“ 按钮的 ”resource-id“

打开 uiautomatorviewer

打开 android 模拟器启动《设置》应用程序

点击 Device Screenshot 按钮点击 ”WLAN“ 按钮

查看 Node Detail 中的 ”resource-id“ 信息

02         Appium inspector使用

操作步骤

配置应用信息

定位方式

03 Appium元素定位

定位一个元素

案例:启动设置,定位搜索按钮

ID定位

注意:定位id值不唯一

accessibility_id定位

案例同上,元素值唯一

xpath定位

案例同上

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:【文末自行领取】

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值