我们学了测试自动化开发之后, 我们将来的工作做什么呢?

大部分同学可能想,那当然是在测试自动化的道路上不断的深造呗。

其实啊我们有了自动化开发技能后,职业发展的路子还是很广的,并不限于自动化工作,我们来看一下。

 

 

首先,我们来看还是在测试行业

 

测试自动化

学的就是测试自动化, 很自然的就可以去做测试自动化相关的工作。

具体可以包括

 

Ø UI自动化

这是我们接触到的自动化工作量最多的部分。

目前主要的是针对Web 应用  移动应用方面。传统的桌面应用自动化的需求现在是比较少了

Web应用自动化主流技术 就是Selenium,而移动应用方面Appium是使用比较多的自动化工具。

 

Ø API接口的自动化

这里说的API接口其实是 Web API 接口

由于移动互联网的兴起 目前 前端应用和后端的服务 接口 大部分(除了游戏、即时通讯类)都是使用REST 风格的 Web API接口

这方面自动化的需求也在增加

目前可以使用的工具有很多比如 PostmanSoapUIRestClient等。

但是笔者觉得这些工具还是适合手工测试和半自动化的测试要想很好的融入整个项目的自动化系统中还是得靠编程语言开发自动化库

 

Ø 综合

我们在 自动化整个项目的时候,需要的是多种技术的整合。有时一个测试用例的自动化,就需要多种技术手段。

比如测试一个查询订单的API接口,可能就需要使用Selenium先在web界面上准备好一些订单数据, 再调用库 发出REST API请求给服务端。甚至还需要一些数据库、文件操作 来检验系统数据是否有正确的变化。

 

开发自动化系统时通常需要一个通用型的自动化框架  比如Robot Framework 作为自动化系统的框架 然后使用编程语言开发库。QA负责使用库开发自动化用例。

 

    

    

工具开发

    

    

学习测试自动化 其本质也是学习一种开发能力。有了这种开发能力后,我们能做的不一定是自动化工作。

比如学会了编程语言(比如Python我们还可以开发一些工具 ,包括功能测试工具、性能的测试工具的开发。

有些人会把开发测试工具和自动化测试混为一谭, 测试工具不一定是自动化的,很多都是用在手工测试上的。

自动化是非常耗费开发资源的需要投入不小的人力和时间在自动化之前往往需要进行较长时间的手工测试

开发测试工具在大公司比较常见,因为大公司开发的产品很多都是一个大系统里面的一个模块。

比如,公司开发的产品是一个电信 认证、授权、计费(简称AAA)服务器,它的交互对象是AAA客户端模块,比如接入服务器。

我们要测试AAA服务就要根据 它和 客户端之间的协议,开发模拟客户端的工具这个工具可以发出各种请求消息给 被测系统(AAA服务器)

 

当然性能测试工具的开发就更常见了。 有的我们可以在现有的测试工具上做开发,比如基于jmeter开发Web API的性能测试

有的我们没有现成的工具做二次开发的 就需要我们自己从头开发一个性能测试工具。

    

    

 

手工测试    

    

可能有的同学会觉得比较奇怪,我们学习的是自动化测试的技术。怎么又做手工测试了?

其实这个不奇怪。学好了自动化技术之后 以前做不了、做不好的测试,现在可以做了

比如接口测试,以前可能受限于现有的工具,有的功能,现有工具无法测试,但是我们没有能力开发新的。

现在我们可以创造新的工具,可以修改老的工具的代码 更新、优化。

        

更重要的是, 有了开发技能,我们其实对系统会更深刻的理解,会理解一些实现的细节,就会做出更全面的测试用例

 

开发

        

就像前面说的,学习测试自动化 其本质也是学习一种开发能力。有了这种开发能力后,我们能做的不一定是自动化工作。如果有可能,我们甚至可以转开发行业。

虽然我们起始点是学习的自动化开发但是有了一定的基础比如Python语言的掌握,可以学习一些其他技术,比如Django,就可以进行Web后端的开发。

完全可以进一步学习其他语言。比如 js,进入Web前端开发领域。掌握了Python后,学习JS会快很多。

 

开发行业又是一个新的广阔沃土。将来怎么发展,完全看个人的兴趣和机遇。

 

            

        

其他

自动化学习,通常Python是必选的。有了Python语言基础, 还有一些其他行业可以选择

比如数据分析业。国内有些金融行业有这样的需求,我们在招聘需求上已经可以看到。Python是做大数据分析的首选语言,掌握了它,对进入数据分析行业是非常有利的。

 

再比如 运维, python在运维中也是非常常用的。

    

 

我们松勤学员学习完测试自动化课程,一个常见的误区就是专门找测试自动化的工作
这样会限制自己的工作机会。
其实大家找工作仍可找测试工程师职位, 有了测试开发能力,相比之下,同样的测试工程师职位,企业对你薪资心理价位就会提高。
另外一些企业, 原来你可能进入不了, 有了测试开发的技能加持, 或许就可以通过。
目前市场上测试工程师职位比 自动化职位多很多, 大家千万不能错过
而且很多测试工程师工作岗位中, 会有测试开发的任务的。不要担心自己学习的知识没有用武之地