Appium
up1292
从事软件测试十多年,一直浑浑噩噩的,总想提高技术,学习的东西很多很杂,但都不深入。感叹自己水平有限能力一般,勉强在这行混饭吃。记录下自己的学习过程,主要是给自己看的,所以写的很乱,如果能给阅读者一丝丝帮助,那也是您自己的努力。
展开
-
Appium学习21:屏幕截图
截图方法方法1save_screenshot() 该方法直接保存当前屏幕截图到当前脚本所在文件位置。driver.save_screenshot('login.png')方法2get_screenshot_as_file(self, filename)将截图保留到指定文件路径driver.get_screenshot_as_file('./images/logi...原创 2020-02-06 16:08:48 · 446 阅读 · 0 评论 -
Appium学习20:Toast元素识别
Toast简介Android中的Toast是一种简易的消息提示框。 当视图显示给用户,在应用程序中显示为浮动。和Dialog不一样的是,它永远不会获得焦点,无法被点击。Toast类的思想就是尽可能不引人注意,同时还向用户显示信息,希望他们看到。而且Toast显示的时间有限,一般3秒左右就消失了。因此使用传统的元素定位工具,我们是无法定位到Toast元素的(传说中低调奢华有内涵)。App...原创 2020-02-06 15:32:52 · 259 阅读 · 1 评论 -
Appium学习19:元素等待
在自动化过程中,元素出现受网络环境,设备性能等多种因素影响。因此元素加载的时间可能不一致,从而会导致元素无法定位超时报错,但是实际上元素是正常加载了的,只是出现时间晚一点而已。那么如何解决这个问题呢?元素等待作用设置元素等待可以更加灵活的制定等待定位元素的时间,从而增强脚本的健壮性,提高执行效率。元素等待类型强制等待设置固定的等待时间,使用sleep()方法即可实现...原创 2020-02-06 10:17:19 · 308 阅读 · 0 评论 -
Appium学习18:Uiautomator元素定位
UIAutomator定位简介UIAutomator元素定位是 Android 系统原生支持的定位方式,虽然与 xpath 类似,但比它更加好用,且支持元素全部属性定位.定位原理是通过android 自带的android uiautomator的类库去查找元素。Appium元素定位方法其实也是基于Uiautomator来进行封装的。使用方法find_element_by_andro...原创 2020-02-06 10:12:48 · 758 阅读 · 0 评论 -
Appium学习17-2:元素定位——id定位思考
思考如果安装的版本最新的包,或者升级到了最新的版本,则启动后没有升级弹窗元素该如何处理? 跳过引导页面首次启动和非首次启动场景该如何处理?方案探索1——if条件判断有同学可能想到用if来做条件判断,判断元素是否存在,存在则点击,不存在则跳过。kyb_cancel_skip_if.pyfrom appium import webdriverdesired_caps={}...原创 2020-02-05 14:41:06 · 213 阅读 · 0 评论 -
Appium学习17:元素定位
元素定位与Web自动化测试一样,app自动化测试过程中最重要一个环节就是元素定位,只有准确定位到了元素才能进行相关元素的操作,如输入、点击、拖拽、滑动等。appium提供了许多元素定位的方法,如id定位、name定位、class定位、层级定位等等.... 接下来将会给大家来实践运用这些定位技巧。元素定位方式id name class List定位 相对定位 Xpath...原创 2020-02-05 14:37:20 · 276 阅读 · 0 评论 -
Appium学习16-2:Appium运行相关报错&解决方案
Appium服务未启动urllib.error.URLError: <urlopen error [WinError 10061] 由于目标计算机积极拒绝,无法连接。【解决方案】点击启动Appium按钮后,出现[Appium] Welcome to Appium v1.7.2提示后再运行脚本会话冲突error: Failed to start an Appium s...原创 2020-02-05 14:17:35 · 563 阅读 · 0 评论 -
Appium学习16:第一个Appium脚本
测试环境Win 10 64bit Python 3.6.3 Appium 1.8.0 Android 5.1.1 模拟器 测试App:考研帮Android版 3.1.0测试场景自动安装考研帮App(kaoyan3.1.0.apk),然后启动App测试步骤获取待测试app的packageName和Activity 配置Capability 连接设备 编辑脚本并运行 ...原创 2020-02-05 13:58:31 · 322 阅读 · 0 评论 -
Appium学习15:Capability配置简介
什么是Capabilitydesired capability的功能是配置Appium会话。他们告诉Appium服务器您想要自动化的平台和应用程序。Desired Capabilities是一组设置的键值对的集合,其中键对应设置的名称,而值对应设置的值。(如:"platformName": "Android")Desired Capabilities主要用于通知Appium服务器建立需...原创 2020-02-04 15:33:02 · 665 阅读 · 0 评论 -
Appium学习14:Appium环境搭建
环境依赖Node.js Appium Appium-desktop Appium-doctor Appium-Python-Client Python JDK Android SDK安装Node.js下载地址:https://nodejs.org/en/download/releases/注意:Node.js版本要注意与Appium兼容安装完成后在按键...原创 2020-02-01 16:00:20 · 324 阅读 · 0 评论 -
Appium学习13:Appium简介
Appium简介Appium is an open source test automation framework for use with native, hybrid and mobile web apps. It drives iOS, Android, and Windows apps using the WebDriver protocol.Appium是一个开源测试自动化...原创 2020-02-01 09:39:11 · 1755 阅读 · 0 评论 -
Appium学习12:monkeyrunner API
MonkeyRunner APIMonkeyRunner工具主要有三个类:1. MonkeyRunner2. MonkeyDevice3. MonkeyImage官方API文档 :http://www.android-doc.com/tools/help/monkeyrunner_concepts.html#1.MonkeyRunner类:Monkey...原创 2020-01-21 10:21:54 · 188 阅读 · 0 评论 -
Appium学习11:monkeyrunner简介
monkeyrunner简介MonkeyRunner工具是使用Jython(使用Java编程语言实现的Python)写出来的,它提供了多个API,通过monkeyrunner API 可以写一个Python的程序来模拟操作控制Android设备app,测试其稳定性并通过截屏可以方便地记录出现的问题。官网介绍如下The monkeyrunner tool provides an API ...原创 2020-01-21 10:13:15 · 406 阅读 · 0 评论 -
Appium学习10:Monkey日志管理
日志管理作用Monkey日志管理是Monkey测试中非常重要的一个环节,通过日志管理分析,可以获取当前测试对象在测试过程中是否会发生异常,以及发生的概率,同时还可以获取对应的错误信息,帮助开发定位和解决问题。monkey日志保存方法1. 保存在PC中2. 保存在手机上3. 标准流和错误流分开保存保存在PC中>adb shell monkey [op...原创 2020-01-21 09:59:12 · 268 阅读 · 0 评论 -
Appium学习9:Monkey自定义脚本实践
自定义脚本的稳定性测试常规Monkey测试执行的是随机的事件流,但如果只是想让Monkey测试某个特定场景这时候就需要用到自定义脚本了,Monkey支持执行用户自定义脚本的测试,用户只需要按照Monkey脚本的规范编写好脚本,存放到手机上,启动Monkey通过-f 参数调用脚本即可。测试案例启动考研帮app3.1.0,然后跳过升级提示和引导页面,进入到登录界面并输入用户名密码进行登录。...原创 2020-01-21 09:50:11 · 269 阅读 · 0 评论 -
Appium学习8:Monkey参数
monkey 参数参数分类• 常规类参数• 事件类参数• 约束类参数• 调试类参数常规类参数常规类参数包括帮助参数和日志信息参数。帮助参数用于输出Monkey命令使用指导;日志信息参数将日志分为三个级别,级别越高,日志的信息越详细。1.帮助类参数monkey -h2.日志级别$ adb shell monkey -v <even...原创 2020-01-21 09:35:27 · 196 阅读 · 0 评论 -
Appium学习7:Monkey事件
操作事件简介Monkey所执行的随机事件流中包含11大事件,分别是触摸事件、手势事件、二指缩放事件、轨迹事件、屏幕旋转事件、基本导航事件、主要导航事件、系统按键事件、启动Activity事件、键盘事件、其他类型事件。Monkey通过这11大事件来模拟用户的常规操作,对手机App进行稳定性测试。下面让我们来详细了解这11大事件。1.触摸事件触摸事件是指在屏幕某处按下并抬起的操作,可通...原创 2020-01-21 09:23:32 · 220 阅读 · 0 评论 -
Appium学习6:Monkey简介
Monkey简介在Android的官方自动化测试领域有一只非常著名的“猴子”叫Monkey,这只“猴子”一旦启动,就会让被测的Android应用程序像猴子一样活蹦乱跳,到处乱跑。人们常用这只“猴子”来对被测程序进行压力测试,检查和评估被测程序的稳定性。Android官方对这只“猴子”的描述是这样的:The Monkey is a program that runs on your emula...原创 2020-01-20 12:41:57 · 212 阅读 · 0 评论 -
Appium学习5:Package与Activity
PackagePackage 包。这是在我们的app中这个Package是唯一的,就像你身份证号码一样。在我们做app自动化时,我们就需要知道他的Package,我们知道了Package那么也就知道我们需要对哪个app做自动化。注意和.apk文件包名不同。通过UIAuto演示不同app的包名也可通过adb shell pm list package命令查找包名...原创 2020-01-16 17:04:39 · 304 阅读 · 0 评论 -
Appium学习4:adb命令实践
Android 调试桥adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试应用。Tips: 在 android_sdk/platform-tools/ 中找到 adb 工具,然后根据其具体的路径配置好环境变量。然后启动cmd 输入‘adb’即可查看是否配置成功。adb...原创 2020-01-16 16:25:41 · 385 阅读 · 0 评论 -
Appium学习3:Android模拟器安装与使用
安卓模拟器简介安卓模拟器是能在PC平台模拟安卓手机系统的模拟器软件。安卓模拟器能在电脑上模拟出安卓手机运行环境,安卓模拟器让你在电脑上也能体验安卓游戏和应用,在各大下载站都能够下载。比较常用的安卓模拟器有:Android SDK、BlueStacks,Genymotion等可在pc系统和苹果系统运行,著名的vmware虚拟机和Virtual Box虚拟机也可以模拟安卓系统,目前这些模拟器软件...原创 2020-01-16 10:41:30 · 450 阅读 · 0 评论 -
Appium学习2:元素获取工具—UI Automator
简介Android 4.3发布的时候包含了一种新的测试工具–uiautomator,uiautomator是用来做UI测试的。也就是普通的手工测试,点击每个控件元素 看看输出的结果是否符合预期。比如 登陆界面 分别输入正确和错误的用户名密码然后点击登陆按钮看看是否能否登陆以及是否有错误提示等。UI Automator是一个UI测试框架,适用于跨系统和已安装应用程序的跨应用程序功能性UI测试...原创 2020-01-16 10:35:33 · 882 阅读 · 2 评论 -
Appium学习1:初识Anrdiod SDK
下载安装首先需要安装配置好jdk环境。Android SDK包下载• 官网下载:https://android-sdk.en.softonic.com/download• 网盘下载: http://tools.android-studio.org/index.php/sdkAndroid SDK Manager安装后启动 SDK Manager.exe 程序就可以...原创 2020-01-16 09:38:18 · 311 阅读 · 0 评论