7年从业经验,这篇文章将汇集自动化测试所需知识,拒绝标题党,水文。让所有想学习提升技术的能从文中获取有价值的知识。
在这个吃技术的IT行业来说,我之前每天做的是最基础功能测试的工作,但是随着时间的消磨,我产生了对自我和岗位价值和意义的困惑。
一是感觉自己在浪费时间,另一个就是做了快3年的功能测试,感觉每天过得浑浑噩噩,薪资也从不见涨,岗位也一直得不到提升,特别觉得我自己碌碌无为。我的薪资也是一直卡在了7K,这样苦恼的日子没有持续多久,我就找到了方向,这些过去的成长我也不多说了,我要的只是一个结果就是学会自动化测试。
所以如何从功能测试到自动化测试,达到技术提升与涨薪的目的,是很多测试人必经的一个阶段。
一、学习自动化之前,我们应该先了解自动化测试是什么?
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。
二、自动化测试的类型
什么可以自动化?实际上很多,但是通常容易误解这个问题。
有两个主要类型,功能性和非功能性:
- 功能性:测试软件的实际业务应用程序。
- 非功能性:用于测试软件的其余要求(例如性能,安全性,数据存储等)。
性能测试主要是使用测试工具,Loadrunner、Jmeter等,对软件进行压力测试、负载测试、强度测试等等,因为这些无法用手工进行代替,所以必须自动化。目前企业对自动化测试需求越来越多(见下图)。测试人员想要在未来有更好的发展,非常需要通过掌握自动化技术来增加自己有竞争力。
2.自动化测试的学习路径
搞定自动化测试,独当一面!我目前薪资也是达到了25K,参与过电商、金融、保险等领域的测试工作,搭建过thrift测试框架,自动化测试平台,在web端、移动端、PC端项目的测试管理、接口、自动化、性能测试领域小有成就吧。
作为一位过来人也是希望你们少走一些弯路,在这里我给大家分享一些自动化测试的相关资料,希望能给你前进的路上带来帮助,需要的点击下方获取。
先说性能测试,行业内是有很多误区和痛点的:
- 只测不调,无法给出研发和运维人员执行建议
- 无法定位问题,缺乏清晰的逻辑和数据证明价值
- 性能测试工具≠性能测试
- 性能测试技术体系落后(loadrunner),急需拥抱开源软件
如果要搞定这些问题,那么性能测试你得这么去学:
- 性能测试的概念和流程:常见问题剖析、流行工具、方案设计
- 性能测试工具:jmeter工具的使用、实战;jmeter多协议、拓展与定制;分布式压测与任务调度;
- 性能监控:性能监控体系与监控数据采集
- 性能实施:分布式服务压测,场景设计、场景执行;测试结果关联分析,TPS、响应时间、线程关联分析,压力和资源使用率关联分析
- 性能分析与报告:jvm调试与系统调试;性能瓶颈分析
性能测试你能到这个程度,15k那是妥妥的了,如果下面自动化测试的学习内容你能够掌握,那就可以直接冲击月薪25k!
搞定Python或者Java语言,建议先从Python入手,先学习Python的基本语法等。
web端的自动化测试:selenium安装、录制、处理;web控件、JavaScript脚本、PO模式;
移动端APP自动化测试:appium使用、录制、元素定位方法;APP控件定位、交互,参数化用例;appium问题定位分析、源码分析、二次封装;
服务端接口自动化测试:接口自动化测试框架request;接口请求构造、断言;json/xml请求、响应断言;headcookie处理、认证体系;
三、自动化测试学习资源配套
- 接口自动化测试
接口自动化测试一般有两种方式实现测试,一种通过工具实现;另一种通过代码实现,工具更多的做调试,大多数互联网企业做接口测试都是通过代码实现。 工具的测试,一般容易上手入门的首选,代码量有限,只要熟悉测试流程,会熟练使用工具就能够完成基本的接口测试,但是灵活性差,自动化程度没有代码高,市面上常见可以接口测试工具有postman、Jmeter等。代码的实现,主要是通过python。
- web自动化测试
web自动化测试主要通过代码实现。比如常见的应用有:Python/Java+selenium。 首先,还是需要熟练使用一门语言,非常熟练的运用至少一门编程语言。 其次,需要学习web测试的流程步骤,因为是基于页面默认人工操作,故而需要对于页面构成需要有一定的基础,懂得页面元素的定位,以及常见的定位方式的使用等。如果有接口自动化的基础,那么学习web自动化相对会容易一些。
- UI自动化测试
UI自动化测试主要也是通过工具和代码的方式实现。比如常见的有Python/Java+appium。
移动自动化除了要求掌握一门编程语言外,还需要学习移动测试的流程步骤,需要学习并使用一些手机模拟器(如:mumu)、第三方工具(如:GT工具)、adb命令、monkey等的使用,学习使用的工具较多,并且需要结合代码一起使用,这就要求学习的知识范围更加广泛,先从工具使用入手。
学习安排上
如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助,朋友们如果需要可以自行免费领取 【保证100%免费】
视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片进群即可自行领取。