明代学者林希元有云:"自古圣贤之言学也,咸以躬行实践为先,识见言论次之",强调了实践是第一位的,而著书立说次之。唯有经过实践总结而成的书,方能对读者形成更强的指导意义。本书的作者,是一位长期奋战在编码一线的"老码农",他把他的多年实践经验,转化为了这样一本书,这不是一本空洞无物的Python语法教程,也不是一本纸上谈兵的软件测试教程,它更像是Python在软件测试领域的实战兵法。
我在读完了本书之后,为本书的文字所深深打动,惊叹于作者在技术之外,竟然有如此出色的文笔。不同于技术类图书的八股文风,读这本书,读者的感觉更像是一个坐在你身边的码农,给你讲述他对Python的理解,对软件测试乃至软件工程的理解。本书使用了许多古今中外现实生活中的例子,来生动有趣地陈述枯燥的知识点。本书文字的另外一个特点就是庖丁解牛,刀法精准,在正确的位置下刀。比如,对于如何安装Python这样的操作,作者几乎是只字未提,因为本书默认这是读者应该具备的基本动手能力。所以,看这本书,就想在看一部精彩的动作片,从开场的第一分钟开始,它就从头打到尾,以至于全程也不愿意片刻离场。
"人生苦短,请用Python"。现如今,Python已经广泛地应用于Web开发、人工智能、数据分析、网络爬虫、游戏开发、云计算、自动化测试与运维等众多的应用领域。熟练地掌握Python,意味着极大地提升工程中的生产效率。正是因为Python的大流行,才导致市面上的Python书籍可以说是汗牛充栋,但是,这些书籍中的绝大多数,仍然是平铺直述式的语法讲解。本书的结构非常新颖,它采用迭代螺旋的方式,把Python的理论原理和实践技巧,一个台阶一个台阶地往上提升。比如本书第2章在讲完Python的基础语法结构后,第3-5章分别是PyTest入门、Selenium入门、实战12306之入门;第6章接下来进行Python进阶,尔后第7-9章再次对PyTest、Selenium、12306进行进阶学习;第10章再对Python的高级特性进行讲解,第11章在此基础上总结测试框架,第12章的内容则第3次对12306案例进行了迭代提升。这种迭代推进、螺旋上升的方法,非常适合人类的思维习惯,毕竟我们掌握任何一门新技术,都不是一蹴而就的。回想起来,笔者对Linux内核以及其他技术的学习曲线,也同样是反反复复跟同一个知识点"死磕"。但是,在不同的阶段,随着自身对技术深度和广度的加深,对同一事物的理解也会完全不一样。我感觉,技术高手几乎都会对同一关键的技术点进行反复"死磕",正是这种不懈的"执拗",才让高手拉开了和一般程序员的差距。
非常高兴看到多年好友徐西宁老师的《软件自动化测试实战解析-基于Python3编程语言》的出版,相信本书必然为促进Python尤其是Python在软件测试领域的工程实践应用,提升一线开发人员的实战水平,起到巨大的帮助。
-- 宋宝华, 知名Linux技术专家