功能测试转成自动化测试,答案就三个字:“靠学习”。
学习自动化的方法无非是三种:
一、靠培训(下方有如何选择培训机构)
在相对有氛围的学习环境中来学习自动化测试,这是一个较快学习的方法。
二、靠自学自动化教程(下方有视频资源推荐)
如果在职,不能全职学习,可以找一些自动化学习的视频,选择看视频学习,这也是一个不错的方法。
三、靠阅读自动化相关书籍(下方有书籍推荐)
不喜欢看视频,喜欢看书的可以选择此种
但无论哪种学习方法,学习都不是轻松的,为了让大家获得动力,本文结构梳理如下:
1)什么是自动化测试?明确学习内容
2)为什么要学习自动化测试?明确学习动力
3)学习自动化,需要掌握哪些知识呢?明确学习路径
4)分享学习自动化测试的学习类资源
5)如何在工作中实战自动化测试知识呢?明确内化方法
谈到自动化测试,前面就要给大家普及下什么是功能测试。
功能测试,功能测试主要以手工测试为主,也就是所谓的点点点。
主要目的是验证软件的功能是否按照《产品需求文档》中所定义的预期行为运作。
测试人员了解需求的基础上,通过编写测试用例,手动执行用例,发现功能bug,保障软件满足用户的需求。
自动化测试,通俗来讲,就是通过工具或代码,代替人工来做功能测试。
通过编写的python自动化代码,自动执行测试,自动启动浏览器,模拟执行鼠标操作,验证测试结果
所以自动化测试,是以工具(如Selenium、Appium、JMeter、LoadRunner)或代码为主、通过编写测试的脚本,替代人工执行测试用例,快速的完成回归测试任务。
因此自动化测试可以提高测试效率、减少测试成本、提高测试覆盖率和减少测试周期。
自动化测试可以应用于各种软件测试领域,包括功能测试、性能测试、安全测试、兼容性测试等。
为什么要学习自动化测试?最现实的原因,是现在高薪的测试岗位,都对自动化测试有要求。请看下方截图:
截图来源boss直聘,欢迎求证
为什么高薪的测试岗位都需要自动化测试技术呢?因为自动化测试可以实现:
1、提高测试效率:
自动化测试可以快速地执行测试用例,减少手动测试的时间和成本,提高测试效率;
2、提高测试覆盖率:
自动化测试可以执行大量的测试用例,覆盖更多的功能和场景,提高测试覆盖率;
3、提高测试质量:
自动化测试可以减少人为因素的干扰,提高测试的准确性和可靠性,从而提高测试质量;
4、降低测试成本:
自动化测试可以减少人力资源的投入,降低测试成本;
5、支持持续集成和持续交付:
自动化测试可以与持续集成和持续交付相结合,实现快速反馈和快速迭代,提高软件交付的效率和质量。
总之:
对企业而言,自动化测试可以极大提升回归测试的效率,提高人效。
对测试人员而言,自动化测试可以将个人主要精力放在复杂业务的测试,保障测试快速的迭代,保质保量提早完成测试任务。
所以, 如果你懂自动化测试,不管是代码能力还是测试工具的使用,都会提升个人在团队中的地位也算自己在测试职业生涯中就有了核心的竞争力。
反之,如果你干了几年测试,还是无法做到自动化测试的全面和效率,技能还停留在只会点点点的手工测试(纯功能测试)阶段,即使现在还有低薪的工作,但也终究会被市场淘汰。
简单来讲,自动化简单划分:接口自动化、UI自动化
对于由功能测试转过来的初学者,咱们可以考虑从先接口自动化入手。目前企业中接口自动化使用较多,便于学习后推广和使用;
然后再学习UI自动化,包含Web和APP的UI自动化,作为进阶;
1)首先必须学会功能测试
自动化测试是以工具或代码替代人工执行测试,执行的测试用例和手工测试是一样的,所以自动化测试也需要我们掌握一些手工测试的基础知识,比如用例编写、bug提交、数据库SQL语句等,这些对于手工转行的人来说应该是没有问题
2)必须要学会一门编程语言
虽然使用工具也可以做自动化测试,但是未来趋势测试还是需要会代码比较吃香;编程语言常见的比较适合来做自动化的如java、python等,初学者推荐python,相对比较简单,适合初学者;如果是有过开发经历,转行到测试的可以考虑Java。
3)学习接口自动化测试
可以直接使用一些开源的框架执行测试即可,比如Postman工具.
4)学习UI自动化测试
可学习一些UI自动化的框架:web浏览器自动化推荐Selenium、移动端推荐Appium、其他还有Robot Framework等;
5)学习持续集成
完成自动化测试后,最终实现自动化都会配合持续集成完成,所以还需要掌握一些测试工具,如Jenkins、Git等。
截图来源:2023黑马软件测试学习路线图,下方有分享
培训机构鱼龙混杂,所有的测试培训机构都号称自己是主打自动化测试。
如果若选择培训机构呢?告诉你一个竞品绝不敢告诉你的方法,绝对有用。请狠狠点击下方文章:
《这么多的软件测试培训机构,哪个好?2174 赞同 · 355 评论回答》
https://www.zhihu.com/question/21471129/answer/1501002082
如果在职,不能全职学习,可以找一些自动化学习的视频,推荐下方的b站学习路线图,太多人好评,且完美符合上方展示的的自动化测试学习路径:
2023年黑马软件测试学习路线图【自动化测试方向】,内附自学路线+视频教程
2023年软件测试学习路线图 - 哔哩哔哩
不喜欢看视频,喜欢看书,若想学习自动化测试,推荐书籍如下
推荐1:《python编程从入门到实战》
此书豆瓣评分9.1分。
本书籍免费版PDF下载地址:http://bbs.itheima.com/thread-514245-1-1.html
推荐2:《Web接口开发与自动化测试》
附:本电子书免费下载地址:http://bbs.itheima.com/thread-514629-1-1.html
推荐3:《python自动化测试实战》
这本书的电子版实在是找不到,若找到的同学也欢迎分享下,可私信我
推荐4:《Python实现Web UI自动化测试实战》
这本书的电子版实在是找不到,若找到的同学也欢迎分享下,可私信我
此书主要介绍如何基于Python使用Selenium、unittest、Pytest、GitLab、Jenkins等工具实现Web UI自动化测试,以帮助提升测试水平。
实俗话说,实践出真理,学习的所有知识,都是为了解决实际工作的业务问题,只有解决问题的技术才是好技术,能解决技术的知识才能说明你真的学会了。
所以不管是通过哪种方式来学习,一定要把学习的知识应用于实践当中。