有做测试的小伙伴找小异吐槽,说做测试太苦了……
天天被开发“使唤”,完全没有自己的工作节奏,完全要跟着开发的节奏走,总是要面对突如其来的加班;明明测试的重要程度不亚于开发工作,却完全得不到领导的认可,每次把Bug提给开发同学还要遭到嫌弃;每天重复一些单调、机械的工作,想转开发但没有时间精力学习,感觉做测试前途黯淡无光……
各位测试同学是否也有过类似的体会呢?到底怎样才能突破“鄙视链”,实现自我提升?小异建议大家了解一下自动化测试。
01
不懂自动化,如何搞测试?
做过测试工作的同学都知道,如果测试工作仅停留在“点点点”的阶段,那么无论是在公司内部,还是未来在求职时,都很难有所改变,薪资想要提升更是难上加难。
如今,自动化测试、测试开发已经成为了测试工作的标配,似乎不会一点“自动化”,都没法再干测试这个事情了。
对于没有开发基础的测试同学来说,自动化测试最让人头疼的,就是不知道从何下手。由于很多测试同学没有代码基础,大多是半路出家,根本弄不明白测试框架、测试脚本、测试左移、测试右移、DevOps等各种词汇的含义。与此同时,职业的焦虑随着年龄的增长持续上升,似乎始终徘徊在自动化测试的门外。
测试必然会走向自动化,测试工程师也必须掌握自动化测试的技术,这已经是行业一个公认的事实。那么当下最紧迫的就是如何快速入门,快速进入自动化测试的殿堂里去。
02
如何学习自动化测试?
自动化测试的分类
自动化测试大致有三种类型:UI自动化、接口自动化、单元测试。
UI自动化:模拟用户在软件界面上的各种操作,并验证操作结果是否正确,这种测试方法上手简单,用到的工具主要有 selenium,airtest 等。
接口自动化:测试服务端对外提供的接口,也就是俗称的 API,用作接口自动化的工具一般有 python request、Postman、JMeter 等。
单元测试:开发阶段由开发人员完成,在这个阶段,如果开发人员充分完成了单元测试,那么后期的 bug 就越少,测试压力就很轻。
打好编程基础
如果认为 “自动化测试” 就是使用工具即可,那便是掉入了一个误区——自动化测试本质上是使用一个程序去测试另一个程序。
具有良好的编程基础对于理解和使用这些工具至关重要,尤其是在使用这些工具时,一般都是需要编写代码的,比如使用Selenium时,无论是建立请求,还是使用xpath去查找DOM节点,都需要对具体的编程有所了解。因此,我们可以从编程的角度来着手学习自动化测试。
1. 了解至少一门编程语言
在这里推荐Python,入门简单、上手快、开发环境搭建简单。
从自动化测试的角度来看,需要学习Python的基础数据类型、函数、与数据库交互、request请求等内容。
2. 掌握前端知识
在进行接口测试、Web测试的时候,不了解前端寸步难行。
自动化测试所需要的前端知识包含:HTML,DOM 节点操作,HTTP请求原理,Rqeust Header和Response Header的含义,Cookie和Session,xpath用法等 。
3. 掌握代码管理工具
如Git和svn。
学习使用工具
自动化测试必须要学会使用工具,在这里介绍以下三个工具。
1. Web端自动化测试工具Selenium
Selenium是一个开源框架,主要用于Web页面的UI自动化测试。
Selenium的特点是 “多平台,多语言,多浏览器”。
2. 移动端自动化测试Appium
Appium是一个开源测试自动化框架,可用于原生、混合和移动Web应用程序测试。
Appium的优势有:
跨平台同时支持Android、iOS
支持多种语言,包括Java、Python、PHP、Ruby等
组件齐全:①服务端Appium Server——提供web接口服务;②适用于Mac、Windows和Linux的开源应用程序Appium Desktop——提供Appium自动化服务器的功能;③客户端Appium Clients——给服务端Appium Server发送请求会话来执行自动化任务,可以使用多种语言实现。
3. 接口测试工具Postman
在API开发好之后,一般都会模拟调用一下请求,可以用浏览器来模拟,也可以调用代码,但是这样很烦琐,也不方面管理。
使用Postman可以很方便地模拟GET/POST请求,可以任意调整Request Header参数,并且可以把请求分类保存起来,方便修改接口代码后再次测试。
开发测试程序
当你具备了编程基础,并且可以熟练使用自动化测试工具之后,就可以尝试写一些自己的测试程序了,比如写一个生成测试文档的脚本,或是一个批量执行HTTP请求的脚本等等。
03
推荐图书
对于想要在测试工程师道路上不断精进的同学们,小异推荐以下图书:
- 有入门级测试书,让你搞清楚测试的基本概念,明确自己工作的价值;
- 有大企业的测试经验宝典,在学习优秀经验的同时提升自己的认知;
- 有具体的自动化测试技术教程,手把手带你走上自动化测试、测试开发之路。
相信这些书可以帮到正在苦恼的测试同学~
01 Google软件测试之道
一本书阐释Google做测试的本质和精华
每天,Google都要测试和发布数百万个源文件、亿万行的代码。数以亿计的构建动作会触发几百万次的自动化测试,并在好几十万个浏览器实例上执行。面对这些看似不可能完成的任务,谷歌是如何测试的呢?
这本书描述了测试解决方案,讲解了技术测试人员应该具有的技术技能,阐述了测试工程师在产品生命周期中的职责,讲述了测试管理,并附上了在Google测试历史上发挥了重要作用的工程师的访谈,这对想了解Google测试流程或团队的人大有裨益。
02 测试工程师全栈技术进阶与实践
适合新时代合格测试架构师和优秀测试工程师的全栈图书
作者是知名的测试架构师茹炳晟,百度、阿里、腾讯、字节跳动等公司的测试专家倾情推荐。
读完本书,你将有以下收获:
·深入理解GUI自动化测试的核心原理,能够独立完成GUI自动化测试策略设计,并能够将高效率、低维护成本的测试用例设计思路应用到实际工作中。
·掌握API测试工具的基本原理和测试方法,能够在微服务项目中应用契约测试方法。
·掌握移动应用的测试技术与方法,能够将传统的软件测试方法熟练应用到移动应用的测试中,同时掌握移动应用的专项测试方法。
·全面掌握人工动态、人工静态、自动动态和自动静态这4种代码级测试方法,并且能够从测试架构师的视角完成实际单元测试工作。
·能够按照书中介绍的思路,设计出符合自己公司需求的测试数据平台,解决准备测试数据方面的难题。
·掌握前后端性能测试的基本原理和方法,深入理解性能测试各项指标的内在含义,能够掌握基于LoadRunner和JMeter开发并执行企业级性能测试的主要步骤与方法。
·深入理解测试基础架构的概念,了解大型电商网站的测试基础架构设计技术,并能够有所取舍地应用到项目中。
·掌握互联网架构设计的核心知识,包括高性能、高可用性、可伸缩性和可扩展性,以便更好地进行测试设计。
·了解前沿的测试新技术,能够在实际项目中“有的放矢”地应用。
·初步了解人工智能、大数据和云计算技术在测试领域的应用场景。
03软件测试实战指南
轻松的文字 有趣的插图,系统讲解软件测试要掌握的技能
本书结合典型的软件测试案例,向读者介绍了分析需求、满足需求,设计测试用例和执行测试,管理缺陷等。读完这本书,读者可以轻松掌握软件测试的知识并提升测试水平。
这本书适合初级、中级测试工程师阅读,也适合项目经理、测试经理阅读,也可以作为培训机构的教材使用。
04 接口测试方法论
测试思维 API测试技术,系统展示接口测试的方法和技术
这本书基于测试工具、测试代码和测试框架,系统展示了如何提升接口测试的水平。书中先后介绍了接口测试涉及的技术、工具和编程知识,讲述了接口测试框架、性能测试和服务解耦,讨论了持续测试和智能化测试。读完这本书,读者可以快速完成接口测试,优化接口测试代码,让测试框架更智能。
05 软件自动化测试实战 基于开源测试工具
基于JMeter、Postman、Docker,讲述测试框架的搭建方法和测试工具的使用方法
这本书基于Python系统讲述了测试框架、接口测试、Web自动化测试与移动端自动化测试。本书不仅介绍了UnitTest、HttpRunner、Selenium、Appium测试框架,还讲述了JMeter、Postman、Docker等工具。本书有助于读者迅速掌握测试框架的搭建方法和测试工具的使用方法。
06 Selenium自动化测试完全指南 基于Python
基于Selenium 4 Beta版本,系统讲述如何使用测试工具,组织测试,优化测试模式,成功进行自动化测试
前面介绍过非常强大的自动化测试工具Selenium。这本书不仅会详述Selenium系列工具的功能,还将探讨自动测试的核心问题,讲述如何更好地在实际项目中实施自动化测试,如何真正让自动化测试取得成效。
07 大数据测试技术与实践
业界首本大数据测试实践秘籍
这本书由融360 AI测试团队联合创作,有36位来自字节跳动、知乎、阿里、百度、腾讯、京东、奇虎360、小米、网易等专家联袂推荐。
·通俗易懂,精选22个大数据测试要点,从零入手,全面讲解大数据测试。
·内容丰富,涵盖6大技术主题,大数据技术生态、数据仓库、大数据开发、大数据测试、数据治理、DataOps。
·场景典型,详细解释3个主流数据应用场景问题,数据分析、数据挖掘、数据可视化。深度剖析BI报表、风控模型产品、用户行为分析平台的技术原理、工程架构,并输出了全链路的质量保障方案。
08 机器学习测试入门与实践
业界首本AI测试著作
这本书同样由融360 AI测试团队联合创作,不同于市面上的机器学习书籍,填补了机器学习测试领域的空白。
书中精选15个AI测试要点,从零开始,全面了解机器学习测试,涵盖5个技术主题,大数据、模型算法、模型评测、工程架构、智能化测试。
本书内容设计深入浅出,学习路线清晰,帮助读者了解机器学习是如何工作的,了解机器学习的质量保障是如何进行的。
09 敏捷测试 以持续测试促进持续交付
测试专家朱少民20余年关于敏捷测试的思考和实践总结
这本书给出敏捷测试的详细定义:提出持续测试是敏捷测试的实质,也是敏捷开发中真正需要的测试,并强调思维模式转变在有效敏捷测试中的重要作用,帮助读者重新认知敏捷测试。
给出敏捷测试落地实施的一套完整的实践方法:从人员/组织与技术基础设施两个方面建立成功敏捷测试的基本保障,以测试左移与敏捷测试天然一致性、测试的分析与计划、测试的设计与执行,以及从敏捷到DevOps的测试右移等若干主题为主线,帮助读者显著提升个人的测试能力,力求将敏捷测试真正落地实践。
每章开头均有思维导图来引导读者学习,每章结尾均有延伸阅读,可以触发读者新的思考,以扩展本书内容,打破本书的局限性,让读者收获更多。
10 敏捷测试实战指南
全面讲解微服务和敏捷模式下的软件测试
朱少民、茹炳晟等测试大咖联袂推荐。从理论到实践,全面阐述构建敏捷测试的技术。分享一线敏捷、测试、研发、运维测试专家的实战知识。
覆盖敏捷测试的全面技术,从版本控制利器Git/Github/GitLab、持续集成工具Jenkins、容器 Docker CE/DockerRegistry、Kubernetes等搭建与使用,一直扩展到微服务、大数据的测试。帮助读者实战落地和测试转型。
本书适合自动化测试的工程师,工程效能团队的人员,互联网公司工作或者正在转型的测试人员或团队阅读。
11 JMeter 性能测试实战 第2版
结合具体的示例,系统介绍如何使用JMeter测试Web应用程序
这本书是一本实用的测试指南,系统地介绍了使用JMeter测试Web应用程序的方法和技巧。
这本书介绍了性能测试的基础知识和录制测试脚本的方法,讨论了表单提交、会话管理、资源监控和分布式测试,讲述了关于性能测试的技巧。
通过阅读本书,读者可以学会如何充分利用JMeter的功能,快速提升测试技能。
本书适合开发人员和测试人员阅读,也适合希望学习JMeter的读者阅读。
12 大话性能测试:JMeter实战
6年性能测试一线实战经验结晶,性能测试高手指南
这本书依托业界开源性能测试工具JMeter,工作案例来源真实场景,语言通俗易懂、层层深入。
本书包含了完整的性能测试知识点和技能树,让读者在实际工作中学得会、用得到。
作者拥有6年性能测试工作经验,自2018年9月在51Testing连载“大话性能”至今,记录了性能测试实际工作的大量经验,“大话性能”专栏也收获大量粉丝。
测试人员通过学习本书可以入门、进阶、熟练掌握性能测试,开发人员、运维人员等相关技术人员通过阅读本书可以更深入的理解性能。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。