uiautomator

做了一两年软件测试的进阶应该怎么做?

…衆ロ難τιáo~ 提交于 2020-08-10 14:30:15
昨天在知乎问答上看到了一个问答。问的是软件测试人的进阶该怎么做?他说自己的在小公司呆久了,太安逸,如下图: 在小公司呆久了,太安逸,想要突破技术瓶颈? 我记得刚毕业时公司请的培训老师跟大家说“测试人员越老越吃香的”,然而事实上这有个前提他没说,就是你 需要具备足够的专业技能。 进入软件测试一段时间后,我们也应该对自己的专业技术能力进行提高,以便我们能胜任更加关键性的项目测试,提高自己在团队中的位置。 当下的趋势是 对测试人员的技术要求越来越高 ,这怎么说呢,说白了,就是测试人员不再是只管点点点的, 一些大厂国企公司招人,最容易进的就是能写代码或脚本的测试人员。 说到软件测试进阶,就那我接触最多的Python自动化测试举例子吧。我个人觉得可以分为六大模块系统性的进阶: 一、Python编程 包括环境搭建,基础语法,数据类型,分支与循环,面向对象编程,数据库相关内容。为后续自动化测试打下良好基础,为更快上手自动化测试框架实现做铺垫。 二、WebUI自动化测试 Selenium➕WebDriver实现的WebUI自动化测试框架内容掌握,可以从最浅层的环境搭建,到基本的模块调用,到实现自动化demo再到企业主流的PO模式与关键字驱动模块,全面掌握WebUI自动化测试能力。 三、APPUI自动化测试 基于Appium、UIAutomator2

WEditor(元素定位工具)安装和定位界面元素

假如想象 提交于 2020-08-09 18:58:31
1. 安装adb(安装方法——百度网盘(无邪)) 2. 安装python-uiautomator2 pip install --pre -U uiautomator2 3. 手机设备安装atx-agent 首先设备连接到PC,并能够 adb devices 发现该设备 输入 python - m uiautomator2 init 4..终端中输入 pip install weditor安装weditor 5.终端中输入python -m weditor启动weditor 4.在输入框中输入设备号,开启实时(定位时,需要关闭实时。才能定位元素准确),点击connect 推荐好文,收藏,此链接为转发的 https://testerhome.com/topics/11357?locale=en 来源: oschina 链接: https://my.oschina.net/u/4300877/blog/4329316

Android自动化测试框架必用工具

淺唱寂寞╮ 提交于 2020-08-09 01:48:12
Monkey Monkey1是Android SDK自带的测试工具,是一个命令行工具,可以运行在模拟器里或实际设备中。可以运行在模拟器中或者实际设备中,它向系统发送伪随机的用户事件流(如按键输入,触摸屏输入,手势输入等),实现对正在开发的应用程序进行压力测试。由于测试事件和数据都是随机的,不能自定义,所以有很大的局限性。 编写语言:命令行 运行环境:使用adb连接PC运行 测试对象:Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。主要测试客户端应用的稳定性,健壮性 测试限制:主要是做随机模拟用户操作移动端的操作 例子: adb shell monkey -p com.android.calendar -v 500 这样就开始乱点日历应用了。 加入我们,642830685,群。领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!技术大牛解惑 MonkeyRunner MonkeyRunner2是Android SDK提供的测试工具。严格意义上来说MonkeyRunner其实是一个Api工具包,比Monkey强大,可以编写测试脚本来自定义数据、事件。缺点是脚本(jython(java语言))用Python(Python(C语言))来写

Android自动化测试框架必用工具

我是研究僧i 提交于 2020-08-05 09:25:24
Monkey Monkey1是Android SDK自带的测试工具,是一个命令行工具,可以运行在模拟器里或实际设备中。可以运行在模拟器中或者实际设备中,它向系统发送伪随机的用户事件流(如按键输入,触摸屏输入,手势输入等),实现对正在开发的应用程序进行压力测试。由于测试事件和数据都是随机的,不能自定义,所以有很大的局限性。 编写语言:命令行 运行环境:使用adb连接PC运行 测试对象:Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。主要测试客户端应用的稳定性,健壮性 测试限制:主要是做随机模拟用户操作移动端的操作 例子: adb shell monkey -p com.android.calendar -v 500 这样就开始乱点日历应用了。 加入我们,642830685,群。领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!技术大牛解惑 MonkeyRunner MonkeyRunner2是Android SDK提供的测试工具。严格意义上来说MonkeyRunner其实是一个Api工具包,比Monkey强大,可以编写测试脚本来自定义数据、事件。缺点是脚本(jython(java语言))用Python(Python(C语言))来写

做了一两年软件测试的进阶应该怎么做?

倖福魔咒の 提交于 2020-08-04 16:31:11
昨天在知乎问答上看到了一个问答。问的是软件测试人的进阶该怎么做?他说自己的在小公司呆久了,太安逸,如下图: 在小公司呆久了,太安逸,想要突破技术瓶颈? 我记得刚毕业时公司请的培训老师跟大家说“测试人员越老越吃香的”,然而事实上这有个前提他没说,就是你 需要具备足够的专业技能。 进入软件测试一段时间后,我们也应该对自己的专业技术能力进行提高,以便我们能胜任更加关键性的项目测试,提高自己在团队中的位置。 当下的趋势是 对测试人员的技术要求越来越高 ,这怎么说呢,说白了,就是测试人员不再是只管点点点的, 一些大厂国企公司招人,最容易进的就是能写代码或脚本的测试人员。 说到软件测试进阶,就那我接触最多的Python自动化测试举例子吧。我个人觉得可以分为六大模块系统性的进阶: 一、Python编程 包括环境搭建,基础语法,数据类型,分支与循环,面向对象编程,数据库相关内容。为后续自动化测试打下良好基础,为更快上手自动化测试框架实现做铺垫。 二、WebUI自动化测试 Selenium➕WebDriver实现的WebUI自动化测试框架内容掌握,可以从最浅层的环境搭建,到基本的模块调用,到实现自动化demo再到企业主流的PO模式与关键字驱动模块,全面掌握WebUI自动化测试能力。 三、APPUI自动化测试 基于Appium、UIAutomator2

从快手薅羊毛说起之Appium/原生XCUITest/原生UIAutomator菜鸟级入门

故事扮演 提交于 2020-07-28 19:38:44
1. 需求 像这样进入某一个账号(一般是发的视频时间都比较长的号),每个视频停留60s,然后自动往后翻,赚取金币,小弟两个账号已经小赚500了,嘻嘻。 2. 实现 2.1原生XCUITest 首先配置好xcode开发环境。通过xcode建立新项目,选择Single View App后 勾选UI Tests 我们就可以在后缀UITests的文件夹下快乐的编写我们的UI自动化代码了 这儿我偷了个懒,需要程序打开程序后我们手动进入某一个账号,接下来就倒杯肥宅快乐水等着哗哗收钱了。 其实有兴趣可以让进入某一个账号这一个过程也自动化起来。最后选中这个Target执行Command+u就可以了。 2.2 原生UIAutomator 首先配置好AndroidStudio开发环境。接着就是我们熟悉的傻瓜式无脑操作,先建立一个空白的AndroidApp项目. 接着就是在androidTest目录下撸我们的代码。 直接在指定设备启动我们的测试用例就行了。 2.3 Appium之iOS 推荐配置Appium+iOS环境的文章: iOS 自动化测试踩坑(一): 技术方案、环境配置与落地实践 iOS 自动化测试踩坑(二):Appium 架构原理、环境命令、定位方式 Appium主要是借助WDA对ios设备进行UI控制。启动Appium Server后,此处利用pycharm编程。 2.4

appium---appium自动化原理

偶尔善良 提交于 2020-07-28 17:46:11
  这几天在群里也看到一个这样的面试题,appium的原理是什么?我们一直在思考如何编写自动化测试用例,但是却忘记了最基本的原理是什么。 Appium appium是一种开源的软件,跨平台(IOS、android),跨语言的自动换软件,不仅可以使用python,java编写测试用例,都可以进行运行。Appium使用的WebDriver的json wire协议来驱动Apple系统的UIAutomation库、Android系统的UIAutomator框架 更多介绍查看appium官网: http://appium.io/ Appium工作原理 1、Android设备 在Android端,appium基于WebDriver协议,利用Bootstrap.jar,最后通过调⽤用UiAutomator的命令,实现App的自动化测试。UiAutomator测试框架是Android SDK自带的App UI自动化测试Java库。另外由于UiAutomator对H5的支持有限,appium引入了chromedriv等来实现基于H5的自动化。 from appium import webdriver desired_caps = { ' platformName ' : ' Android ' , # 测试版本 ' deviceName ' : ' emulator-5554 ' , # 设备名 '

WiFi 统一管理以及设备自动化测试实践

偶尔善良 提交于 2020-04-27 12:10:28
ATX 安卓设备 WiFi 统一管理以及设备自动化测试实践 (零散知识梳理总结) 此文为转载,感谢作者 目录 众所周知,安卓单台设备的UI自动化测试已经比较完善了,有数不清的自动化框架或者工具。但是介绍多设备管理的内容并不多,当手里的手机多了之后,要做自动化测试平台,这块的东西又不得不碰,摆脱USB限制,接入WiFi,才能更加自由 框架介绍 1.ATX ATX(AutomatorX) 是一款开源的自动化测试工具,支持测试iOS平台和Android平台的原生应用、游戏、Web应用。 使用Python来编写测试用例,混合使用图像识别,控件定位技术来完成游戏的自动化。附加专用的IDE来完成脚本的快速编写。 atx-agent 运行在手机的内部,为手机增加了远程控制,自动化的功能。 atx-server 最重要的功能,是将 atx-agent 汇总到一个网页上展示,并提供一个API可以获取所有设备的列表 2.uiautomator UIAutomator是为数不多的Android官方支持的自动化框架之一,UIAutomator随着Android版本发布而更新。作为基于控件的自动化框架,UIAutoamtor的整体框架及API简单明晰,非常容易上手,发布后便受到了不少开发人员的好评,但仍有部分开发人员觉得不支持resourceId检索控件有点儿可惜。官方在随后的Level

Python-UiAutomator2实现Android自动化测试

ぃ、小莉子 提交于 2020-04-27 12:09:50
本帖转自搜狗测试公众号 【一、前言】 基于Python-UiAutomator2实现Android自动化测试,小编在Android应用的自动化性能测试中进行了实践。本篇将简单介绍python中使用adb、aapt命令的方法以及Python-UiAutomator2使用,后续文章将对环境搭建以及自动化性能测试进行介绍,希望能给大家一些微薄的帮助。 【二、python中使用adb、aapt命令】 在python中使用adb命令,可以导入os模块 1、简单的adb命令 如:os.system('adb devices) 2、稍微复杂的adb命令 如:os.system('adb shell "dumpsys activity | grep "com.sogou.map.android.***.*""') 3、将adb读出的内容保存(os.system不支持读取,os.popen支持读取) 如:out = os.popen('adb shell "dumpsys activity | grep "com.sogou.map.android.***.*""').read() 在python中使用aapt命令 aapt即Android Asset Packaging Tool,可以在Android SDK的platform-tools目录下找到该工具。aapt可以查看、创建

toast提示信息获取和Monkey笔记

蹲街弑〆低调 提交于 2020-04-24 22:50:45
获取toast toast提示信息出现场景:用户输入用户名和密码后,提示的'登录成功', 用之前的定位方法获取不了,需要 Uiautomator2来获取 安装node.js (使用 npm 或 node 验证) node-v8.11.3-x64.msi(windows) 或 node-v8.10.0.pkg(mac) 进行安装 安装cnpm (使用cnpm验证) npm install -g cnpm --registry=https://registry.npm.taobao.org 下载 appium-uiautomator2-driver cnpm install appium-uiautomator2-driver 前置代码添加 desired_caps['automationName'] = 'Uiautomator2' 使用driverWait的方式寻找 def find_toast(driver, message, timeout=3): """ # message: 预期要获取的toast的部分消息 """ message = "//*[contains(@text,'" + message + "')]" # 使用包含的方式定位 ​ element = WebDriverWait(driver, timeout, 0.1).until(lambda x: x