软件自动化测试入门攻略

软件测试自动化是什么?测试人员需要学习那些内容?学习后如何在项目中落地?零基础测试人员如何快速在企业落地自动化测试,为什么弯路这么多,究竟该如何破局?针对这些困扰许多测试工程师的问题,笔者基于对自动化测试的多年深耕、对软件测试自动化的丰富实战和持续研究,编著了软件自动化测试入门攻略一书:秉承工具详解、实战练习的核心理念,致力构建自动化零基础人员了解、熟悉、掌握、活用的技术能力,破除自动化难、无体系壁垒,打造系统性自动化测试学习体系,成为当今企业最需要的自动化测试人员。

Alt

京东https://item.jd.com/14351742.html

当当https://product.dangdang.com/29677550.html

希望本书能成为你自动化测试之路上的向导和伴侣。在自我千锤百炼学习过程中,实现自我提升、突破,成为当今企业最需要的自动化测试人员。更希望本书能陪伴你赓续探索,发掘最佳实践。

初 心

从事软件自动化测试工作以来,一直想将自动化测试知识串联起来,构成一个涵盖不同过程、不同产品的体系。然而限于学识浅薄,所历尚浅,闻见过于狭隘,始终不敢提笔也羞于落墨。当新冠疫情来临后,互联网行业受到了巨大的冲击与损失,企业对测试人员提出了更高的要求,自动化测试成为必备技能,同时受到编辑王老师的鼓舞,便决定将自己多年积累的自动化测试知识整理成册,愿在这繁荣的互联网时代贡献自己一点力量,也愿诸位读者有所收获,得到一些思考。

本书以全为指导思想,涵盖各种类型被测对象,包括单元测试对象、代码包测试对象、接口测试对象、Web UI测试对象、移动端程序测试对象(包含APP和微信小程序)。这是一本自动化测试入门级书籍,以工具详解、实战练习为核心理念,致力打造零基础人员系统性学习自动化测试体系,成为当今企业最需要的自动化测试人员。确定方向后重新规划,以测试人员最易理解和快速上手的Python语言为基础,以当前企业使用率最高的unittest、pytest、Requests、Postman、Selenium、Appium和JMeter七款自动化测试工具为基础,以单元测试、代码包测试、接口测试、Web UI测试、移动端测试、性能测试和容器化部署为应用实战,使学者学到用到。

落 地

本书耗时两年完成,每一章节都以官方基础和笔者经验、思考、持续探索构建,再与许多经验丰富的测试人员勘误和探讨,逐渐沉淀打磨成册,由此《软件自动化测试入门攻略》成功落地。全书共有十五章,分为两大部分,工具详解篇和实战练习篇。

第一部分:步步为营,工具详解

第一部分共有八章内容,第一章内容作为本书引子,介绍自动化测试的一些概念、常用工具和发展,点出自动化测试的本质是把以人为驱动的测试行为转化为机器执行的一种过程,进而引出本书核心内容的第一部分:工具详解。第二章至第八章依次介绍了当前企业使用率最高的unittest、pytest、Requests、Postman、Selenium、Appium和JMeter七款自动化测试工具,其中unittest和pytest是Python语言的单元测试框架,大部分以Python语言为基础的自动化测试项目都会使用unittest或pytest组织测试用例;Requests和Postman是两个接口测试工具,Requests是Python语言的一个库,使用Python编程语言实现接口测试项目几乎都是借助Requests完成的。Postman是一个独立接口测试工具,测试人员在不需要编写代码情况下便可轻松完成项目接口测试用例的编写,实现自动化测试;Selenium和Appium均是Python语言实现UI自动化测试的第三方库,Selenium完成的是Web UI自动化测试,Appium完成的是移动端程序的UI自动化测试;JMeter是一款开源的接口测试工具,也可用来完成产品的性能测试。

此部分基础内容以概念+示例的方式编写,读者在学习时需要先理解其概念,对知识点有一个正确认识。再跟随示例实践,发现基础薄弱的地方,加强测试和调试的能力,做到概念清晰,手到拈来。

此部分介绍的七款自动化测试工具是入门自动化测试的基础工具,也是进行更深入学习和研究的基础,学好此七款工具有助于提高对自动化测试的认知,解决产品测试中的难点、痛点,让自己得到充分发挥,更快更有效地创造产品价值,体现自我价值。

第二部分:有的放矢,实战演练

第二部分共有七章内容,第九章至第十四章分别以开源项目《LEADSHOP开源商城系统》中的部分模块为实战对象,运用第一部分所有的基础工具依次实现单元测试、代码包测试、接口测试、Web UI测试、移动端测试和性能测试演练,完成基础工具的单个知识点学习到项目的综合应用。每一章实战都带领读者从测试类型介绍、用例设计方法、实战对象、设计测试用例、搭建项目结构、编写测试脚本、执行测试项目几个步骤完成,明确测试项目的每一个步骤,任何测试人员练习任意实战项目都可顺利完成。第十五章介绍容器化部署与自动化测试,容器化部署是一种流行的技术,引入自动化测试中会极大简化各种测试项目的部署,提高工作流程。此章以Docker技术为底部署持续集成工具Jenkins,在Jenkins工具中实现测试项目的任务部署,完成分布式节点挂载和定时执行。

此部分是在LEADSHOP开源商城系统环境下,将基础知识点综合使用的一个过程。此过程中不但涉及到很多基础知识的使用,而且需要考虑全局的应用搭配,是一个非常全面的施用。通过此过程的实战,读者需要总结经验、发现规律,生成自己的理论或知识体系。

希 冀

软件测试自动化是什么?测试人员需要学习那些内容?学习后如何在项目中落地?零基础测试人员如何快速在企业落地自动化测试,为什么弯路这么多,究竟该如何破局?类似这样的问题笔者经常思考,自己是如何完成由一位手工功能测试人员转变为自动化测试人员的?自动化测试道路上都学习了那些内容?又是如何应用在项目中。经过不断地与同行探讨,在论坛、博客等网站学习交流,许多次未触本质的自我否定,最终总结出当今企业最需要的自动化测试人员才是有价值的人员,大家讨论最多的项目应用实例才是最稳健的技能。基于此以Python语言为基础梳理出了自动化测试落地项目最成功的应用工具和项目实战案例,希望这些源于一线测试人员的探索和实践,能带给读者启发。

希望本书能成为你自动化测试之路上的向导和伴侣。本书是一本自动化测试入门书籍,非常适合应届毕业生、在校学生和初入门软件测试的人员,同时也适用于教材启发学生了解、熟悉、探索自动化测试。通过本书的学习,能帮助读者对从事自动化测试更有信心,时刻保持好奇和上进心,实现自我升级,成为当今企业最需要的自动化测试人员。

更希望本书能陪伴你赓续探索,发掘最佳实践。本书的内容来源于许多测试前辈的总结,是许许多多鲜活实践的积累,通过本书的学习,希望各位测试人继续保持探索精神,不断发掘,提纯出更多的思想和实用方法,推动自动化测试行业持续发展,你我共同成长。

附件

Windows系统程序测试和MacOS系统程序测试已分别发表于《51测试天地》电子杂志第七十二期和第七十三期,如果想要探索更多自动化测试技术,可参考此两篇文章,链接如下:
Windows系统程序测试:WinApp测试自动化(http://www.51testing.com/html/14/n-7796614.html)

MacOS系统程序测试:MacApp测试自动化(http://www.51testing.com/html/89/n-7797389.html)

本书中所有示例和实战项目代码已上传Gitee仓库(https://gitee.com/tynam-yang/software-automation-test-introduction),读者可下载使用。

posted @ 2024-01-23 14:07  Tynam.Yang  阅读(67)  评论(0编辑  收藏  举报