测试运维工程师必会技能

综合        2020-03-23   来源:小斌说三农
点击上方“公众号” 可以订阅哦!


啦啦啦,各位TestOps的同学们新年好,相信大部分同学都已经开始上班啦,首先祝大家新春快乐,“猪”事皆顺。



作为芒果的新年第一篇,想跟大家聊一聊测试运维工程师(TestOps)的必备技能。


在聊测试运维工程师之前我们得先了解一下什么是TestOps

TestOps顾名思义就是测试运维,是在DevTestOps这个概念下抽象的结果,是一个将测试技能真正在生命周期中包围的关键职业。其测试技能与运维技能都缺一不可,除了要负责需求的分析归纳,测试环境与生产环境的统一协调,还要解决测试脚本与构建平台的统一整合,确保测试能够在最短的时间内落地执行


想详细了解我们DevOpsTestOps可以关注云大写的两篇文章:

TestOps是什么(1)

TestOps是什么(2)


近几年的互联网企业对于测试人员的编码能力最大的需求应该是PythonJava,今天芒果俩跟大家来聊一聊TestOps对于Python来说,应该具备什么样的技能。


编码基础

现在要想做好测试运维,甚至仅仅是测试,对于被测系统必须是熟悉的,你需要了解业务流程,需要了解数据的处理,需要了解系统的整体框架,为了更清楚的了解被测系统,而不是满足于简单的做个黑盒测试,势必就需要了解整个系统的开发流程,编码能力是一个测试运维的基础能力之一。

对于Python而言,我们需要掌握开发环境的维护,了解Python的开发环境、编码规则、基本语法、virtualenv等;我们需要对web开发流程有一定的了解,了解DjangoFlaskPyramidTornadoweb开发框架;我们需要了解前端开发,了解Html+CSS+JavaScript,了解Bootstrap等前端框架,了解ReactJavaScript框架;我们需要熟悉代码版本管理系统,熟练使用GitSVN等版本控制管理工具。


持续集成

在过去的几年时间里,互联网行业高速发展,,每天/每周要发版本,要保证快速交付,掌握持续集成的技术,也是TestOps必须掌握的技能之一。只有这样我们才能够跟开发保持同步,也能够更高效的选择各个版本进行测试。

在容器化跟微服务盛行的今天,熟练使用Docker、封装合适的Docker镜像已经成为了基本技能;谈到持续集成,就不能不提到Jenkins,对于Jenkins的部署、集成开发环境、构建自动化发布就属性使用Jenkins的基础了,还有可视化工具BlueOcean;对于提交的编码进行单元测试是保证高质量代码的关键之一,对于Python而言可以掌握pytestUnitTest等单元测试框架,还需要大家注意的是了解单元测试覆盖率工具,比如coverage等;静态代码审查也是保证软件质量的关键技术,现在除了定期进行代码评审、结对编程,使用SonarQube也是非常好的方法。


自动化测试

自动化测试技术大概是近几年来,被测试讨论得最多的技术了,对于出身于测开的芒果也跟大家多次探讨过自动化测试,但是这次想说的不仅仅是老生常谈的自动化测试对于现在的整个软件开发流程的重要性、UI自动化跟接口自动化技术。而是想跟大家说说,我们需要掌握的yapi接口管理、postman+Newman+jenkins持续集成、RestRestfulsqlmapswagger,对于python而言还有django rest frameworkpython json解析库、自动化性能测试框架Locust


持续部署

对于已经做到持续集成,并经过单元测试、代码审查、自动化测试通过的代码来说,想要做到快速上线,持续部署也是必须具备的,而TestOps作为能够保证测试更快落地执行的人员,对于持续部署的能力也是不能比运维人员差的。

相对于运维人员仅仅是部署生产环境以及简单的测试环境,TestOps应该掌握测试环境(即被测对象环境)的管理技能,这其中就包含多套docker的管理,参数、配置、日志等信息,版本管理工具保存多套版本以及其对应的环境配置,也要做到配置的脚本话;当然测试平台的管理、预生产环境管理也是需要掌握的;想要做到持续部署,现在被说的最多的就是自动化运维了,这时候就不得不提ansiblePuppetChefSaltStackFabric等工具了,推荐大家优先了解ansible


其他

当然想要成为一名合格的TestOps对于DevOps、敏捷、运维技术也是必须有一定了解的,芒果会跟大家一一介绍,请大家关注我们的公众号哟。



文末的福利

有对TestOps感兴趣的同学可以关注我们近期将要开设的TestOps工程师系列课程,芒果上面提到的技术都会讲到哟~

此次的课程将覆盖PMI-ACPEXIN Agile Scrum MasterEXIN DevOps Master、阿里大学DevOps测试工程师、测试敏捷化白皮书核心知识体系。针对敏捷开发流程和DevOps体系中对于测试的要求,从编程语言基础,到web框架开发(包括前端与后台),再到持续集成、自动化测试、持续部署,实现真正的敏捷体系下的测试思路体系构建。

这门对于TestOps工程师的开发流程落地课程会包含PythonJava两个版本,帮助测试人员学会看懂代码,掌握编码能力,能够参与整个项目从需求设计到项目部署的整个过程,为产品、开发、运维人员赋能。相对于Java版本,Python篇增加了Python自动化运维的内容。


详细课程报名及近期活动优惠活动请咨询小编芒果


TestOps|测试运维

精益技术 赋能过程

点击右上角"..."将好文分享给朋友吧

长按二维码关注我们


好看请点这里~