uiautomator

Appium的简答使用

核能气质少年 提交于 2019-12-12 23:25:20
Appium Appium 服务关键字 关键字 描述 实例 automationName 你想使用的自动化测试引擎 Appium (默认) 或 Selendroid platformName 你要测试的手机操作系统 iOS, Android, 或 FirefoxOS platformVersion 手机操作系统版本 例如: 7.1, 4.4 deviceName 使用的手机类型或模拟器类型 iPhone Simulator, iPad Simulator, iPhone Retina 4-inch, Android Emulator, Galaxy S4, 等。在 iOS 上,这个关键字的值必须是使用 instruments -s devices 得到的可使用的设备名称之一。在 Android 上,这个关键字目前不起作用。 app .ipa or .apk文件所在的本地绝对路径或者远程路径,也可以是一个包括两者之一的.zip。 Appium会先尝试安装路径对应的应用在适当的真机或模拟器上。针对Android系统,如果你指定app-package和app-activity(具体见下面)的话,那么就可以不指定app。 会与 browserName 冲突 比如/abs/path/to/my.apk或http://myapp.com/app.ipa browserName

uiautomator API

僤鯓⒐⒋嵵緔 提交于 2019-12-11 03:44:40
本文主要介绍如下内容, 一, UiAutomator是什么鬼? 二,Python-UiAutomator又是什么鬼? 三, Python-UiAutomator API介绍 四,重要查看工具:UiAutomatorViewer 五,Python编辑器推荐:Pycharm 让我们怀着一颗好奇的心,逐个看看我们刚刚列出的以上几条吧。 一, UiAutomator是什么鬼? UiAutomator是google为Android平台开发的跨程序的测试类库(考点:跨程序),可以在Android Studio中用Java Script开发(很久很久以前,大家也用Eclipse开发)。 它支持Android 4.1以及更新的版本,低版本Android不能使用UiAutomator(现实中,很少有产品在使用Android 4及以下的版本了,所以影响很小)。 UiAutomator, 顾名思义主要是针对UI的自动化测试,不仅可以测试用户自己开发的程序,也可以测试系统自带的系统程序,如Setting等。 它支持”黑盒测试“,无需得到要测试程序的代码,就可以测试(这还得多亏了UiAutomatorViewer,这个稍后再讲)。 想获得更多的关于UiAutomator的信息,请移步至Android官网https://developer.android.com/training/testing/ui

UIAutomator API定位元素

允我心安 提交于 2019-12-11 02:39:18
一、根据class name和text属性 包名不可省略   code= new UiSelector().text("我的").classname("android.widget.TextView")   driver.find_element_by_android_uiautomator(code)   driver.find_elements_by_android_uiautomator(code) 二、根据resource id属性 包名不可省略   new UiSelector().resourceId("com.ibox.calculators:id/account_txt") 三、childSelector 相当于//   这种方法是在已知父控件的时候如何快速的查找该父控件下面的子控件。 四、instance index 用于子元素   index Set the search criteria to match the widget by its node index in the layout hierarchy.      设置查询标准根据布局结构中的节点index匹配部件        多多计算器 ,查询数字元素,查询数字元素每行的第三个元素        new UiSelector().textMatches("[0-9]").index(2) 结果为3

Appium移动端测试--基础预热

元气小坏坏 提交于 2019-12-09 22:42:43
目录 Android自动化环境准备 需要安装的软件: Appium多端架构与自动化 Android自动化前提依赖: 获取App的信息: Android常用命令 adb shell 常用命令列表: Android性能统计dumpsys uiautomator 简单的自动化工具input命令 Appium生态工具 Appium desktop主要功能 录制用例并执行 近日开始了移动端自动化测试的学习之路,决定在学习的过程中进行笔记,总结学习,印象或许会深刻一些。 Android自动化环境准备 1、 Android SDK:- 下载 Android SDK(可以先使用Android Studio辅助安装),并设置 PATH 变量加入 SDK 的工具目录; 2、模拟器: Android Studio 自带 Emulator [推荐] Genymotion、网易 MuMu、BlueStacks 3、真机 需要安装的软件: 1、安装Android Studio(包含了SDK和Emulator) 2、安装Node.js和npm 3、安装Appium() 4、安装脚本IDE Pycharm 接下来大概的看一下与Appium相关的知识点。 Appium多端架构与自动化 Android自动化前提依赖: 获取App的信息: 获取App信息 获取当前界面元素:adb shell dunpsys

uiautomator python版本

为君一笑 提交于 2019-12-06 04:53:47
摘要: 利用jsonrpc技术直接包装uiautomator,调用uiautomator的api在本地直接编写脚本,然后运行测试case,这样比用 Java 写,然后再打包,runcase要简单的多,关键是他还延伸很多有用的方法,比google原生的要强大一点。 Name: Python wrapper of Android uiautomator test tool author: 贺晓聪 Github: https://github.com/xiaocong bundle.jar jsonrpc中所用到的服务器类的支持jar包 使用方法很简单,下载2个jar包:bunder.jar,uiautomator-stub.jar。可以在github下,我一会也会分享。下好这2个jar,将其push到android手机当中,然后启动服务器,我写了个批处理,直接运行cmd.bat: adb forward tcp:9008 tcp:9008 adb push bundle.jar /data/local/tmp adb push uiautomator-stub.jar /data/local/tmp adb shell uiautomator runtest uiautomator-stub.jar bundle.jar -c com.github.uiautomatorstub

appium元素定位总结

▼魔方 西西 提交于 2019-12-06 03:11:44
appium元素定位方法总结 使用uiautomator定位 driver.find_element_by_android_uiautomator(uia_string) 根据resourceId属性定位 根据文本,描述,类名,索引属性定位 根据content-desc定位 driver.find_element_by_accessibility_id() 根据xpath定位 driver.find_element_by_xpath() 使用uiautomatorviewer定位工具 driver.find_element_by_android_uiautomator(uia_string) 根据resourceId属性定位 driver.find_element_by_android_uiautomator('new UiSelector().resourceId("%s")') 体现:如下图,点击顶部扫码器: 对应uiautomator名称:“ resource-id”: driver.find_element_by_android_uiautomator('new UiSelector().resourceId("com.rfchina.app.supercommunity:id/square_title_btn_scan")').click() 选择resource

UiAutomator和Appium之间的区别2

与世无争的帅哥 提交于 2019-12-06 02:57:08
UiAutomator和Appium之间的区别和联系 联系: 在Android端,appium基于WebDriver协议,利用Bootstrap.jar,最后通过调⽤用UiAutomator的命令,实现App的自动化测试。 UiAutomator测试框架是AndroidSDK自带的App UI自动化测试Java库。 1、UiAutomator——基于UIAutomation的用户界面自动化测试框架,可以跨应用工作; 2、UiAutomator只能测试Android native app 3、主要功能跟Appium类似 4、可以跨应用测试,Google原生,其稳定性和后续的维护更新可以得到保障,运行时也有更多的权限 5、可以跨进程操作; 6、运行速度快; 7、UiAutomator框架对外提供的API,主要有UiDevice、UiSelector、UiObject、UiCollection和UiScrollable等 8、使用uiautomatorviewer.bat来检索手机界面视图 9、支持的语言可以有python、java等,google推出的底层框架使用java编写的,但是也有python封装的底层框架,因此也可使用python进行自动化测试 Appium——跨平台,允许采用同一套API在不同的平台(IOS,Android)上编写测试代码

appium基础一:连接手机和appium-desktop定位元素

隐身守侯 提交于 2019-12-05 09:24:44
一、获取手机信息 adb devices获取手机或模拟器的设备名 aapt dump badging xxxx.apk获取app的包名、入口等基本信息 如果想要知道手机原生携带的app的基本信息,首先是无法获取到这个apk软件包,也就无法用aapt的方法来获取对应的信息。此时可以通过抓取日志的方法获取基本信息。 举例:想要获取到手机功能---设置 的基本信息。最终可以通过代码或appium客户端链接手机,并自动启动手机的设置功能 方法: 1、关闭手机后台运行的所有程序 2、打开手机日志 在cmd窗口输入adb logcat | findstr /i start 查看日志并过滤出来start 类型日志,保持日志监控窗口不动 3、点击手机中的---设置,查看cmd窗口日志文件 因为先前已经把所有后台运行日志关闭。所有此时打开设置,可以看到日志窗口发生了变化,可以确定这个日至就是设置功能的日志 从上面的日志信息中,可以看到有这样以穿字符串:com.android.settings/.Settings 这个字符串中的 / 左侧即为包名,右侧是入口。然后可以把这个包名和程序入口,替换我们代码中的对应qq的包名和程序入口。替换完成以后,运行程序,就会发现设置自动被启动了 二、通过代码链接模拟器/手机 from appium import webdriver#导入appium包

【Appium】Appium工作原理

自作多情 提交于 2019-12-05 01:57:10
【Appium】Appium工作原理 2017-09-13 15:28 sophia194910 阅读( 7658) 评论( 0) 编辑 收藏 参考: http://www.cnblogs.com/zhjsll/p/5698878.html 原作者写的很好,所以直接放在这里。 一、什么是Appium Appium是一个开源、跨平台的测试框架,可以用来测试原生及混合的移动端应用。Appium支持IOS、Android及FirefoxOS平台。Appium使用WebDriver的json wire协议,来驱动Apple系统的UIAutomation库、Android系统的UIAutomator框架。Appium对IOS系统的支持得益于Dan Cuellar’s对于IOS自动化的研究。Appium也集成了Selendroid,来支持老android版本。 Appium支持Selenium WebDriver支持的所有语言,如java、Object-C、JavaScript、Php、Python、Ruby、C#、Clojure,或者Perl语言,更可以使用Selenium WebDriver的Api。Appium支持任何一种测试框架。如果只使用Apple的UIAutomation,我们只能用javascript来编写测试用例,而且只能用Instruction来运行测试用例。同样

uiautomator2 使用Python测试 Android应用

流过昼夜 提交于 2019-12-04 21:57:53
GitHub地址: https://github.com/openatx/uiautomator2 介绍 uiautomator2 是一个可以使用Python对Android设备进行UI自动化的库。其底层基于Google uiautomator,Google提供的uiautomator库可以获取屏幕上任意一个APP的任意一个控件属性,并对其进行任意操作,但有两个缺点: 1、测试脚本只能使用Java语言。 2、测试脚本必须每次被上传到设备上运行。 我们希望测试能够用一个更脚本化的语言,例如Python编写,同时可以每次所见即所得地修改测试、运行测试。 安装 安装uiautomator2 pip install --pre uiautomator2 pip install pillow 初始化 部署相关的守护进程。 电脑连接上一个手机或多个手机, 确保 adb 已经添加到环境变量中 ,执行下面的命令会自动安装本库所需要的设备端程序:uiautomator-server 、atx-agent、openstf/minicap、openstf/minitouch python -m uiautomator2 init 安装过程如下: 安装完成,设备上会多一个uiautomator的应用。 配置手机设备参数: 有两种方法,一种是通过WIFI,另一种是通过USB数据线将手机链接电脑。