Android Native App自动化测试实战讲解(下)(基于python)
6.Appuim自动化测试框架API讲解与案例实践(三)

如图1,可以在主函数里通过TestSuite来指定执行某一个测试用例;

6.1,scroll();如图2

从图3中可以看到当前页面的所有元素resource_id都是相同的,所以不能通过resource_id来定位元素,这里选择by_class_name方法来获取元素列表的方式,然后向scroll(object1,object2)中传入两个列表中值;

6.2,drag()_and_drop();选中某个元素并拖拽到某个元素的位置;如图4,用法与scroll()相同,都是需要传入两个参数;

6.3,swipe(start_x,start_y,end_x,end_y);滑动;x/y分别为起点和终点的坐标;那么什么时候会用到swipe()这个API呢?当在页面上无法获取到元素的属性的时候。如果可以获取到元素属性,就没有必要选择swipe(),因为swipe()相对scroll()和drag()_and_drop()是不够精确的;因为不同设备的分辨率是不一样的,在较大分辨率设备上写的脚本,有可能会超出较小分辨率的设备的范围;

6.4,tap([(x1,y1)],[(x2,y2)],[(x3,y3)]......);传入的参数是一个数组,来实现1点或多点的点击,如图6;

7.Appuim自动化测试框架API讲解与案例实践(四)

7.1,flick(start_x,start_y,end_x,end_y),快速滑动;current_activity,当前activity的名字;wait_activity(activity名,等待显示的时间x,每过多长时间y检测一次activity是否显示),等待activity显示;如果显示了,返回True,如果没有显示,返回False;background_app(置于后台的时间x),将app置于后台,在参数的时间后再返回到前台;

8.Appuim自动化测试框架API讲解与案例实践(五)

8.1,is_app_installed(包名);查看app的安装状态,如果已经安装了,返回True,如果没有安装,返回False;remove_app(包名),卸载app;install_app(app的路径),安装app;launch_app(),启动app,启动初始化时的app;

图8中使用install_app()时,需要在脚本初始化时先指定一个当前已经安装的app(如图9),如果直接指定要安装的app会出现报错,原因是脚本执行的时候找不到要安装的app;

9.Appuim自动化测试框架API讲解与案例实践(六)

9.1,close_app(),关闭app;start_activity(pacakge名,activity名),启动某个package下的某个活动页面;get_screenshot_as_file(),截屏;

以上,通过实例介绍了Android Native App自动化测试,希望对看到本篇的人有所帮助。
Android Native App自动化测试实战讲解(下)(基于python)的更多相关文章
- Android Hybrid App自动化测试实战讲解(基于python)
1.Hybrid App自动化测试概要 什么是Hybrid App? Hybrid App(混合模式移动应用)是指介于web-app.native-app这两者之间的app,兼具“Native App ...
- Android Native App自动化测试实战讲解(上)(基于python)
1.Native App自动化测试及Appuim框架介绍 android平台提供了一个基于java语言的测试框架uiautomator,它一个测试的Java库,包含了创建UI测试的各种API和执行自动 ...
- Android App自动化测试实战(基于Python)(三)
1.Native App自动化测试及Appuim框架介绍 android平台提供了一个基于java语言的测试框架uiautomator,它一个测试的Java库,包含了创建UI测试的各种API和执行自动 ...
- 基于UiAutomator2+PageObject模式开展APP自动化测试实战
前言 在上一篇<APP自动化测试框架-UiAutomator2基础>中,重点介绍了uiautomator2的项目组成.运行原理.环境搭建及元素定位等基础入门知识,本篇将介绍如何基于uiau ...
- Native App自动化测试及Appium框架介绍
一 自动化工具简介 1 Appium : 开源,跨平台的自动化测试工具,用于测试Native(原生)和Hybrid(混合)应用,支持IOS/Android/FirefoxOS 平台. 2 环境 : ...
- 【airflow实战系列】 基于 python 的调度和监控工作流的平台
简介 airflow 是一个使用python语言编写的data pipeline调度和监控工作流的平台.Airflow被Airbnb内部用来创建.监控和调整数据管道.任何工作流都可以在这个使用Pyth ...
- windows 环境下基于Python 的GDAL 安装
最近由于需要利用pytho处理地理空间数据,但是python本身并没有访问和处理地理空间数据的包,只能借助于GDAL(Geospatial Data Abstraction Library)来进行访问 ...
- 《精通移动app测试实战:技术、工具和案例》新书上市
本书是测试专家.性能测试专家.专业畅销书作者--于涌,多年实战经验的总结,涵盖主流的测试工具,包括众多的测试实例,涵盖单元测试.功能测试.性能测试.UI测试.手游测试.自动化测试.测试用例管理.持续集 ...
- 基于python的互联网软件测试开发(自动化测试)-全集合
基于python的互联网软件测试开发(自动化测试)-全集合 1 关键字 为了便于搜索引擎收录本文,特别将本文的关键字给强调一下: python,互联网,自动化测试,测试开发,接口测试,服务测试,a ...
随机推荐
- angular1.3 video
video标签动态获取播放链接是出现 Error: $interpolate:interr Interpolation Error Error: $sce:insecurl Processing of ...
- CSS水平垂直居中!
总结一下,最经典的面试题 分两种情况,宽高确定和不定宽高 (一)宽高确定 初始条件如下: 1. 绝对定位 + 负margin 里面的盒子相对于父盒子绝对定位,距离上面和左边分别为50%,此处的50%是 ...
- 解决fastJson无序问题
对外提供接口,第三方传过来的参数没问题.可是用fastJson 转换的出现 参数顺序不一致,导致 验签失败 解决fastJosn 转换无序问题 https://github.com/alibaba/f ...
- Django model对象接口
Django model查询 # 直接获取表对应字段的值,列表嵌元组形式返回 Entry.objects.values_list('id', 'headline') #<QuerySet [(1 ...
- js array 对象
Javascript 对象: Array 对象:数组 创建方法: 1, var a = new Array() 2,var a = new Array(3) 3,var a = new Array(“ ...
- prometheus — nginx-vts-exporter
参考文档: https://blog.51cto.com/xujpxm/2080146 注: 本文留用自己参考,建议看以上参考文档,更为细致 prometheus 监控 nginx 使用 nginx- ...
- dedecms 后台可以上传mp4,但无法选择
原文链接 找到 /include/dialog/select_media.php 找到rmvb,在其后面加 “|mp4” 即可. 1
- CF F. Shovels Shop(前缀和预处理+贪心+dp)
F. Shovels Shop time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- Lesson 26 The best art critics
Text I am an art student and I paint a lot of pictures. Manay people pretend that they understand mo ...
- 升讯威微信营销系统开发实践:微信接口的 .NET 封装
GitHub:https://github.com/iccb1013/Sheng.WeixinConstruction因为个人精力时间有限,不会再对现有代码进行更新维护,不过微信接口比较稳定,经测试至 ...