# 测试圈TC：双11期间，我选择了这5本书!




好吧！我只是借着双11的余热，骗你进来的。这年头起一个正经严肃认真的标题已经没人愿意点开阅读了。

（同事问你在用手机看什么？居然哭了，自己点开的文章含着泪也要看完....）

事情是这样的，双11前出版社编辑告诉我，作为优秀作者可以到他们的出版社网站上挑选5本自己喜欢的书，免费赠送！

现在我们的时间越来越碎片化，很难有整块的时间去阅读一本书。尤其是技术书，在阅读的过程中还操作上面的例子或代码；我其实更喜欢以需求为驱动去学新的技术，比如，我要用Flask开发一个网站，以此为需求驱动我查找相关资料进行学习。

当然，好书还是值得我们花时间去学习的，什么算好的技术书呢？我认为：由浅入深、通俗易懂的介绍清楚一个技术。能做到这一点，在我看来就是一本好书。我去年阅读的《Test-Driven Development with Python》，以及今年阅读的《第一行代码 Android》，这两本在我看来就是好书。

言归正传，接下来介绍一下我选的这几本书，由于是大概的翻阅了一下书中的内容，再加上个人的水平和阅读喜好不同，无法做到客观中立第三方，只能分享一点我的个人看法。

《第一季Kotlin崛起：次世代Android开发》

![](http://img.testclass.net/kotlin_book.png)

这是我选择的第一本书，第一次听说Kotlin编程语言的时候还是在今年“Google I/O 2017开发者大会”的时候，因为这家伙在此之前从来没在编程语言排行榜上出现过，也没听说身边的公司或团队在使用。我们都知道Google 一直受制于人Oracle对Java的把持，为Android选择新的开发语言也在情理之中。

惊讶的是短短半年就问世了好几本关于Kotlin 中文书，《第一季Kotlin崛起：次世代Android开发》就是其中之一。

全书分三部分，第一部分Kotlin基础，和大多书编程入门书一样从“hello world”开始，很适合零编程的小白；第二部分面向对象；前两部分学习可以会对Kotlin语法有一个整体了解。第三部分介绍Android开发，基本把Android开发中的核心部分都做介绍到了，最后两章是实战例子。

Kotlin的整体语法要比Java简化不少，但要以此做为卖点的话，Python就只能在旁边呵呵了！一个语言能否发展起来，主要是看它的扩展库/框架是否足够丰富和优秀。显然这一点Kotlin和Java差距巨大。但是，如果你是一名Android开发或测试开发的话，有必要学习一下！毕竟有Google加持。


《Android移动性能实战》

![](http://img.testclass.net/android_per_book.png)

这是我选择的第二本书，相比较Android自动化测试来说，大家似乎对Android性能方面关注的较少。其实，制约Android应用体验的一个很大的问题就是性能，启动速度、卡顿、耗电等，优化好APP的性能对于APP用户体验也非常重要。

腾讯的测试团队太牛B了，如果你是个纯小白，且不懂Android开发，就不要买了，因为书中会直接贴小一段代码，告诉你在他们有的某款APP的某个场景下会有问题。

这一点，我在《腾讯android自动化测试实战》一书中已经领略过了，前面还在讲appium的API，后面就直接贴一段他家某款APP的自动化代码。没头没尾的那种，可操作性太差，我们最多也只能看看他们写的代码的风格。

不过，我觉得他们家团队出的书很适合做公司内部分享，因为大家都是在一个level上，而且都彼此熟悉相关的产品，我贴一段代码一分析，大家自然就收获良多，有技术有经验。我突然有一个大胆的猜测，这书确实是内部团队PPT的提炼。因为本身就是团队合著的。


《京东系统质量保障技术实战》

![](http://img.testclass.net/jd_test_book.png)

除了BAT外，京东是国内第四大互联网公司，我很好奇他们的测试团队所应用的技术。

这是我挑选的唯一一本正儿八经给测试人员看的书。整本书由京东“测试和质量部”所著。打开书发现是内容彩色的，纸张很好。

整本书展示他们部门的技术体系，整本来看是Java流的，就是测试开发相关工作主要由Java语言完成；如果你想了解京东的测试是如何做测试的，会用到哪些技术和工具，那么值得一读。但如果想就着这本书就把这些技术和工具学会，不可能。

对了，书有一章介绍Web安全，值得一读，有比较详细的概念和例子，很适合像我这种安全测试小白。


《Jenkins权威指南》

![](http://img.testclass.net/jenkins_book.png)

Jenkins持续集成基本上已经成为了开发团队的标配，不管是开发、测试、还是运维都会用到。

这本是中文翻译版，是2016年10月出版，如果你不想在网上找各种零碎的Jenkins教程的话，本书很适合你。

不过，书中的内容有些过时，虽然书中没指明Jenkins的版本，但有提到Java版本用的是“最新的”Java 6，但是前不久Java9正式版推出。另外，我前几天在装 Jenkins 2.73.3 版本时发现和旧的版本有不小的差别，安装和使用都比以前复杂了许多。


《自己动手写Docker》

![](http://img.testclass.net/docker_book.png)

因为云计算领域的兴起，“容器”一词就火了，提到容器就不得不提“Docker”,可以说Docker已经成为了容器的代名词。

前些天看了一篇文章“左耳朵耗子：Go语言？Docker? 对新技术怎么看？”嗯！是有必要了解一个Docker了，因为我之前从未接触过Docker。这里就不对这本书做评价了，看完了再来分享。

对了，上周推送的主文章里，“测试开发”需要哪些技能，“Docker”一词出现了11次。




原始封面

![课程图片](https://images.unsplash.com/photo-1471978445661-ad6ec1f5ba50?w=300)


