适用于Appium客户端的Robot Framework移动应用测试库,支持Android、iOS和Web
项目描述
介绍
AppiumLibrary 是一个适用于 Robot Framework 的Appium测试库。库可以从 PyPI 下载。
它使用 Appium 与 Android 和 iOS 应用进行通信,类似于 Selenium WebDriver 与网页浏览器通信的方式。
它支持 Python 3.7+(因为 Appium Python 客户端不再支持 Python 2.7)
关键字文档
请参阅关键字文档以获取可用的关键字以及有关库的一般信息。
安装
选项 1(推荐)
推荐的安装方法是使用 pip
pip install --upgrade robotframework-appiumlibrary
选项 2
可以从 GitHub 仓库直接安装。要从 master 分支安装最新源代码,请使用此命令:pip
pip install git+https://github.com/serhatbolsu/robotframework-appiumlibrary.git
请注意,安装将花费一些时间,因为 pip 将将 AppiumLibrary 项目克隆到临时目录,然后执行安装。
请参阅 Robot Framework 安装说明以获取有关安装 Python 和 Robot Framework 的详细信息。
设备设置
在安装库后,您仍然需要设置一个模拟器/仿真器或真实设备用于测试。iOS 和 Android 有不同的路径,这些步骤在 Appium 驱动器设置指南 中有更好的说明。请根据平台遵循 特定于驱动器的设置。
使用
要使用 Robot Framework 和 AppiumLibrary 编写测试,必须将 AppiumLibrary 导入到您的 RF 测试套件中。有关更多信息,请参阅 Robot Framework 用户指南。
由于它使用 Appium,请确保您的 Appium 服务器正在运行。有关如何使用 Appium 的信息,请参阅 Appium 文档
当使用 Robot Framework 时,通常建议编写易于阅读/修改的测试。AppiumLibrary 提供的关键字相当低级。因此,通常最好使用 Robot Framework 的高级关键字来编写测试,这些关键字在内部使用 AppiumLibrary 关键字。以下示例说明了这一点,其中 AppiumLibrary 关键字(如 Input Text)主要用于高级关键字(如 Input Search Query)。
*** Settings ***
Documentation Simple example using AppiumLibrary
Library AppiumLibrary
*** Variables ***
${ANDROID_AUTOMATION_NAME} UIAutomator2
${ANDROID_APP} ${CURDIR}/demoapp/ApiDemos-debug.apk
${ANDROID_PLATFORM_NAME} Android
${ANDROID_PLATFORM_VERSION} %{ANDROID_PLATFORM_VERSION=11}
*** Test Cases ***
Should send keys to search box and then check the value
Open Test Application
Input Search Query Hello World!
Submit Search
Search Query Should Be Matching Hello World!
*** Keywords ***
Open Test Application
Open Application http://127.0.0.1:4723/wd/hub automationName=${ANDROID_AUTOMATION_NAME}
... platformName=${ANDROID_PLATFORM_NAME} platformVersion=${ANDROID_PLATFORM_VERSION}
... app=${ANDROID_APP} appPackage=io.appium.android.apis appActivity=.app.SearchInvoke
Input Search Query
[Arguments] ${query}
Input Text txt_query_prefill ${query}
Submit Search
Click Element btn_start_search
Search Query Should Be Matching
[Arguments] ${text}
Wait Until Page Contains Element android:id/search_src_text
Element Text Should Be android:id/search_src_text ${text}
创建一个包含上述内容的文件(命名为:test_file.robot)并执行
robot test_file.robot
上述示例是单个文件测试用例,更多示例可以在示例项目中找到,该项目说明了如何使用 Robot Framework 和 AppiumLibrary。检查您可以找到移动网页、iOS 和 Android 示例的示例项目。
贡献
分叉项目,进行更改,并发送拉取请求!
项目贡献者
张伟 |
akupahkala |
阿诺德·鲁芬 |
谢尔哈特·博尔苏 |
songkingang |
朱尼尔·维拉 |
谢莉平 |
艾瑞克·巴塔尔奥斯 |
塔纳基特·斯里萨拉纳库尔 |
约书亚·里维拉 |
阮明 |
蒂亚戈·帕伊瓦·布里托 |
js361014 |
萨迪克·库祖 |
乔纳森·盖瓦尔 |
matthew-dahm |
库马尔S |
jennyw1 |
JMcn |
夏克拉克 |
ac-simoes |
乌尔哈斯·德什穆克 |
郭雷昂 |
普拉莫德 |
smaspe |
eXtReMaL |
埃尔奥尔·塞利特克塔伊 |
费利佩·阿鲁达 |
费利佩·路易斯·托雷拉 |
费利佩·亨利克·本雅明·德·阿鲁达 |
AppiumLibrary 模仿(并分叉自)appiumandroidlibrary,但重新实现以使用 appium 1.X 技术。
项目详细信息
robotframework-appiumlibrary-2.1.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d01b1ed21e79996a790ffb7ad475862f6e9427770a9c88314065b1c59ce2d52c |
|
MD5 | 80d6490d5ba585f484e0745220906d61 |
|
BLAKE2b-256 | 2e4e4378308ac3f638cdee4a7c7e2b5e09d4937d40dd9d8cfbeefdde5d8db300 |
robotframework_appiumlibrary-2.1.0-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 34038656beff3915be3621828d74ada55f959c9f618518a9c387134424914016 |
|
MD5 | 83d2d44cf7a8e68c87b82c3f0b23f4db |
|
BLAKE2b-256 | 869f139e757743762569c70519714b31f4d3d61b2ad93d78f803f6097dc9ed16 |