Appium
可口可乐的围脖
这个作者很懒,什么都没留下…
展开
-
Appium - iOS Mac环境搭建
Appium - iOS Mac环境搭建作者: Max.Bai时间: 2014/101. iOS开发环境搭建 1.1系统要求 MacOS X 10.7 or higher, 10.9.2 recommended 1.2 xcode要求 xcode6.0(Appium 1.3), xcode5.0(App转载 2014-11-06 10:03:59 · 918 阅读 · 0 评论 -
Appium - iOS 各种问题汇总
Appium - iOS 各种问题汇总作者: Max.Bai时间: 2014/10Appium - iOS 各种问题汇总 1. Appium 滑动: swipe 有三种方式: 第一种:swipeJavascriptExecutor js = (JavascriptExecutor) driver;HashMap swipeObject =转载 2014-11-06 10:04:02 · 4952 阅读 · 0 评论 -
Appium-安装Android SDK on Windows
Appium-安装Android SDK on Windows作者: Max.Bai时间: 2014/09Android 开发环境搭建-Windows1. JDK安装安装Java JDK 1.6 以上,并设置JAVA_HOME 环境变量Path 添加:%JAVA_HOME%\bin2. Android SDK for windows 安装安装An转载 2014-11-06 10:05:40 · 864 阅读 · 0 评论 -
Appium - Android windows测试环境搭建
Appium - Android windows测试环境搭建作者: Max.Bai时间: 2014/09Appium Android 环境搭建1. 准备环境 Appium测试环境需要安装Android SDK 环境为在windows系统上安装Appium server。 需要安装.net 4.5转载 2014-11-06 10:06:31 · 617 阅读 · 0 评论 -
Appium for windows 环境安装搭建部署和第一个实例demo
注:本文适用于AppiumForWindows-1.0.0以前版本,AppiumForWindows-1.0.0之后版本,编写中一、安装android的SKD下载URL:http://developer.android.com/intl/zh-cn/sdk/index.html配置系统环境变量ANDROID_HOMED:\adt\adt-bundle转载 2015-01-07 13:41:14 · 1026 阅读 · 0 评论 -
Android自动化测试中AccessibilityService获取控件信息
原著出处(这里顺便对先驱表示感谢,省得我多走弯路,所以这里直接转载过来,我们没有必要做重新造轮子的事情,既然先驱们已经帮我们把轮子造好了):http://blog.csdn.net/itfootball/article/details/21953763AccessibilityService为一个响应用户发送AccessibilityEvent事件的服务类,主要用作对于一些辅助转载 2015-01-08 13:09:39 · 4419 阅读 · 2 评论 -
UiAutomator系列——Appium Server源码分析之作为Bootstrap客户端(011)
Appium Server拥有两个主要的功能:它是个http服务器,它专门接收从客户端通过基于http的REST协议发送过来的命令他是bootstrap客户端:它接收到客户端的命令后,需要想办法把这些命令发送给目标安卓机器的bootstrap来驱动uiatuomator来做事情通过上一篇文章《Appium Server 源码分析之启动运行Express http服务器》我们转载 2015-01-08 13:35:10 · 1748 阅读 · 0 评论 -
Appium中文输入问题的一些探索
Appium输入中文的问题在使用Appium做手机端的自动化测试时,你可以会遇到输入中文的问题。但是由于Appium是三个自动化测试工具的集合,所以遇到的中文问题也可能会比较难说清楚。Appium支持iOS、Android和FireFoxOS三种操作系统。但是FireFoxOS一般人都不用,所以,文章中它是最后一次露面了。Appium在iOS端自动化测试底层使用的是官方的UI转载 2015-01-08 13:40:56 · 656 阅读 · 0 评论 -
Appium基于安卓的各种FindElement的控件定位方法实践和建议
AppiumDriver的各种findElement方法的尝试,尝试的目标应用是SDK自带的Notepad应用。1. findElementByName1.1 示例[java] view plaincopyel = driver.findElementByName("Add note"); assertThat(el.getText(),equalTo("Ad转载 2015-01-08 13:49:18 · 747 阅读 · 0 评论 -
Appium根据xpath获取控件实例随笔
如文章《Appium基于安卓的各种FindElement的控件定位方法实践》所述,Appium拥有众多获取控件的方法。其中一种就是根据控件所在页面的XPATH来定位控件。本文就是尝试通过自己的试验来尝试对Appium如何用xpath来定位控件做一个阐述,当中如有不对的地方敬请大家指出。1. 背景本文尝试使用的试验对象是SDK自带的NotePad应用实例,假设已经有两个Notes分别是“转载 2015-01-08 13:51:00 · 922 阅读 · 0 评论 -
UIAutomator中滚动ListView获得目标TextView控件对象的经验点滴
当创建一个UiScrollable对象时,如果指定的参数是new UiSelector().scrollable(true),那么会出现以下问题当可滚动控件(比如ListView)不满一页不需要滚动时,创建的UiSrollable对象返回值是为空的。所以以下代码是错误的:[java] view plaincopy//Find out the new ad转载 2015-01-08 15:12:52 · 1374 阅读 · 0 评论 -
传递给Appium服务器以开启相应安卓Automation会话的Capabilities的几点说明
Desired Capabilities是由客户端发送给Appium服务器端的用来告诉服务器去启动哪种我们想要的会话的一套键值对集合。当中也有一些键值对是用来在自动化的过程中修改服务器端的行为方式的。比如,我们可以把键为platformName的capability的值设置成iOS来告诉服务器我们想要开启的是一个iOS的会话,而非Anddroid的会话。或者我们可以把键为safariAllowPo转载 2015-01-08 15:20:14 · 698 阅读 · 0 评论 -
Robotium之Android控件定位实践和建议(Appium/UIAutomator姊妹篇)
本人之前曾经撰文描述Appium和UIAutomator框架是如何定位Android界面上的控件的。UIAutomator定位Android控件的方法实践和建议Appium基于安卓的各种FindElement的控件定位方法实践和建议今天我们换一个渊源更留长,当今更盛行的框架Robotium,实践下看它又是如何对控件进行定位的。1. 背景为保持这个系列的一致性,我转载 2015-01-08 15:35:45 · 516 阅读 · 0 评论 -
使用uiautomator做UI测试
在Android 4.1发布的时候包含了一种新的测试工具– uiautomator ,uiautomator是用来做UI测试的。也就是普通的手工测试,点击每个控件元素 看看输出的结果是否符合预期。比如 登陆界面 分别输入正确和错误的用户名密码然后点击登陆按钮看看是否能否登陆以及是否有错误提示等。功能性或者黑盒UI测试不需要测试人员了解程序如何实现的,只需要验证各种操作的结果是否符合预期转载 2015-01-08 22:16:02 · 729 阅读 · 0 评论 -
UiAutomator系列——UiAutomator源码分析之UiAutomatorBridge框架(003)
上一篇文章《UIAutomator源码分析之启动和运行》我们描述了uitautomator从命令行运行到加载测试用例运行测试的整个流程,过程中我们也描述了UiAutomatorBridge这个类的重要性,说它相当于UiAutomation的代理(我们都知道UiAutomator是通过UiAutomation和AccessibilityService进行连接然后获取界面空间信息和注入事件的).那么今转载 2015-01-08 13:14:19 · 626 阅读 · 0 评论 -
Appium和Robotium在文字输入上的区别
近来在学习研究移动平台 自动化测试时发现Appium和Robotium在对文本框进行输入时有一定的区别:Appium在输入文字时需要调用系统键盘Robotium在输入文字是根本不需要调出键盘,文字很快速的就输入完成,感觉不是输入的,而是Copy&Paste我个人认为造成这种区别的原因应该如下(源码分析验证:TBD):Appium是基于UIAutomator框架实现的。App转载 2015-01-08 13:38:41 · 437 阅读 · 0 评论 -
Robotium源码分析之Instrumentation进阶
在分析Robotium的运行原理之前,我们有必要先搞清楚Instrumentation的一些相关知识点,因为Robotium就是基于Instrumentation而开发出来的一套自动化测试框架。鉴于之前本人已经转载和编写了Instrumentation的一些文章,所以建议大家如果没有看过的还是翻看下先对Instrumentation有个基本的理解。然后带着疑问再来看这篇文章看是否能帮上自己。既转载 2015-01-08 13:42:33 · 792 阅读 · 0 评论 -
Robotium源码分析之运行原理
从上一章《Robotium源码分析之Instrumentation进阶》中我们了解到了Robotium所基于的Instrumentation的一些进阶基础,比如它注入事件的原理等,但Robotium作为一个测试框架,其功能远不止于只是方便我们注入事件,其应该还包含其他高级的功能,参照我们前面其他框架如MonkeyRunner,UiAutomator和Appium的源码分析,我们知道一个移动平台自动转载 2015-01-08 13:43:27 · 592 阅读 · 0 评论 -
【技巧】安卓版按键精灵手机抓抓 取色取坐标 获取屏幕触点坐标
http://bbs.anjian.com/thread-519563-1-1.html下载下了按键精灵安卓版。找了一圈也没找到我们可爱的抓抓工具(我没用电脑),录制也没有。点击屏幕,都不知道点击坐标是什么。 没办法。自己本来想编个小脚本取坐标。一直没成功。最后让我在手机上找到了办法。 依次打开手机:系统设置>开发者选项>指针位置(屏幕叠加层显示当前触摸数据) O转载 2015-01-26 17:53:26 · 28223 阅读 · 1 评论 -
WebDriver 如何获取页面中的隐藏元素(悬浮菜单)
在自动化测试过程中,由于javascript的使用,我们常常需要点击一些鼠标经过显示的菜单等元素,这时需要触发该元素的鼠标经过事件。使用WebDriver有以下两种实现。比如,要点击Add New菜单。但要先将鼠标指向Posts才会显示该菜单。1. 使用Antions[java] view plaincopyprint?public void moveToE转载 2015-01-08 16:16:19 · 3784 阅读 · 0 评论 -
UiAutomation系列——Android4.3引入的UiAutomation新框架官方简介(001)
译者序:Google在Android 4.3发布时提供了一套新的UiAutomation框架来支持用户界面自动化测试,该框架通过运用已有的Accessibility APIs来模拟用户跟设备用户界面的交互:比如获取窗口界面控件和注入事件等。如在4.3之前UiAutomator工具是通过InputManager或者更早的WindowManager来注入KeyEvent等,4.3之后用的就是新框架Ui转载 2015-01-08 13:07:19 · 922 阅读 · 0 评论 -
UiAutomator系列——Appium Server 源码分析之启动运行Express http服务器(010)
通过上一个系列Appium Android Bootstrap源码分析我们了解到了appium在安卓目标机器上是如何通过bootstrap这个服务来接收appium从pc端发送过来的命令,并最终使用uiautomator框架进行处理的。大家还没有这方面的背景知识的话建议先去看一下,以下列出来方便大家参考:《Appium Android Bootstrap源码分析之简介》《Appium转载 2015-01-08 13:32:32 · 1013 阅读 · 0 评论 -
为网上流行论点“UIAutomator不能通过中文文本查找控件”正名
1. 问题描述和起因相信大家学习UIAutomator一开始的时候必然会看过一下这篇文章。Android自动化测试(UiAutomator)简要介绍因为你在百度输入UIAutomator搜索的时候,该文章是排在第一位的。但是里面有一段说法说UIAutomator不能支持通过中文文本查找控件,这个说法害人不浅,如果不是自己去实践调查过,必然也会轻易放弃UIAutomator以及使转载 2015-01-08 14:02:19 · 621 阅读 · 0 评论 -
Appium环境配置笔记1--使用Maven解决包依赖
上一篇安装文档描述了在Appium环境配置时介绍了Maven的安装和配置,而事实上Maven对于使用Appium来说并不是必须的,它只是方便我们管理整个Java测试项目而已。在此之前并没有用过Maven,百度百科给出的定义如下:Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。Maven这个单词来自于意第绪语,意为知识的积累,转载 2015-01-08 15:21:51 · 1771 阅读 · 0 评论 -
Appium环境配置笔记2 -- Android SDK的路径不能有空格
搭配好环境准备跑第一个测试脚本的时候出现一个错误:“error: Logcat capture failed: spawn ENOENT”几经艰辛,发现问题是我的android sdk路径存在空格导致的“D:\Develops\Android SDK”。当把空格去掉问题就解决了“D:\Develops\AndroidSDK”转载 2015-01-08 15:22:32 · 1035 阅读 · 0 评论 -
UIAutomator定位Android控件的方法实践和建议(Appium姊妹篇)
在本人之前的一篇文章Appium基于安卓的各种FindElement的控件定位方法实践和建议>>第二章节谈到Appium可以通过使用UIAutomator的方法去定位Android界面上的控件,当时只是一笔带过举了个例子。如该文给自己的承诺,今天特撰写此文以描述UIAutomator各种控件定位的方法,以作为前文的姊妹篇互通有无。1. 背景为了和前文达成一致,这次的实践对象同样也是使用SD转载 2015-01-08 15:45:26 · 1079 阅读 · 0 评论 -
Android自动化测试(UiAutomator)简要介绍(原)
转自:http://blog.csdn.net/u010961631/article/details/9616581一、一个BUG引发的问题 如果研发过程中有一个BUG:“不断的切换手机语言出现花屏现象”。这个问题我们如何验证呢?我想,最好的方式应该是自动化测试。 那么,自动化测试可以完成哪些任务呢? 简单的说,那些重复性的测试工作,都可以转载 2015-01-08 16:20:12 · 460 阅读 · 0 评论 -
Appium 服务器端从启动到case完成的活动分析
此文的目的主要是通过分析Appium Server打印出来的log,加深对Appium Server所扮演角色的理解。这整一个过程是由一个Test Case开始执行到结束,测试的对象是SDK自带的NotePad.apk。 Test Case很简单:打开Notepad程序,然后点击安卓的Menu Options按钮调出“Add Note”菜单按钮,然后点击该按钮,然后完成测试。转载 2015-01-08 12:58:51 · 580 阅读 · 0 评论 -
UiAutomator系列之——UiAutomator源码分析之注入事件(004)
上一篇文章《UiAutomator源码分析之UiAutomatorBridge框架》中我们把UiAutomatorBridge以及它相关的类进行的描述,往下我们会尝试根据两个实例将这些类给串联起来,我准备做的是用如下两个很有代表性的实例:注入事件获取控件这一篇文章我们会通过分析UiDevice的pressHome这个方法来分析UiAutomator是如何注入事件的,下一篇文章会描述如何转载 2015-01-08 13:15:24 · 742 阅读 · 0 评论 -
基于UIAutomator+Jenkins自动化测试框架实现
一. UIAutomator之原始Report:如您所见,当你执行完毕UIAutomator测试脚本后,会有形如如下的反馈: 众所周知,图中的信息是在UIAutomator工具已定义规范:二. 如何将UIA Report(Txt)转换为Junit Report(Xml)首先我们看看Junit Report的样子(ant转载 2015-01-08 13:37:17 · 965 阅读 · 0 评论 -
AppiumDriver类架构
appium原文:http://blog.csdn.net/yushuanggui/article/details/34829717转载 2015-01-08 15:19:14 · 1024 阅读 · 0 评论 -
appium for windows 环境搭建
原文:http://blog.csdn.net/zwq0216/article/details/20696387最近一直研究appium,据说可以一套代码垮2个平台,自己动手试了下,但是网上的资料少之又少,先贴出自己安装的流程和遇到的问题,一起分享1安装Nodejs下载nodejs安装包(http://nodejs.org/download/)安装转载 2015-01-08 15:24:13 · 467 阅读 · 0 评论 -
monkey源码分析之事件注入方法变化
在上一篇文章《Monkey源码分析之事件注入》中,我们看到了monkey在注入事件的时候用到了《Monkey源码分析番外篇之Android注入事件的三种方法比较》中的第一种方法,通过Internal API的WindowManager的injectKeyEvent之类的方法注入事件。这种方法在android api level 16也就是android4.1.2之后已经发生了变化:在此转载 2015-01-08 15:32:03 · 447 阅读 · 0 评论 -
UiAutomator系列——UiAutomator源码分析之获取控件信息(005)
根据上一篇文章《UiAutomator源码分析之注入事件》开始时提到的计划,这一篇文章我们要分析的是第二点:如何获取控件信息我们在测试脚本中初始化一个UiObject的时候通常是像以下这个样子:[java] view plaincopyUiObject appsTab = new UiObject(new UiSelector().text("Apps"转载 2015-01-08 13:17:15 · 700 阅读 · 0 评论 -
UiAutomator系列——Appium Android Bootstrap源码分析之启动运行(009)
通过前面的两篇文章《Appium Android Bootstrap源码分析之控件AndroidElement》和《Appium Android Bootstrap源码分析之命令解析执行》我们了解到了Appium从pc端发送过来的命令是如何定位到命令相关的控件以及如何解析执行该命令。那么我们剩下的问题就是bootstrap是怎么启动运行的,我们会通过本篇文章的分析来阐述这个问题,以及把之前学习转载 2015-01-08 13:32:06 · 1131 阅读 · 0 评论 -
MonkeyRunner源码分析之工作原理图
花了点时间整理了下MonkeyRunner的工作原理图:ItemDescriptionWarningAuthor天地会珠海分舵转载请注明出处!Blog Addresshttp://blog.csdn.net/zhubaitian转载 2015-01-08 13:45:56 · 608 阅读 · 0 评论 -
UIAutomator创建一个Note的实例
紧接之前的创建一个Note的Appium和Robotium的实例,这里给出实现同样功能的UIAutomator的实例如下:[java] view plaincopypackage majcit.com.UIAutomatorDemo; import com.android.uiautomator.core.UiDevice; import com.android转载 2015-01-08 14:06:01 · 515 阅读 · 0 评论 -
Eclipse开发Android程序如何在手机上运行
ndroid开发不论是在真机上调试还是最终发布到真机上都非常简单,过程如下:1、安装usb驱动 手机要能与电脑相连,当然要安驱动了。效果就是你插入手机,电脑显示驱动已识别。驱动安装的官方教程:http://developer.android.com/sdk/win-usb.html 官方教程概述: 不同的Android手机有对应不同的驱动,对于Nexus One, and N转载 2015-01-08 15:38:52 · 514 阅读 · 0 评论 -
appium定位元素java篇
1、关于没有name,没有ID的元素的定位---通用篇解题思路:因为没有name,id;其实剩下的选择已不多,要么xpath,要么className。xpath木有好印象(稳定性不高,加之1.0x后需要写全路径,相当崩溃),我决定十分个人色彩的建议使用className。具体方法:用className获取所有该类型的元素;根据元素的位置确定元素的index;获取目标元素。转载 2015-01-08 15:43:54 · 582 阅读 · 0 评论 -
Windows 平台上的使用 Java 语言实现 appium 自动化程序 for Android(完整版)
首先说下楼主也是个新手,摸索了好几天天 终于完成了第一个appium程序,帖子写的不合理的地方,请大家轻喷,指导,大家一起学习。写这个帖子就是为了方便新手能快速入门,也算是自己的一种巩固吧。好了,开始直奔主题!一,环境配置篇在Windows上配置1)下载安装node.js(http://nodejs.org/download/) 安装的时候有选项,记得把环境变量添加到path路径2转载 2015-01-08 15:47:25 · 2056 阅读 · 1 评论