人生,就是一个苏醒的过程,生命就是一次历练,从鲜衣怒马,到银碗里盛雪,从青葱岁月到白发染鬓,人总是会在经历中成长,在成长中懂得,在懂得里看透,看透而不说透,从而一步一步的走向成熟,修炼一颗波澜不惊的心。
希望我的故事能够激励现在的软件测试人,尤其是还坚持在做“点点点君”的测试人。同时也希望我的经历中能让你有所收获。
文盲君大学毕业于2009年,曾幻想着天高任鸟飞,海阔凭鱼跃!谁知唯有我们真正的踏入社会后,社会才会慢慢的告诉你,不是如此简单的去遐想,唯有自己目睹和经历的假意和美真才明白:理想很丰满 现实很骨感!文盲君也曾游离于夜宵,地摊和富士康闯荡。各种挣扎!
2010年,一个偶然的机会,测试文盲君变成了测试点点点君。那时的测试工程师是真正的朝阳行业,熊猫级别的国宝,一些二线城市都没有软件测试工程师这个岗位,甚至一些二线的开发工程师都不知道软件测试工程师是干什么的?(毫不夸张)!一些有实力的公司为了过CMMI5级软件质量体系认证,高薪聘请测试工程师,只要会一点点测试在一线都能轻松过万,一个公司能请到几个软件测试工程师做软件质量把控不管是在政府的项目投标还是商业谈判软件开发业务都有巨大的优势。当时的测试体系基本还没有太多的流程化和规范化,是真正的点点点君。
作为一名合格的测试点点君,为了能与开发同频交流,以下的知识点必须得掌握 ,是不是感觉so easy?你没有看错!
笔者来源于公众号:软测之家 更多精彩技术,工作心得,面试资料欢迎搜索公众号关注! | |
Linux系统 | 1、掌握Linux常用的操作命令 2、掌握虚拟机的使用 3、掌握Linux下各种软件的安装 4、掌握Linux中搭建各种项目的测试环境 |
数据库 | 1、学会各种SQL语句及常用函数以及各种查询 2、掌握这种数据库之间的差异 3、明确在测试中如何测试数据库 |
测试理论 | 1、熟悉什么是软件测试,软件测试原则、分类、风险等。 2、测试方法:等级类,边界值,场景法,因果图,判定表,正交图等 |
测试项目实战 | 1、实践1-2个实战项目,走一次测试流程! |
网络和Web项目常识 | 1、网络分层,网络协议,如HTTP,TCP,UDP等。 2、抓包工具的使用Fiddler 3、软件生命周期 4、软件开发流程 |
但是:随着和开发的交集越多,这让我认识到后台逻辑对于测试工作的帮助,编程语言的能力将决定你测试能力的高度和深度
大概在2012年的时候,那时候还是JAVA为王的时代,随着软件测试和人工智能的发展,Python语言慢慢开始流行,当时的自动化测试才刚开始萌芽,还不成熟,各个公司就争先恐后的部署自动化,我们公司也不例外,我们所在的【P2P创新事业部】也要求我们使用Python和Selenium来尝试开展自动化测试。结果不了了之。主要原因归结于:
1.自动化测试技术不成熟。
2.自动化测试流程不规范。
2.测试人员的技能还达不到标准。
弄得当时很多的互联网公司的测试工程师焦头烂额,随之都暂停自动化业务,自动化就像是一阵风吹过,只留下一地鸡毛。
随着整个互联网在自动化方面的投入,虽然有不少失败的案例,但是确促进着整个自动化产业链的飞速发展!
同时:我也嗅到了自动化测试必然是以后的趋势!所以我就在有计划的往这一块学习。留下过足迹的网站包括:
Python菜鸟教程,CSDN,知乎,B站等等!不懂的就在论坛发帖!各种找资料!
2014年,经过近两年的技术沉淀以及互联网公司的摸索发展,自动化技术已经日渐成熟,我也是在有计划的跳槽到这方面的岗位,很幸运的,当时入职了一家做Python2.7+Selenium2的UI自动化公司,后来也开始尝试使用过RobotFramework框架。
2016年我开始做自动化全栈工程师,和团队一起从零开始搭建一整套UI自动化+接口自动化一体化框架平台,目前一体化框架平台已经在公司得到应用。
选择适当的时候,尽量发挥好自己的优势。"长江后浪推前浪,前浪死在沙滩上",我相信肯定还有不少的软件测试工程师站在“十字路口”迷茫,无助,找不到自己的方向,一切的迷茫都是因为想得太多而做得太少,每位测试从业者也都能意识到目前自己的窘境,但是能顺应时代做出改变的人还是田少,多数人都是"泰山崩于前而面不改色",眼睁睁的看着自己被行业所淘汰?下面是我整理编写的自动化测试工程师的发展规划路线:希望对你有帮助!会给你带来方向和灵感!
1、编程语言Java&Python以及前端技术,以Python为例:
笔者来源于公众号:软测之家 更多精彩技术,工作心得,面试资料欢迎搜索公众号关注! | |
Python编程 | 01 Python3简介、环境搭建和自带IDLE工具的使用 |
02 Python3集成开发工具(Pycharm)的安装、配置和使用 | |
03 Python3基础语法、变量以及命名规范 | |
04 Python3标准数据类型[数字Number&字符串Str] | |
05 Python3标准数据类型[元祖Tuple&列表List] | |
06 Python3标准数据类型[集合Set&字典Dict] | |
07 Python3标准数据类型总结、类型转换、Python输入输出 | |
08 Python3运算符 | |
09 Python3条件控制语句[if、多重if、嵌套if] | |
10 Python3循环控制语句之while循环 | |
11 Python3循环控制语句之for循环,pass,break,continue | |
12 Python3函数的定义和调用,参数和返回值 | |
13 Python3函数的四种参数类型 | |
14 Python3函数嵌套、函数递归,匿名函数,内置函数 | |
15 Python3参数传递[值传递和引用传递],变量作用域LEGB规则 | |
16 Python3模块导入[import和from...import]和包的使用 | |
17 Python3内置模块time和datetime:日期和时间常用方法 | |
18 Python3内置模块os模块和json模块常用方法 | |
19 Python3文件处理 | |
20 Python3错误和异常处理 | |
HTML | 1 WEB网页之组成HTML基础标签 |
2 WEB网页之组成HTML复杂标签 | |
CSS | WEB网页CSS样式 |
JAVASCRIPT | WEB网页Javascript动态脚本 |
2、UI自动化之Selenium的API应用
笔者来源于公众号: 软测之家 更多精彩技术,工作心得,面试资料欢迎搜索公众号关注! | |
Selenium API应用 | 1 SeleniumUI自动化测试环境搭建 |
2 Selenium框架原理以及浏览器常见操作 | |
3 Selenium八大元素定位方式详解(上) | |
4 Selenium常用元素API操作 | |
5 Selenium鼠标、键盘操作,滑动解锁等 | |
6 Selenium三类等待以及自动化应用场景和封装 | |
7 Selenium处理项目中常见的自动化场景(frame、弹窗、下拉框处理等) | |
8 Selenium处理项目中常见的自动化场景(JS,多窗口,验证码处理等) | |
9 basepage基础封装 | |
10 POM页面对象设计模式应用 | |
11 引入配置文件ini应用 | |
12 引入Logging文件应用 | |
13 引入unittest框架应用 | |
14 unittest+ddt数据驱动(上) | |
15 复杂用例的设计和实现 | |
16.jenkins持续集成UI自动化 |
3、接口自动化
笔者来源于公众号: 软测之家 更多精彩技术,工作心得,面试资料欢迎搜索公众号关注! | |
接口自动化框架 | 1 接口、接口测试需求分析和用例设计 |
2 http接口协议、cookies、session、token原理剥析 | |
3 接口测试神器Postman实现接口测试 : 基础应用(上) | |
4 接口测试神器Postman实现接口测试 : 高级应用(下) | |
5 接口测试神器Postman实现接口测试 : Jenkins持续集成Postman脚本。 | |
6 接口测试工具Jmeter实现接口测试 | |
7 接口测试神器Jmeter实现接口测试 : Jenkins持续集成Jmeter脚本。 | |
8 接口自动化实战+接口自动化框架设计 - requests模块应用和详解 | |
9 接口自动化框架设计 - requests请求封装 | |
10 接口自动化框架设计 - 封装改进:一个函数测试所有接口 | |
11 接口自动化框架设计 - yaml,接口串联,断言改造 | |
12 接口自动化框架设计 - 引入pytest之单元测试框架 | |
13 接口自动化框架设计 - pytest之fixtrue、mark应用 | |
14 接口自动化框架设计 - pytest之params、parametrize参数化 | |
15 接口自动化框架设计 - pytest之allure测试报告以及conftest实际应用 | |
16 接口自动化框架设计 - 框架集成日志、数据库校验、报告改造 | |
17 接口自动化框架设计 - Jenkins持续集成接口自动化 |
4、移动端App自动化
笔者来源于公众号:软测之家 更多精彩技术,工作心得,面试资料欢迎搜索公众号关注! | |
Appium框架 | 1 SDK工具,ADB命令,模拟器 |
2 Appium工作原理,环境搭建 | |
3 loggint日志收集和分析 | |
4 工具类的封装:操作Excel,操作配置文件,操作Yaml文件。 | |
5 断言,用例管理和报告结合 | |
6 PageObject分层设计与实现! | |
7 Drvier二次封装 | |
8 Appium Server | |
9 多机器运行,多线程 | |
10 关键字模型,Action类的设计和封装 | |
11 Jenkins持续集成 |
上面就是我为大家整理出来的一份自动化测试工程师发展方向的知识架构体系图,希望大家能在这里收益良多,可以说,这个进阶的过程会让你很难受,但是只要你熬过去了,以后的生活就轻松很多了,所谓万事开头难,只要迈出了第一步,你就成功了一半。
如果你不想再体验一次自学时找不到资料,没人解答问题,坚持几天就放弃的感受的话可以加我们的软件测试技术群:695458161,里面有各种软件测试资料和技术讨论。机油吧,测试君!
故乡留不住肉体,他乡留不住灵魂,生活就是在无人问津的地方拿尊严换钱 ,再在人声鼎沸的地方拿钱换尊严!
2019年初这个年假特别短,特别短,感觉刚回故乡,又要远走他乡!特别是看到宝贝女儿哭的撕心裂肺,肝肠寸断!奔向不惑之年的我本该享受天伦之乐,却到处是留守儿童和空巢老人。故乡若得安稳,谁又愿颠沛流离?
又要走了,很想多陪陪年迈的亲人,当面听他们说年轻的往事,看他们一脸幸福的表情。相对于电话真的太冰冷了。
若能安稳,我再也不愿颠沛流离。 每思及此,我便想念我那快乐的童年,我在心里暗暗发誓一定不要孩子的童年悄悄流走。我爱我的宝贝女儿。爸爸要给女儿一个最好的保障。爸爸一定会努力的。于是我做了一个任性且正确的选择,决定留在故乡这座美丽梦幻的新城:湖南长沙。我不后悔!我不愿再经历十年的颠沛流离,更不愿以后还要如此!
人到中年,如在生活的激流中行走,习惯了背过身子哭,转过身子笑。 但是自身没有足够的资本,如何敢任性呢?
所有漂泊的人生都梦想着平静、童年、玫瑰花,正如所有平静的人生都幻想伏特加、乐队和醉生梦死。
2020年是以往10年中最好的一年,是未来10年中最好的一年,而在我看来2020是美好如期而至的一年,虽然经历了【新冠】黑天鹅事件,但是雨后必定有彩虹,人生就是一场无法重头再来的旅行,走过的路,看过的风景,做过的选择,经历过的一切都将交织成每个人的乐章!未来的你肯定会感谢现在努力拼搏的自己!
我坚信:吾剑之所指,即是出路。有舍才有得!