随着
测试行业的发展,“会代码”越来越成为测试工程师的一个标签。打开各大招聘网站,测试工程师月薪一万以上基本都有一个必备技能,那就是
自动化测试。那么自动化测试到底难不难呢?下面我将会将我的经历讲给大家听,希望听完后,大家会有自己的一个判断。
一、我是谁?
大家好,不知不觉,入行
软件测试也有8个年头了。待过创业公司也待过上市公司。做过
功能测试、自动化测试也做过
性能测试。做过测试新人也做过测试组长。如果要是从这8年中说出最宝贵的经验,我想应该是知识体系化。那么什么是知识体系化,每个人都有不同,下面简单来谈一下我的知识体系化。
二、我的成长路线?
功能测试——>UI自动化
回想刚入行那会,功能测试都玩不溜。所以花了很多时间在功能测试用例的设计上,随着项目越做越多,
用例设计也变得手到擒来。自己的内心也不满足于只做功能测试,觉得自动化测试很厉害的样子,就去学了代码基础。但是有一个问题,学了代码基础还是不会做自动化测试,因为那时候还傻傻分不清自动化到底有哪几种。
随着学习的深入,知道软件测试中常见的自动化主要分为2种:一种是UI自动化,一种是接口自动化。那么先学哪个呢?当时觉得UI自动化有点不明觉厉,因为可以代替手工点点点,非常酷炫。后来又花小半年时间学习UI自动化。到这里可能有点人会说,UI自动化要学这么久吗?对于我当时来说,是的。虽然是计算机专业出身,但是大学学的东西基本都忘差不多了。我们先来看UI自动化要学哪些内容(以selenium举例),下面用个思维导图简单列一下:
当然UI自动化需要学的内容不止以上这些,这些东西算是比较核心的。学习过程中所有的知识都是零散的,想要组合起来对一个小白来说却是很难。后来有机会加入一个新的公司,需要用到UI自动化,然后去GitHub上找了很有优秀的代码以及看一些博客,终于实现了第一个自动化项目。那种感觉是非常棒的,但是也被个大神说这有啥,不就是按键精灵吗(捂脸哭)。
UI自动化——>接口自动化
当然,也是被这个大神带上走接口自动化之路,有了UI自动化学习经验,学习接口自动化基本没有费什么功夫。如果让我说UI自动化和接口自动化各有哪些优缺点,这是不好比较的,其目的都是为了软件质量。但是如果让我选择,我会选择接口自动化,因为接口一般是不容易变得的,UI界面是经常变的,所以接口自动化的维护成本相对较低。
接口自动化——>性能测试
UI自动化,接口自动化学完了,学什么呢?我又去学了性能,为什么学性能,完全是工作需要,后来发现性能真的是个无底洞,需要了解开发知识、服务器架构、
操作系统、测试监控工具、容器知识等等。知识面太广,现在还在苦苦挣扎。当然在性能测试过程中,也去学了一些开发知识,之前做UI/接口自动化或者功能测试时只能从黑盒/灰盒层面去判断BUG原因,学了开发知识后,大概就知道这个bug是如何产生了。这对我自己的测试生涯也算是有了一个提高。
说了这么多,其实我们软件测试人员的知识体系常见的就以下几点:
当然这个体系要细可以很细,每个点可能都需要串很多知识,但是当我们真正用到的时候,发现其实很多知识都可以串起来的。当我们有了自己的知识体系,我想,不论在哪家公司,不论什么项目,基本都可以做到游刃有余。当然这个体系里面有一个最重要一点,就是记笔记!看完自动化测试分类后,若想得到一个完整的自动化测试完整路径。