工作3年了,还不会自动化测试,领导说我太low了
Posted 程序员小濠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了工作3年了,还不会自动化测试,领导说我太low了相关的知识,希望对你有一定的参考价值。
前言
时隔多年,光阴飞逝转眼间在这家公司工作三年了,一次偶然的机会领导向我吐槽,你怎么来公司三年了,还不会自动化测试呀。我当时听者就懵b了。对呀我都来公司三年了,工资也没提升多少,跟我同一时间进来的同事工资都1w了,我还是只有5~6千。可能是是生活过的太安逸,一次偶然的机会认识到了一个女孩 ,后面故事的我就具体聊了。反正就是压力让我进步(来自丈母娘的压力),下面分享我进阶自动化测试的经验和技术分享
技术分享
先来说说自动化测试的三大类型
自动化测试大致有三种类型:UI自动化、接口自动化、单元测试。
(1)UI自动化:模拟用户在软件界面上的各种操作,并验证操作结果是否正确,这种测试方法上手简单,用到的工具主要有 selenium,airtest 等。
(2)接口自动化:测试服务端对外提供的接口,也就是俗称的 API,用作接口自动化的工具一般有 python request、Postman、Jmeter 等。
(3)单元测试:开发阶段由开发人员完成,在这个阶段,如果开发人员充分完成了单元测试,那么后期的 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请求的脚本等等。
想要成功,下面这些因素必不可少
1、面对困难,担当与勇气必不可少
2、面对选择,慎重思考与坚定目标必不可少
3、想要成功,坚持和毅力必不可少
绵薄之力
做为一名自动化软件测试,接下来我想分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名高级测试者需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友!
下面分享我整理的这份2021年可能是最全的软件测试工程师发展方向知识架构体系图。
一、Linux必备知识
Linux作为现在最流行的软件环境系统,一定需要掌握,目前的招聘要求都需要有Linux能力。
二、Shell脚本
掌握shell脚本,包括shell基础与应用、shell逻辑控制、shell逻辑函数等。
三、互联网程序原理
自动化必由之路:前端开发基础知识以及互联网网络必备知识。
四、mysql数据库
软件测试工程师必备Mysql数据库知识,不仅仅停留在基本的“增删改查”。
五、抓包工具
Fiddler、Wireshark、Sniffer、Tcpdump各种抓包工具适用于各种项目,总有一款适合你。
六、接口测试工具
接口测试神器,你绕不开的强大工具:Jmeter。小巧灵活:Postman。
七、Web自动化测试Java&Pyhton
了解自动化的目的,熟练掌握testng&unittest自动化框架,以及断言与日志处理。
八、接口与手机自动化
专业接口调用、测试解决方案。组建完整的web和接口自动化框架,Appium整体使用。
九、敏捷测试&TestOps构建
揭开TestOps的神秘面纱,持续集成Jenkins框架烂熟于心。
十、性能测试&安全测试
软件测试的彼岸:性能测试和安全测试,选对方向,努力爬坑吧!
上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。希望大家能照着这个体系在3-4个月完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。
看完这篇内容后,相信以下两件事,也会对你的个人提升有所帮助:
1、 点赞,让更多人能看到这篇文章,同时你的认可也会鼓励我创作更多优质内容。
2、 让自己变得更强:想一想,如果你想在测试这个行业一直做下去,你的经验和测试技术是远远不够的,你需要进阶,你需要丰富你的技术栈!还等什么!
最后:【可能给予你助力的教程】
这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。
关注我的微信公众号:【程序员小濠】就可以免费获取了~
我的软件测试交流群:175317069 欢迎各位大佬来群里交流~我会不定期的发放软件测试资料
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!
以上是关于工作3年了,还不会自动化测试,领导说我太low了的主要内容,如果未能解决你的问题,请参考以下文章
公司新来一00后说我不会自动化测试,3个问题直接给他问趴下...