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。
通过 adb devices 命令检测 模拟器是否可用。
第三步:利用 open application 关键字,打开模拟器上的 柠檬班 app。
这一步实际是:与 appium server 建立连接,并告诉 appium server 要在 XX 设备上操作 XXapp.
本案例中, 要去操作系统为 Android,版本为 6.0.1 的设备上,启动 柠檬班 app。(ps:appium 是同时支持 Android 和 iOS 设备的。)
所以,需要提供 :
- 平台名称 (platformName=Android)
- 平台版本 (platformVersion=6.0.1)
- 设备名称 (deviceName=Emulator)
- app 的包名(app 在移动设备上的标识) (appPackage=com.lemon.lemonban)
- app 的启动 activity (appActivity=com.lemon.lemonban.activity.WelcomeActivity)
除此之外,启动与 app 的会话时,官 提供了更多的参数说明。可参考以下官 地址:
Desired Capabilities – Appium
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、使用案例
上图中案例一的操作说明:
上图中的案例二的操作说明:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!