robotframework-appiumLibrary 应用 - 实现 app 自动化

发布一下 0 0
robotframework-appiumLibrary 应用 - 实现 app 自动化

1、安装 appiumLibrary 第三方库

运行 pip 命令:pip install robotframework-appiumlibrary

若已安装,需要更新版本可以用命令:pip install -U robotframework-appiumlibrary

2、安装 app 自动化环境。

参考我的另外一篇专门 app 自动化环境安装的文章:https://www.cnblogs.com/Simple-Small/p/10641854.html

3、利用 appiumLibrary 完成 app 功能自动化测试。

第一步:导入 AppiumLibrary,设置等待超时时间为 20s。

robotframework-appiumLibrary 应用 - 实现 app 自动化

第二步:启动 appium server。启动真机或者模拟器(本文中为网易 MUMU 模拟器)

robotframework-appiumLibrary 应用 - 实现 app 自动化

robotframework-appiumLibrary 应用 - 实现 app 自动化

通过 adb devices 命令检测 模拟器是否可用。

robotframework-appiumLibrary 应用 - 实现 app 自动化

第三步:利用 open application 关键字,打开模拟器上的 柠檬班 app。

这一步实际是:与 appium server 建立连接,并告诉 appium server 要在 XX 设备上操作 XXapp.

本案例中, 要去操作系统为 Android,版本为 6.0.1 的设备上,启动 柠檬班 app。(ps:appium 是同时支持 Android 和 iOS 设备的。)

所以,需要提供 :

  1. 平台名称 (platformName=Android)
  2. 平台版本号 (platformVersion=6.0.1)
  3. 设备名称 (deviceName=Emulator)
  4. app 的包名(app 在移动设备上的标识) (appPackage=com.lemon.lemonban)
  5. app 的启动 activity (appActivity=com.lemon.lemonban.activity.WelcomeActivity)

除此之外,启动与 app 的会话时,官网提供了更多的参数说明。可参考以下官网地址:

Desired Capabilities - Appium

robotframework-appiumLibrary 应用 - 实现 app 自动化

4、AppiumLibrary 当中元素定位方式

定位策略

说明

案例

id

匹配元素的 resourceId 属性

id=id=com.lemon.lemonban:id/navigation_tiku

accessibility_id

匹配元素的 description 属性

accessibility_id=button3

Android

使用 UiAutomator 框架的元素定位

android=UiSelector().description('Apps')

xpath

使用 xpath 表达式定位

xpath=//*[@text="nmb"]

class

匹配元素的 class 属性

class=android.widget.TextView




5、AppiumLibrary 关键字说明

以下列举部分关键字说明:

关键字

说明


open application

打开 app 应用


close application

关闭 app 并关闭当前的 webdriver 会话


Quite application

关闭 app 但不关闭当前会话


reset application

重置 app


remove applicaiton

卸载 app


get source

获取当前页面的源码


get window height

获取当前设置的高


get window width

获取当前设备的宽


get newtwork connections status

获取当前的网络状态


Set network connection status

设置网络连接状态


Hide keyboard

隐藏键盘


Is keyboard shown

键盘是否隐藏


get activity

获取当前活跃的 activity


swipe

滑屏操作


swipe by percent

按百分比滑屏操作


get contexts

获取当前所有的 contexts


switch to context

切换到指定的 context


click element

点击元素


input text

元素中输入值


get text

获取元素的文本


get element attribute

获取元素的属性值


Get element size

获取元素的大小


get element location

获取元素的坐标值


Execute adb shell

执行 adb 命令


switch application

切换 app


wait activity

等待 activity 加载


### 6、使用案例

robotframework-appiumLibrary 应用 - 实现 app 自动化

上图中案例一的操作说明:

robotframework-appiumLibrary 应用 - 实现 app 自动化

上图中的案例二的操作说明:

robotframework-appiumLibrary 应用 - 实现 app 自动化



版权声明:内容来源于互联网和用户投稿 如有侵权请联系删除

本文地址:http://0561fc.cn/59063.html