《iOS测试指南》(芈峮)-图书推荐
编辑推荐语
1. iOS移动测试领域首本本 著作,来自豆瓣的一线实战经验。
2. 开源的测试工具ynm3k之父潜心制作,带你走出iOS App的“裸奔”时代。
内容提要
芈峮编写的《iOS测试指南》是一本专注于 iOS 测试领域的书。其中重点讲述了各个测试阶段的具体实践方法,并且通过持续集成串联了各个测试阶段的活动。《iOS测试指南》中所有的测试实践并非纸上谈兵,而是出自于笔者实际工作中的探索和实践。在测试实例上有一定的简化,是为了脱离复杂的业务。《iOS 测试指南》的重点在于对方法的介绍。以下几个方面的读者可能会受益:有一定技术功底的测试工程师;有一定经验的移动测试工程师;iOS开发工程师;测试技术爱好者。
作者简介
芈峮,发音(mi jun),但是输入法需要输入(mi qun)。具体为什么我不想太较真了,害怕 发现自己把自己的名字读错30年的尴尬。也可以叫我老芈,或者厚脸皮(豆瓣的ID)等。不管名字叫什么或者昵称是什么,我就是我,一个想混进程序员队伍未果的非主流测试工程师。
目录
第1章 软件测试与iOS测试
1.1 什么是软件测试
1.1.1 测试活动何时展开
1.1.2 软件测试与软件缺陷
1.1.3 软件测试与软件质量
1.2 软件测试的类型
1.2.1 单元测试
1.2.2 集成测试
1.2.3 系统测试
1.3 iOS平台的一些性
1.4 iOS测试需要做么
第2章 iOS环境准备
2.1 开发测试设备
2.2 安装和设置Xcode
2.3 iOS开发者书
2.4 知识的准备
第3章 iOS单元测试
3.1 单元测试工具
3.1.1 OCUnit
3.1.2 GHUnit
3.1.3 GTM
3.2 单元测试实践
3.2.1 实践项目介绍
3.2.2 Model的单元测试
3.2.3 Controller和View的单元测试
3.3 单元测试的扩展工具
3.3.1 OCHamcrest
3.3.2 OCMockito
第4章 iOS的UI自动化测试
4.1 UI Automation的运行
4.2 Instruments工具的简要介绍
4.3 UI Automation入门
4.3.1 UI Automation脚本开发之前
4.3.2 UI Automation脚本编辑
4.3.3 UI Automation实践
4.3.4 UI Automation脚本的录制
4.3.5 UI Automation在真实设备上的运行
4.4 深入了解UI Automation API
4.4.1 Logger日志输出
4.4.2 Element和ElementArray
4.4.3 手势动作的模拟
4.4.4 延时处理
4.4.5 Target对象的一些系统级别的操作
4.5 测 例的组织
4.6 第三方测试工具介绍
4.6.1 TuneupJs的使用
4.6.2 ynm3k的使用
第5章 iOS Web应用程序的自动化测试
5.1 使用Selenium进行iOS Web自动化测试
5.1.1 WebDriver原理结构
5.1.2 iPhoneDriver实践
5.1.3 iPhoneDriver的缺陷
5.2 使用Appium进行iOS Web自动化测试
5.2.1 Appium初窥
5.2.2 Appium实践
5.3 Appium常用方法介绍
5.3.1 Appium控件定位方法
5.3.2 Appium控件操作方法
第6章 iOS的持续集成
6.1 持续集成工具
6.1.1 Jenkins和Hudson
6.1.2 Jenkins的安装和使用
6.1.3 Jenkins相关插件介绍
6.2 iOS持续集成实践
6.2.1 iOS Web自动化测试的持续集成
6.2.2 iOS UI自动化测试的持续集成
6.2.3 iOS单元测试的持续集成
第7章 iOS测试策略及测试方法
7.1 iOS测试策略
7.2 兼容性测试
7.3 网络流量测试
7.4 升级测试
7.5 性能测试
7.6 稳定性测试
第8章 iOS测试框架实践
8.1 iOS测试框架总览
8.2 UI Automation扩展工具实践
8.3 UI Automation驱动测试框架介绍
8.3.1 UI Automation驱动类测试框架介绍
8.3.2 Appium测试实践
8.4 非UI Automation测试框架实践
8.5 BDD测试框架介绍
8.5.1 Frank测试实践
8.5.2 再谈BDD
8.6 自动化测试框架剖析
第9章 Xcode 5测试的新特性
9.1 Xcode 5中的单元测试
9.1.1 XCTest测试框架
9.1.2 便捷的单元测试管理
9.1.3 XCTest Refactoring Tool
9.1.4 新版本的命令和持续集成
9.2 iOS持续集成工具OS X Server
9.2.1 安装配置OS X Server
9.2.2 Web端的Bots设置和持续集成
9.2.3 Xcode 5和OS X Server的双剑合璧
精彩试读
为什么要写这本书随着iOS应用开发的持续火热,iOS测试越来越受到重视。但是,由于其生态系统的封闭性,导致iOS测试方面的资料 少并且难以搜索。在一次技术交流会上认识了博文视点的任晓露老师,她鼓励我应该写一本iOS测试方面的书。这种约稿一般都会在 次时被拒 。我同样拒 了任老师的约稿,不为别的,只是因为自己水平有限。
我在平时的工作中还是不断地搜索着那些零星的资料,并且发现在iOS测试方面没有任何书籍, 没有,国外貌似也没有。又是一次技术交流会,又见到了任晓露老师,当然,又谈到了出书的事情。这次互换了联系方式,并且在之后认真考虑了出书的事情。之后在老婆大人的鼓励下,决定写一本iOS测试方面的书。心想只要动作快,就是 的 本iOS测试书籍,全当是抛砖引玉了,谁让我在豆瓣的ID是厚脸皮呢,就厚着脸皮写了出版吧。
本书的内容:在测试领域内,分歧不断,争论不断。在如何做测试、测试的目的是什么等问题上都会有很大的争议。而测试活动本身受业务需求和团队能力等因素的影响,也会有很大的不同。本书抛开争论和不同,只谈技术相关的问题,通过简单的实践介绍了通过某些工具或者框架来对应某一些测试类型。
第1章简短地介绍了测试和iOS测试,并且对本书涉及的内容范围进行了介绍。
第2章介绍了iOS开发和测试使用的基本工具。
第3章本章首先介绍单元测试的工具,之后通过实践,详细介绍了基于MVC模式的单元测试的使用方法,其中包括针对Model、Controller和View的基本的测试方法。在实践中使用到了一些 的断言工具和Mock工具。 再次针对这些工具进行了详细介绍。
第4章提到UI自动化测试, 入手点必须是官方工具。本章通过实践详细介绍了iOS官方的自动化测试工具——UI Automation,不但有实践的应对和基本API的讲解,还加入了笔者对UI自动化的总结和第三方工具的简单介绍。希望能做到深入浅出。
第5章iOS程序不只有Native应用,还有Web应用。本章结合笔者的工作经验和总结,介绍了iOS Web自动化测试的 实践,并且从组成结构上剖析了当下 的Appium和WebDriver。
第6章持续集成是现代软件开发的一种体现。没有持续集成的自动化测试都是半自动化测试。本章不但介绍了通用的持续集成工具,还基于之前章节的实践成果,进行了iOS持续集成方面的介绍。
第7章除了功能测试之外,iOS程序还需要很多的专项测试,例如兼容性测试等。本章主要介绍了几种通用的专项测试类型和方法。
第8章iOS自动化测试有很多第三方的开源工具。本章从工具本身的技术特点和实现原理上对工具进行了分类,并且对每一类工具选出了佼佼者进行实践介绍。当然,读者可以根据本章的内容写出自己喜欢的自动化工具。
第9章在2013年的第4季度,Apple公司大爆发似地发布了开发工具Xcode 5、手机操作系统iOS 7和Mac操作系统OS X 10.9。这一系列工具的发布,也带来了测试方面的一些新特性的引入。本章结合之前的内容,针对这些新特性进行了补充介绍。
……