Appium环境搭建及元素定位

 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

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

  • 第三步

    安装 selenium

    扫描二维码关注公众号,回复: 14671191 查看本文章

 

注意:本版要>=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 请求发送给手机,再由手机进行执行

 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使用 

 操作步骤

配置应用信息

 定位方式 

 Appium元素定位 

定位一个元素

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

  • ID定位

注意:定位id值不唯一

  • accessibility_id定位

案例同上,元素值唯一

  • xpath定位

案例同上

资源分享

下面这份资源,对于想学习【软件测试】的朋友来说应该是最全面最完整的备战仓库,希望也能帮助到你!

猜你喜欢

转载自blog.csdn.net/chengxuyuznguoke/article/details/129839080