序1
技术赋能未来,推进个人成长
从人类第一次工业革命开始,技术就成为推进革新的原始驱动力之一,蒸汽机的出现促使了手工业到机器工业的转变,这是一场以机器替代人工的革命。在信息技术发展飞速的今天,技术更是变成了提高工程生产率的加速剂。测试是一个技术性的行业,投资自己的技术,赋能自己的未来。
当今行业内推崇测试的技术和技术的测试,其中,测试的技术就是各种可以提高测试可靠性、可持续性、可重复性和可复现性的技术手段,这其中包含了IT 行业都在做的自动化测试、持续集成、持续交付、DevOps;而技术的测试是指在上述过程中通过技术手段完成具体工作内容的技术方法或者落地技术手段,既可以是测试辅助工具,也可以是为了测试而撰写的测试脚本。但是无论是哪一种,都是为了能够将测试工程师的时间释放出来,让机器完成重复可循环的工作内容,将时间还给测试工程师去完成创造性的工作内容。在任何一个团队,降低成本、提高效率都是一个永恒的话题,在测试行业里,自动化测试技术无疑是一个提高效率很好的工具。通过自动化将模式化、重复化的人类劳动变成机器的逻辑复现,释放人工,提高生产率。
近些年来,自动化测试、测试脚本的编写、测试框架的使用或者打造几乎变成公司招聘测试工程师的标配职位要求。但是,在实际操作过程中,测试工程师大量时间又被人工的重复工作内容所占据。这就变成了一对矛盾体。矛盾是由两个方面决定的,矛盾的一个方面如果不存在,另外一个就自然而然也不存在了。测试工作者通过学习和实践,将工作中繁重的手工劳动变成自动化的机器循环,就从根本上解决了上述矛盾,提升了效率,提升了自我。
随着自动化测试技术逐渐变成测试工程师的基础性要求,越来越多的IT技术从业者都开始着手学习自动化的测试技术,无论是UI的自动化,还是API的自动化,所有人都希望通过自动化的方式来完成枯燥乏味的、无限循环的手工测试劳动,这时需要先选择一门语言。尽管Java语言在研发领域占领主要地位,但是对于测试来说,并不一定要选择Java。这是因为Java入门门槛较高,入门和掌握这门语言需要花费更多的时间。
现在中小学教育已经加入了Python的课程,这也预示了Python的学习门槛会比较低,入门简单、容易掌握。那么通过 Python入手开始学习编程技术,对于绝大部分行业新人来说是一个明智的开始。
技术赋能未来,推进个人成长。任何时候开始学习都为时不晚。如果您对任何一门编程语言都不是很熟悉,那么选择Python会让您更快速地走上自动化测试的道路。对于测试工程师,选择Python会大大缩短您从第一行代码到自动化脚本的学习时间。
本书由浅入深地介绍基于Python 的自动化测试,从基础框架讲解、基础API 使用,到框架设计、模式引入、持续集成等。通过本书的学习,您既可以掌握基于Python语言的自动化测试的技术解决方案,以及相关的工程化解决思路,同时还可以快速搭建出属于您自己的测试平台。
作者本着在实践中学习,在学习中实践的思维模式,设计了每一个章节的例子,并提供了案例的相关源代码,这对于初学者的学习是非常有帮助的。
对于不想被技术创新的时代车轮丢下的测试工程师和测试管理者,这本书值得一读。
陈磊(测者)
京东商城测试架构师
2018年11月于北京