一个软件测试员的工作与学习(三)

简介:

在开始讲述这一年多的经历的过程之间,我又回顾了之前的经历,以便把比较好的把故事的衔接,需要说明的是,我并没什么高大上的经历来吹牛皮,只是做为一个普普通通的软件测试员,来记录自己的经历而已。

 

 

关于学历                                     

 

 

应该是在入职新公司前报考的自考,学历一直是我的硬伤,所以,就想通过自考的方式来弥补,对于搞技术的来说,尤其已经在这个行业混了几年的人来说,学历真有还很重要么?这得看公司。有些公司不在意学历,有些公司没有就是不行。至少在我面试的不少公司来看,有时候确实挺重要的,有些给钱多的,比如金融证券类的公司,学历必须的;有些人才济济,做技术的都想削尖脑袋往里进的,比如,华为、腾讯。

因为自考是个挺花时间的事情,几乎每个星期天都要上课,所以,几乎是没有休息时间的,要么上班要么上课。当然也有空闲,自考完了会有两周不用上课,有了一份稳定的工作之后,渐渐我的就开始怀疑,自考就真有用么,占具了我大量的时间,就为了一张纸,也许把这些时间用来学技术更有用。

直到我再次找工作的时候,我不再怀疑了,没这张纸,到嘴肉又飞了。证还没下来,为啥又急着跳,这次不是我主动的,情非得已,最后再说。

关于学历就说这么多,这只是我的个人经历的感受。

 

 

 

学习python                                  

 

 

回顾了上一篇的经历,说要认真的学一门语言,我基本做到了。在这一年多的时间里,我没再关心眼花缭乱的各种测试技术。把除了大多时间与精力花在了学习python 上。说有多精通谈不上,但写写自动化脚本,实现个小功能问题不大。

 

从2013年4月份入职新公司说起,入职什么的一两个月里没有特别紧迫的事情,处于半打酱油状态,后来调到web社区组后,了解项目是基于python实现的,于是,开始学python,简单易学,相关资料文档也丰富,所以学起来并不困难,但坚持很重要。

 

其实,我已经不止一次的传达我的看法,以及我验证的结果:测试人员面对的技术太多,我们真正用到的技术又很少,所以,我们就很容易三心二意,今天听别人讨论这个技术流B ,就学这个;明天又听说那个技术流B又去学那个。混了几年发现仍然缺乏核心竞争力。会写文档不是核心竞争力,会写用例不是核心竞争力,会用某种测试工具也不是核心竞争力。

听我的,抛开那些所谓高大上的测试技术吧。专心学一门语言,一年后,你一定会来感谢我的。测试人员如何学语言?

 

 

 

关于自动化                                 

 

 

你一定在抱怨,买了本编程书,上面的代码也都看明白了,也都敲了几遍。但还是不能像开发一样写程序,而且更重要的是学了又不上,过段时间又忘记。

好,我告诉我是怎么做的。

我大概花了一个月找来python 的一本基础教程。学完大概就是上面所说的状态。然后,我发现我们web项目挺适合做自动化的,selenium webdriver 本身是支持python来做自动化的,但关于webdriver + python 来做自动化的中文资料并不多,学习起来颇为痛苦,webdriver API上的方法,没有python写法的实例了。所以,花了不少时间来学习API 。

熟悉页面上各种元素的操作,问题又回到python上,以至于当初的去纠结如何用python来循环读取一个文件里的数据,还好这样例子很容易找到。突然有一天在一次挣扎过后,我醍醐灌顶的明白了用程序来解决问题。

我在学习的过程中更多的是以需求为驱动去解决实际问题。过程很痛苦,结果很爽快,在反复的痛苦-爽快的过程中,你就具备了编程能力。

因为坚持专一,这也就是为什么我可以在半年后开始向别人讲 selenium+python如何实现自动化的课程。

 

仍然不断的有人问,为啥不学QTP ,简单易学,功能强大。因为我不仅仅是为了做自动化而在学自动化。

编程如写文章,识字的人都能看懂文章,我们在不断写作的过程中,模仿的过程中学会了写出优秀的作品;懂编程语法的人都能把程序看个大概,只有在不断的练习、不断的模仿中才能写出了健壮高效的软件。

 

 

关于文档                                      

 

 

《selenium 2 python 自动化测试实战》应该可以体现我这一年多来的技术积累。因为最初博客写了十几篇 selenium webdriver  python版的webdriver 如何操作页面各种元素。为了方便别人阅读,所以,整理了。

selenium webdriver (python) 第一版PDF

 

后面,又学到了一些东西,加到了里面,于是又有了:

selenium webdriver (python) 第二版

 

再后面,又了加一些技术,于是又有了:

selenium webdriver (python) 第三版

 

在这个学习的过程中,兔子给我不少帮助,并且向我介绍了他们的测试框架之后,我非常激动,觉得这技术非常有用。前三版的文档也得到了他的鼓励。这次我准备玩个大的(原本是想投稿出版社的),并没有急于第四版、第五版这样更新下去。花了相当的时间和精力攻破一个个技术点。不单单是webdriver ,添加selenium IDE 和selenium grid 的使用。形成了一套比较完整的知识结构,于是,有了:

selenium2 python 自动化测试实战》 --new

 

名字发生的变化,好多人认为他们不是一个文档。好吧!他们是继承关系,“实战”继承了前面几个文档的所有东西。最新版已经扩充到360页。

 

 

 

关于分享                                

 

 

Selenium + Python 的自动化测试分享也是2013年底开始搞的,2013年年初的时候,我想总结自己的测试经验录制一套《web测试指南》的视频,很紧张,效果就非常差,录制了5节后就停掉了;讲课能力一直是我的一个短板,写文章的能力相比要好很多,这也主要是这几年不间断写的积累。所以,视频别人听了之后,惊呼文不对声。

后来,乙醇要做Selenium + Python 自动化测试的分享,因为之前我向他请教过这方面的问题。所以,他希望我来讲,我很高兴的接受了这个任务。第一期的效果每是很差的,到目前的第三期已经有了很多的进步。可以讲的内容也在不断扩展。

 

 

 

关于离开                                

 

我没用“离职”而是“离开”,这个原因比较纠结。这个公司是我目前为止待着最舒服的一个公司。公司福利,公司文化,工作强度,同事关系都很好。所以,我才有精力做这么多事儿,向团队分享自动化,对项目进行自动化。

年初的时候有过跳槽的躁动,调薪之后,新项目规划出来之后,就决心继续干下去。可惜意外的情况打破了这些。项目没了,新的项目胎死腹中。在压抑的环境待一个月多,无所事事。然后,我就离开了。

 

 

生活继续,工作继续,学习继续。我的经历继续。

 

==============================================

目录
相关文章
|
2月前
|
安全 关系型数据库 测试技术
学习Python Web开发的安全测试需要具备哪些知识?
学习Python Web开发的安全测试需要具备哪些知识?
38 4
|
3月前
|
安全 Java 数据库
shiro学习一:了解shiro,学习执行shiro的流程。使用springboot的测试模块学习shiro单应用(demo 6个)
这篇文章是关于Apache Shiro权限管理框架的详细学习指南,涵盖了Shiro的基本概念、认证与授权流程,并通过Spring Boot测试模块演示了Shiro在单应用环境下的使用,包括与IniRealm、JdbcRealm的集成以及自定义Realm的实现。
56 3
shiro学习一:了解shiro,学习执行shiro的流程。使用springboot的测试模块学习shiro单应用(demo 6个)
|
3月前
|
自然语言处理 机器人 Python
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
ChatPaper是一个基于文本生成技术的智能研究论文工具,能够根据用户输入进行智能回复和互动。它支持快速下载、阅读论文,并通过分析论文的关键信息帮助用户判断是否需要深入了解。用户可以通过命令行或网页界面操作,进行论文搜索、下载、总结等。
76 1
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
|
2月前
|
前端开发 JavaScript 安全
学习如何为 React 组件编写测试:
学习如何为 React 组件编写测试:
43 2
|
2月前
|
编解码 安全 Linux
网络空间安全之一个WH的超前沿全栈技术深入学习之路(10-2):保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali——Liinux-Debian:就怕你学成黑客啦!)作者——LJS
保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali以及常见的报错及对应解决方案、常用Kali功能简便化以及详解如何具体实现
|
3月前
|
测试技术 开发者
vertx的学习总结6之动态代理类和测试
本文是Vert.x学习系列的第六部分,介绍了如何使用动态代理在事件总线上公开服务,以及如何进行Vert.x组件的异步测试,包括动态代理的创建和使用,以及JUnit 5和Vert.x测试工具的结合使用。
32 3
vertx的学习总结6之动态代理类和测试
|
3月前
|
测试技术
软件质量保护与测试(第2版)学习总结第十三章 集成测试
本文是《软件质量保护与测试》(第2版)第十三章的学习总结,介绍了集成测试的概念、主要任务、测试层次与原则,以及集成测试的不同策略,包括非渐增式集成和渐增式集成(自顶向下和自底向上),并通过图示详细解释了集成测试的过程。
85 1
软件质量保护与测试(第2版)学习总结第十三章 集成测试
|
3月前
|
测试技术
软件质量保护与测试(第2版)学习总结第十章 黑盒测试
本文是《软件质量保护与测试》(第2版)第十章的学习总结,介绍了黑盒测试的基本概念和方法,包括等价类划分、边界值分析和因果图法,并通过具体例子展示了如何设计测试用例来验证软件的功能性需求。
79 1
软件质量保护与测试(第2版)学习总结第十章 黑盒测试
|
3月前
|
人工智能 人机交互 数据库
软件质量保护与测试(第2版)学习总结第一章
本文是《软件质量保护与测试》(第2版)第一章的学习总结,概述了软件的特征、分类、软件工程的层次化技术、现代软件开发的变化,以及软件质量的概念和评价体系,包括黑盒、白盒和灰盒测试方法。
42 1
软件质量保护与测试(第2版)学习总结第一章
|
3月前
|
分布式计算 Hadoop 大数据
大数据体系知识学习(一):PySpark和Hadoop环境的搭建与测试
这篇文章是关于大数据体系知识学习的,主要介绍了Apache Spark的基本概念、特点、组件,以及如何安装配置Java、PySpark和Hadoop环境。文章还提供了详细的安装步骤和测试代码,帮助读者搭建和测试大数据环境。
92 1