像 google 一样测试系列之一:目录篇

作者:郑小辉 团队:腾讯移动品质中心TMQ

一:方向篇

1、左移方向

2、google单测为什么能达到70%的覆盖 的理解

3、google单测中 2种测试代码的运行机制

二:方案选型篇

1、3种模式预研

2、方案选型

三:技术篇

1、 Android层可测性预研:

(1):application可测性

(2):Activity可测性

(3):Service可测性

(4):Broadcast可测性

2、java层单元和接口测试

(1):单元测试

(2):接口测试

3、异步线程可测性

(1):new Thread()方式可测性

(2):handle.post方式可测性

(3):AsyncTask方式可测性

(4):ExecuteService方式可测性

4、函数回调可测性

(1):参数传入回调方式可测性

(2):内部回调可测性

5、Mock

(1):Android环境 Mock

(2):Android API Mock

(3):普通Mehod和Field Mock

(4):静态Method和Field Mock

6、反射调用与执行

(1):业务代码反射执行

(2):lib库代码 反射执行

7、业务代码直接调用预研

(1):业务代码直接调用

四 :流程与覆盖率篇

1、脚本方式执行 Local Unit Tests 和 Instrumented Tests

2、衡量方式 --覆盖率接入

3、CI 运行

五:实战篇

1、purify垃圾模块白盒测试实践

六:形成lib库篇

1、抽离通用性形成lib库。

未完待续......

搜索微信公众号:腾讯移动品质中心TMQ,获取更多测试干货!

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Grace development

暴力解说之首次部署NGINX

本章讲解下在项目上线部署的时候对NGINX的操作。有些童鞋在网上百度类似LNMP安装就跟着命令一条一条执行了,如果没报错还好,一旦报错就懵逼状态了。这是对自己...

1062
来自专栏JAVA技术zhai

分享30道Redis面试题,面试官能问到的我都找到了

Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到...

1882
来自专栏点滴积累

Ubuntu16.04双网卡主备配置

前几日写了一篇Ubuntu14.04双网卡主备配置,没成想变化总是这么快,今日安装某软件,提示最匹配的ubuntu版本是16.04,作为一个码农能有什么办法,只...

4425
来自专栏熊二哥

快速入门系列--WCF--06并发限流、可靠会话和队列服务

这部分将介绍一些相对深入的知识点,包括通过并发限流来保证服务的可用性,通过可靠会话机制保证会话信息的可靠性,通过队列服务来解耦客户端和服务端,提高系统的可服务数...

1977
来自专栏Java技术栈

让面试官颤抖的 HTTP 2.0 协议面试题

Http协议,对于拥有丰富开发经验的程序员来说简直是信手拈来,家常便饭。虽然天天见,但是对于http协议的问题,可能很多人在没有积极准备的情况下,不一定能很好的...

1432
来自专栏前端架构与工程

webpack多页面开发与懒加载hash解决方案

本文内容只适用于webpack v1版本,webpack v2已经修复了hash计算规则。 之前讨论了webpack的hash与chunkhash的区别以及各...

2058
来自专栏北京马哥教育

9 个使用前必须再三小心的 Linux 命令

Linux shell/terminal 命令非常强大,即使一个简单的命令就可能导致文件夹、文件或者路径文件夹等被删除。 在一些情况下,Linux 甚至不会询问...

3386
来自专栏WindCoder

使用Gulp进行JavaScript自动化简易说明书

第一次接触gulp,当参考各方资料翻译下来,感觉还不如自己总结一份来的流畅,所以这篇最后将自己的实践放在开始,将之前的原文与译文放在最后以供参考。

1121
来自专栏Android开发实战

WorkManager _Android新架构组件

5月8号, I/O大会上推出了Architeture新组件WorkManager。 由于Android版本的不断更新,后台任务的处理变得越来越复杂。 因此,Go...

1542
来自专栏流媒体

Linux下Socket编程(五)——http容器(支持php)简介

为了方便操作以及功能模块的拆分,这里我们将请求内容和响应内容进行封装。这里我们只列出头文件,封装类中我们仅仅做了关系字段的提取。

631

扫码关注云+社区