腾讯Android自动化测试实战3.2 Robotium原理简析

3.2 Robotium原理简析

如前文所述,一个基本的自动化测试用例主要分为获取控件、控件操作、断言三个步骤,而在实际编写测试用例的过程中,我们常常会遇到各种各样的问题,比如:

在这样的UI结构下该如何获取控件?

为何报这样或那样的错?

明明滑动了为何没有效果?

因为不同的项目有其自身的独特性与复杂性,没有任何书籍可以解决实际过程中遇到的所有问题,甚至即使求助Google搜索也可能得不到自己想要的答案。因此,对于任何一门技术而言都很有必要知其然并知其所以然,只有了解了其原理实现,才能更高效地运用在实际项目中。本节将从获取控件原理、控件操作原理、WebView支持等维度来对Robotium原理进行简要解析。

时间: 2024-11-01 12:29:12

腾讯Android自动化测试实战3.2 Robotium原理简析的相关文章

腾讯Android自动化测试实战

腾讯Android自动化测试实战 丁如敏 盛娟 等著 图书在版编目(CIP)数据 腾讯Android自动化测试实战 / 丁如敏等著. -北京:机械工业出版社,2016.10 ISBN 978-7-111-54875-1 Ⅰ. 腾-   Ⅱ. 丁-   Ⅲ. 移动终端-应用程序–程序设计   Ⅳ. TN929.53 中国版本图书馆CIP数据核字(2016)第223713号 腾讯Android自动化测试实战 出版发行:机械工业出版社(北京市西城区百万庄大街22号 邮政编码:100037) 责任编辑:

腾讯Android自动化测试实战导读

前 言 Preface 为什么要写这本书 早在2010年年底,我们团队就有出一本关于移动互联网测试书籍的计划(那时候移动互联网测试书籍基本没有),当时计划的内容涉及面比较广,涵盖测试设计.测试用例管理.测试流程.自动化测试.专项测试等领域.不过,由于各种原因被搁浅,确实有点儿可惜,否则移动互联网测试国内的第一本书当时就面世了.这次终于又有机会整理这些年的测试经验并形成一本书了,借此可以跟业界的同行一起交流切磋. TMQ(Tencent Mobile Quality)腾讯移动品质中心,是腾讯内部最

腾讯Android自动化测试实战3.3.3 修改Robotium以支持X5WebView

3.3.3 修改Robotium以支持X5WebView 本节中的X5WebView指QQ浏览器团队出品的腾讯X5内核中的WebView.除了QQ.微信.应用宝等众多腾讯内部产品在使用X5内核外,京东.58同城等众多腾讯外部的合作伙伴也在使用X5内核. 腾讯X5网站:http://x5.tencent.com/. 然而Robotium本身并不支持获取X5WebView中的元素,因此无法对使用了X5内核的Web页面进行自动化测试,而通过3.2.2节中介绍的Robotium支持WebView原理可知

腾讯Android自动化测试实战1.1 Android自动化测试框架概述

1.1 Android自动化测试框架概述 2007年Android开源时,Monkey.Instrumentation和MonkeyRunner这3个测试框架,是跟Android源码一起发布的,这也是最早可用的自动化测试框架,那几年大家基本都是用这些框架来开展自动化相关测试工作的.2010年,第一个第三方的测试工具Robotium(基于Instrumentation)发布了,不少测试人员就转用这个框架,Robotium社区逐步发展起来.图1-1所示为Robotium热度随时间变化的趋势. 201

腾讯Android自动化测试实战第2章

第2章 自动化测试框架及应用领域综述 近几年,随着移动互联网的快速发展,智能终端的App应用越来越广,Android测试技术也备受重视,新的终端自动化测试框架层出不穷,本章笔者就自动化测试的入门知识及其应用做一个浅显的梳理与总结,与读者一同探讨移动终端自动化测试思路和方案.同时,本书主要也是围绕本章节提到的基础框架及其应用场景进行实战分析与演练,以亲身体验总结出实际项目经验,给准备实施或正在实施自动化测试的读者提供一些帮助和建议. 自动化测试在软件测试的各大沙龙.行业峰会以及培训课程中都是一个热

腾讯Android自动化测试实战第3章

第3章 Robotium框架工作原理及实践 2010年,当Android还处于发展早期时,拥有丰富自动化测试经验的Renas Reda创建了Robotium项目,在Robotium发展到4.0版本时开始支持App中的Web自动化,经过几年的发展,Robotium现在已经是一款成熟.全面.稳定的自动化测试框架.更重要的是,Robotium是一款开源的测试框架,在世界各地都有活跃的贡献者对其进行更新与维护,因此,无须担心将来Robotium会随着Android的发展而变得不可用.不易用,相反,Rob

腾讯Android自动化测试实战2.1.2 自动化测试框架基本原理

2.1.2 自动化测试框架基本原理 经过前面的一个简单的自动化测试案例,我们对Android的自动化测试有了一个感性的认识,很多有相关工作经验的测试同学也都会理解,这和PC的自动化测试思路是相通的,只不过所借助的框架不同,目前业界已经有很多成熟的开源Android端自动化测试框架,经常用到的框架代表有Robotium和UI Automator,各个框架可能在具体应用上有些不同,如有些偏稳定性,有些适用于Web应用,有些能支持跨应用,等等,但其主要思想是通过控件的位置.名称.属性等获取控件对象,并

腾讯Android自动化测试实战3.2.1 Robotium支持Native原理

3.2.1 Robotium支持Native原理 1. 获取控件原理 我们知道Android会为res目录下的所有资源分配ID,例如在布局xml文件中使用了 android:id="@+id/example_id",那么在Android工程编译时就会在R.java中相应地为该布局控件分配一个int型的ID,在Android工程中就可以通过Activity.Context或View等对象调用findViewById(int id)方法引用相应布局中的控件.因此,在测试工程中,如果是在源码

腾讯Android自动化测试实战3.1.2 Robotium提供的类

3.1.2 Robotium提供的类 Robotium对外主要提供以下几个类: By:Web元素的选择器. Condition:接口类,用于等待. RobotiumUtils:工具类. Solo:对外提供各种API. Solo.Config:Solo配置类. SystemUtils:系统级工具类. TimeOut:Solo配置类. WebElement:Web元素的抽象类. 其中Solo类是主要对外提供各种API的类,Solo类采用中介者模式,持有com.robotium.solo包下的其他类的