测试开发工程师必备技术栈(附详细技术点)

开发 前端
测试开发工程师简单地说就是既会测试又懂代码的测试人才!他们能够帮助开发和测试同学提升测试效率,进而帮助公司提升整体的研发效率!那么测试开发工程师的主要工作职责是什么呢?他们需要的技术栈又有哪些呢?在这里我给大家进行一个详细的汇总!

[[384522]]

 近些年来,测试人员会写代码已经成为业界刚需。目前高薪的测试工作岗位都硬性需要java和python的代码技能,大家也一定意识到了能够编写代码的重要性和迫切性。 “测试开发”也成了热门岗位。测试开发工程师简单地说就是既会测试又懂代码的测试人才!他们能够帮助开发和测试同学提升测试效率,进而帮助公司提升整体的研发效率!那么测试开发工程师的主要工作职责是什么呢?他们需要的技术栈又有哪些呢?在这里我给大家进行一个详细的汇总!

核心:编码能力!Java或者Python都可以,两者兼顾最好!

主要工作内容:UI自动化测试、接口自动化测试、测试小工具开发、测试平台开发。

本篇文章以Java为主线对测试开发进行技术栈分析

Java基础知识

数据类型

8种基本数据类型:byte、short、int、long、float、double、char、boolean

3种引用数据类型:类、接口、数组

条件语句应用

循环语句应用

String的常用方法使用,字符串的查找、拼接、替换、删除

数组和动态数组(arraylist)

hashmap

正则表达式

java函数,包括函数的定义,参数和返回值

Java的异常机制

Java命名规范

面向对象继承,封装和多态

JavaIO概念与文件的读写

maven 基础,重点是:安装maven环境,创建maven工程,maven工程结构,pom.xml,在ide中使用maven

Git\SVN基础使用

测试框架Junit4和TestNG

UI自动化测试

核心:使用java的jar包+Java测试框架进行自动化测试

如果你进行web应用的自动化测试,使用selenium jar包

如果你进行IOS或者Android应用的自动化测试,使用appium jar包

接口自动化测试

核心:使用java的jar包+Java测试框架进行自动化测试

如果你进行http或者https接口测试,使用httpclient jar包

如果你进行其他类型的接口测试(包括:TCP、UDP、dubbo等等),需要与研发沟通,具体的协议是什么?如何调用该服务接口?因为接口测试的本质就是(以java为例),通过new 类的实例来调用类中的某个方法!

测试小工具开发

核心:通过代码解决手工测试重复度高的工作,这里举几个例子

测试数据创建:可以通过写sql语句+UI自动化+接口自动化的方式来创建测试数据

测试环境构建:主要是python,shell+ansible

Excel文档相关处理:使用poi-ooxml jar包

Jenkins任务处理:使用jenkins-client jar

测试平台开发

个人观点,测试平台开发本质上就是开发了,只不过是开发测试相关的产品。那么就需要较为深入地了解Java开发的相关的知识了,主要包括:

  • 容器
  • 多线程
  • 反射
  • 泛型

设计模式,重点关注:工厂设计模式,单例模式,代理模式,模板方法,包装器模式,观察者模式和适配器模式

由于绝大多数测试平台都是基于B/S架构开发的,所以我们需要掌握前后端相关技术。

后端需要掌握的知识包括:

  • Spring,后端基础框架
  • Spring MVC,是基于 Spring 的一个 MVC 框架

微服务的概念

  • Spring Boot,是基于 Spring的条件注册的一套快速开发整合包,目前最主流的技术
  • Spring Data JPA,操控数据库
  • MyBatis,操控数据库

Spring Data JPA和MyBaits的比较如下

1.表关联较多的项目,优先使用mybatis

2.持续维护开发迭代较快的项目建议使用mybatis,因为他更为灵活。

3.对于传统项目或者关系模型较为清晰稳定的项目,建议JPA

Spring Boot消息驱动(包括:KafkaTemplate、RabbitTemplate等等)

前端需要掌握的知识包括:

  • HTML
  • DOM
  • Javascipt
  • Css
  • Vue
  • react

总结

以上就是测试开发同学必备的技术栈了,难点自然是测试平台开发,因为这个职位本质就是开发!有兴趣的同学可以按照文章的知识点,自行充电,慢慢提升!原创不易,如果文章帮到了你,欢迎大家点赞、收藏、转发,您的支持是我不断原创的动力!

 

责任编辑:姜华 来源: 今日头条
相关推荐

2012-07-13 14:09:47

测试工程师软件测试

2009-06-05 13:02:48

2016-09-23 14:23:25

Linux

2015-08-17 09:27:51

全栈工程师Devops工具周期表

2012-07-11 15:52:18

技术嘉年华

2009-06-01 09:09:21

微软软件测试开发工程师

2021-07-20 09:00:00

开发软件债务

2019-01-28 06:13:11

数据工程师数据科学家数据分析

2021-01-29 17:26:03

大数据开发工程师

2017-08-07 18:45:51

前端JavaScript技术栈

2017-07-26 13:51:19

前端JavaScriptTypeScript

2017-11-10 19:00:37

华为

2012-03-31 16:57:52

工程师创业团队

2020-04-01 11:01:57

工程师技术裁员

2011-09-13 10:41:40

VLAN划分VLAN交换机

2015-09-22 13:43:09

嵌入式开发云服务后端技术

2021-07-12 09:00:00

网络安全Web技术

2017-10-12 14:24:24

2013-12-23 09:09:29

网络工程师技术愿望2014

2020-09-29 13:10:28

DevOps自动化技能
点赞
收藏

51CTO技术栈公众号