appium是一个开源框架,相对来说还不算很稳定.转载请注明出处!!!! 前些日子,配置好了appium测试环境,至于环境怎么搭建,参考:http://www.cnblogs.com/tobecrazy/p/4562199.html 接下来我们研究一下测试知乎Android客户端.自行下载 配置目录如下:把知乎客户端命名为zhihu.apk 编写基于java testng的测试用例: 由于本人是熟悉selenium webdriver,所以在Android对象识别时,采用的策略和selenium…
appium自动化测试之UIautomatorviewer元素定位 标签(空格分隔): uiautomatorviewer元素定位 前面的章节,已经总结了怎么搭建环境,怎样成功启动一个APP了,这里具体介绍一下关于UIautomatorviewer的元素定位: 所有的关于自动化的测试,其实都是通过定位页面的元素,识别元素来,来操作进行界面的操作,从而进行判断是否符合一个预期的结果的: 下边主要介绍一个uiautomatorviewer这个工具,uiautomatorviewer是Android-…
[本文出自天外归云的博客园] 简介 以下用来做自动化测试的这款app叫最爱抓娃娃,以后会改名为网易抓娃娃. 下文提到的appiumier项目里会包含用来测试的apk包以及自动化测试代码. 先说一个坑 随着Android机高度定制的大潮,有些手机是这样的,比如Vivo x9s,你在做测试调试的过程中最终会发现跳转到某些页面后driver却进不去这个页面,page_souce也没法打印,所以什么元素你都获取不到.唯一的解决办法就是换个手机.后来我换了一个中兴手机,问题消失了. 准备工作 这里我列举下…
总会有人问微信的自动化测试怎么做.其实我不太明白,为啥你要对ta做自动化测试啊,除非你们公司产品是基于微信做的开发否则没必要.即使一个公众号我也觉得没必要做自动化测试,基本功能点下没问题就可以了,毕竟都是配置的,除非你后台配置错了.(有时候真搞不懂这胡乱的测试,你咋不把整个微信都测一遍啊) 微信的本质 微信其实就是一个混合的app,客户端里嵌入的webview,明白这个就好说了.大家一定要注意,app中的native可以用uiaotumator来查看元素,但webview里的ta是不行的可以使用…
Appium自动化测试- Appium环境的安装与配置Appium中文文档: https://github.com/appium/appium/tree/master/docs/cn Appium的安装比较复杂,网上的教程也比较多,但是好多都不全,按照那些教程一般都会安装失败,我是看了好多教程及评论才安装成功了,所以在此总结一下.如果安装java版就不用安装Python了,跳过步骤3: 一. 安装并配置JDK,,建议1.7,Java SDK的安装很简单,记得配置系统变量.cmd命令行输入java…
方法一 使用SDK中附带的uiautomatorviewer来定位 在SDK安装目录下的tools下有个uiautomatorviewer.bat批处理文件点击运行 运行后(注意appium desktop运行状态才能使用工具进行定位) 方法二 使用appium desktop进行定位 启动 运行 配置 { "platformName": "Android", "platformVersion": "7.1.1", "…
1.ADB执行Shell命令 a.如果电脑上已装Appium,那么需要在高级设置里勾选 Relaxed Security. 如图:     b.cmd命令行启动appium appium --relaxed-security 2.用mobile:shell输入法的实现 *前提:先在设备上安装ADB输入法,安装ADB输入法的方法自行百度,很简单 https://www.baidu.com/ *具体的实现代码: //*注释1:切换输入法方法 Dictionary<string,Object> ar…
安装前准备: Python 安装包下载       选择想要想在的python包Node-v6.11.2下载安卓SDK下载appium_forwindows下载 以上四个文件下载下来后,分别解压安装,无特殊要求,下一步->下一步. 环境变量添加 以下这些添加到系统变量中的 path 变量中.不要说不知道怎么加哦...... C:\Python27/ -----------------python默认安装的话是这儿 C:\XXXXXXX\sdk\tools------------------SDK…
1.先获取session,实例化driver 2.自动安装APP //安装driver.InstallApp("APP的路径"); //判断是否安装完成,返回true\false bool isInstalled = driver.IsAppInstalled("app包名"); 3.重启APP //重装过后要唤起APP driver.ResetApp(); 4.卸载 driver.RemoveApp("APP包名"); 5.关闭APP //关闭…
Android自动化测试之Monkeyrunner学习笔记(一) 因项目需要,开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括Monkey.Monkeyrunner.Athrun.appium,目前仍在了解学习android测试框架.CTS等.本文主要为前段时间学习总结,由于刚接触不久,故本文难免会有些肤浅,大神请绕走~ [目录] 1.Monkeyrunner简介 2.Monkeyrunner工具特性 3.Monkeyrunner工具同Monkey工…
Appium 简介 参考官网文档说明:http://appium.io/docs/en/about-appium/intro/ Appium官方文档上介绍,Appium 是一个自动化测试的开源工具,支持 iOS 平台和 Android 平台上的原生应用,web 应用和混合应用. “原生应用”是指那些用 iOS 或者 Android SDK 写的应用. “web 应用”是指使用移动浏览器访问的应用(Appium 支持 iOS 上的 Safari 和 Android 上的 Chrome). “混合应…
Android自动化测试之使用java调用monkeyrunner 众所周知,一般情况下我们使用android中的monkeyrunner进行自动化测试时,使用的是python语言来写测试脚本.不过,最近发现可以用java调用monkeyrunner Api,用java语言写测试脚本.   于是,就简单研究了一下.这里做一些总结.希望有对在研究的午饭可以有所用处. 开始时,搜素到一些零碎的教程,说使用java调用monkeyrunner时,需要导入android sdk  tools路径下的li…
Android自动化测试之环境搭建 一.Android-sdk介绍 SDK(Software development kit)软件开发工具包.被软件开发工程师用于为特定的软件包.软件框架.硬件平台.操作系统等建立应用软件的开发工具的集合.Android是google公司推出的手机开发平台.Android-sdk就是指Android专属的软件开发工具包. Android-sdk中我们最常用的就是tools和Platformtools文件夹中的工具. 二.工具安装 1.android-sdk只需…
Android自动化测试之MonkeyRunner录制和回放脚本(十一) 分类: 自动化测试 Android自动化 2013-02-22 10:57 7346人阅读 评论(2) 收藏 举报 androidAndroidANDROIDMonkeyRecordermonkeyrunnerMonkeyRunnerMonkeyrunner 对于MonkeyRunner,有些人可能会想,既然是Android自动化测试,离不开测试脚本,那么,我们可不可以录制测试脚本呢,答案是可以的. 我们先看看以下monk…
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u011436666/article/details/53998332 在之前的文章Android自动化测试之Monkey中我们了解过了Monkey的4大类命令和基本使用,当我们运行Monkey之后,我们会发现它的日志输出是很有规律的,因此很有必要对Monkey事件及其输出日志做一个了解. 1.Monkey事件 Monkey事件是用来模拟用户的常规操作的,对手机进行稳定性测试,主要可以分为11大类事…
1. 获取driver appium通过生成driver来识别和操作app的UI元素.生成driver时,需要给出被测设备的相关信息.appium官方上的例子如下: https://github.com/appium-boneyard/sample-code/blob/master/sample-code/examples/java/appium-generic-test/src/test/java/AndoridBrowserLocalTest.java public static Andro…
黑屏 在做移动端自动化测试过程中,android模拟器启动黑屏的问题一直困扰着我,网上找了许多方法尝试了都不能解决我的问题,最后重新安装了镜像文件,问题才得以解决,当然并不是网上的解决办法都是错的,只是引起黑屏的问题可能有多种,下面我将收集到的解决方法汇总一下,以供大家参考: 打开sdk目录下的system-images文件夹,将安装的镜像文件删除,然后打开SDK Manager,点击select new检测更新,选择对应的版本重新安装 长按电源键进行开机操作 重新选择设备,设备的分辨率不要超过…
本文由爱奇艺技术团队原创分享,原题<爱奇艺Android客户端启动优化与分析>. 1.引言 互联网领域里有个八秒定律,如果网页打开时间超过8秒,便会有超过70%的用户放弃等待,对Android APP而言,要求更加严格,如果系统无响应时间超过5秒,便会出现ANR,APP可能会被强制关闭,因此,启动时间作为一个重要的性能指标,关系着用户的第一体验. 爱奇艺安卓APP非常重视启动速度的优化,本文将从启动过程.启动时间测量.启动优化.以及后续监控等方面分享我们在启动优化方面积累的经验.   相关文章…
Appium自动化部署: 1)安装appium桌面程序安装:超链接 2)安装客户端 pip install appium-python-client 3)安装服务器 安装 Nodejs 4)连接appium服务 # 连接appium # appium服务器地址 command_executor = "http://127.0.0.1:4723/wd/hub" #默认 # 所需能力:http://appium.io/docs/cn/writing-running-appium/caps/…
  Appium使用平台厂商提供的自动化框架: 1.ios 苹果的UIAutomation 2.android google的UIAutomator Appium底层使用厂商提供的自动化框架,就不需要进行第三方的编译或者将框架运用到待测应用中,我们测试的应用就是待发布应用.   在selenium中,特别是selenium1中,web自动化是将执行的操作转化为一段段javascript,selenium2中大大提高了自动化质量和效率,原因也是因为直接使用浏览器提供的api,直接操作浏览器页面元素…
今天我们来聊聊自动化测试过程中常用的adb命令. 简介 首先介绍下什么是adb,adb全称叫“android debug bridge”,翻译过来就叫调试桥,通过命令行指令,可让你与移动端设备进行相互通信.adb 命令便于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell(可用来在设备上运行各种命令)的访问权限.它是一种客户端-服务器程序,包括以下三个组件:1.客户端:用于发送命令.客户端在开发计算机上运行.您可以通过发出 adb 命令从命令行终端调用客户端.2.守护进程 (…
用appium开发移动端自动化测试脚本这么长时间,还没有认证的了解下它的原理是什么,到底是如何实现的呢? 1.先看一个Appium加载的过程图解(来自:了解appium自动化的工作原理--https://blog.csdn.net/jffhy2017/article/details/69220719/) Appium的加载过程 1)调用Android adb完成基本的系统操作 2)向Android上部署bootstrap.jar 3)Bootstrap.jar Forward Android的端…
作业要求的博客链接:https://edu.cnblogs.com/campus/nenu/2016CS/homework/2505 分析产品:石墨文档Android客户端 第一部分 调研和评测 1.下载并使用,按照描述的bug定义,找3~5个功能性的比较严重的bug. BUG定义:软件的缺陷 BUGS: 1.1导入和导出文档格式错乱问题 图一是测试文档在电脑word的格式,可以看到有页眉和页码,图二是在手机wps打开测试文档,页眉和页码也存在,图三是将测试文件导入石墨文档中,出现文字排版错乱,…
目录 1.关键概念 2.安装过程 2.1.安装nodejs 2.2.安装appium 2.3.安装Android SDK 2.4.安装模拟器 2.5.安装Python3 2.6.安装appium Client 1.关键概念 appium在移动自动化领域非常火,但是其环境搭建过程复杂,给初学者带来了很多困难,为此特整理出了一个简明的搭建过程. appium 一款开源,跨平台的移动端自动化测试框架.它可以测试native,hybrid,移动端web和web apps. nodejs nodejs是运…
如果你还想从头学起Appium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1693896.html 前言 前面介绍过根据id,classname, accessibilityid,xpath来定位元素,其他这些方法底层都是利用了 UI Automator 的 API 功能实现的 UI Automator 介绍 UI Automator 测试框架提供了一组 API 来构建 UI 测试,用于在用户应用和系统应用中执行交互 利用 UI…
如果你还想从头学起Appium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1693896.html webview 简介 WebView是android中一个非常重要的控件 它的作用是用来展示一个web页面,它使用的内核是 webkit 引擎,Android 4.4版本之后,直接使用 Chrome 作为内置网页浏览器 简单理解:就是App 中内嵌了一个浏览器 类比:Web 浏览器里面的 iframe 做 webview 自动化测试…
网上有很多例子来演示Android客户端和服务器端数据如何实现交互不过这些例子大多比较繁杂,对于初学者来说这是不利的,现在介绍几种代码简单.逻辑清晰的交互例子,本篇博客介绍第四种: 一.服务器端: 代码1:添加名为"AndroidServerServlet.Java"的文件 package com.ghj.packageofservlet; import java.io.IOException; import java.io.PrintWriter; import javax.serv…
最终效果: 页面布局main.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent…
申明:MobileIMSDK 目前为个人维护的原创开源工程,现陆续整理了一些资料,希望对需要的人有用.如需与作者交流,见文章底签名处,互相学习. MobileIMSDK开源工程的代码托管地址请进入 Git@OSC:点击进入 MobileIMSDK的Android客户端SDK文档:点击进入 学习交流 讨论学习和资料区:点此进入 推荐 移动端即时通讯交流: 215891622 推荐 bug/建议发送至:jb2011@163.com [写在前面] MobileIMSDK的Android客户端Demo工…
在上一篇文章<基于mina框架的GPS设备与服务器之间的交互>中,提到之前一直使用superwebsocket框架做为IIS和APP通信的媒介,经常出现无法通信的问题,必须一天几次的手动回收程序池,甚至重起服务器,通常周末接到一个陌生电话,就是说客户端无法登录了,说多了都是泪.痛定思痛,开始找解决方案,其实superwebsocket以IIS做为宿主,就注定他可能不稳定了,当然,它部署非常方便:为了稳定,我开始尝试使用SuperSocket,当然,这也注定了后期部署会麻烦些:生活就是这样哈,鱼…