測試開發(fā)工程師必備技術(shù)棧(附詳細(xì)技術(shù)點(diǎn))
近些年來,測試人員會寫代碼已經(jīng)成為業(yè)界剛需。目前高薪的測試工作崗位都硬性需要java和python的代碼技能,大家也一定意識到了能夠編寫代碼的重要性和迫切性。 “測試開發(fā)”也成了熱門崗位。測試開發(fā)工程師簡單地說就是既會測試又懂代碼的測試人才!他們能夠幫助開發(fā)和測試同學(xué)提升測試效率,進(jìn)而幫助公司提升整體的研發(fā)效率!那么測試開發(fā)工程師的主要工作職責(zé)是什么呢?他們需要的技術(shù)棧又有哪些呢?在這里我給大家進(jìn)行一個詳細(xì)的匯總!
核心:編碼能力!Java或者Python都可以,兩者兼顧最好!
主要工作內(nèi)容:UI自動化測試、接口自動化測試、測試小工具開發(fā)、測試平臺開發(fā)。
本篇文章以Java為主線對測試開發(fā)進(jìn)行技術(shù)棧分析
Java基礎(chǔ)知識
數(shù)據(jù)類型
8種基本數(shù)據(jù)類型:byte、short、int、long、float、double、char、boolean
3種引用數(shù)據(jù)類型:類、接口、數(shù)組
條件語句應(yīng)用
循環(huán)語句應(yīng)用
String的常用方法使用,字符串的查找、拼接、替換、刪除
數(shù)組和動態(tài)數(shù)組(arraylist)
hashmap
正則表達(dá)式
java函數(shù),包括函數(shù)的定義,參數(shù)和返回值
Java的異常機(jī)制
Java命名規(guī)范
面向?qū)ο罄^承,封裝和多態(tài)
JavaIO概念與文件的讀寫
maven 基礎(chǔ),重點(diǎn)是:安裝maven環(huán)境,創(chuàng)建maven工程,maven工程結(jié)構(gòu),pom.xml,在ide中使用maven
Git\SVN基礎(chǔ)使用
測試框架Junit4和TestNG
UI自動化測試
核心:使用java的jar包+Java測試框架進(jìn)行自動化測試
如果你進(jìn)行web應(yīng)用的自動化測試,使用selenium jar包
如果你進(jìn)行IOS或者Android應(yīng)用的自動化測試,使用appium jar包
接口自動化測試
核心:使用java的jar包+Java測試框架進(jìn)行自動化測試
如果你進(jìn)行http或者h(yuǎn)ttps接口測試,使用httpclient jar包
如果你進(jìn)行其他類型的接口測試(包括:TCP、UDP、dubbo等等),需要與研發(fā)溝通,具體的協(xié)議是什么?如何調(diào)用該服務(wù)接口?因?yàn)榻涌跍y試的本質(zhì)就是(以java為例),通過new 類的實(shí)例來調(diào)用類中的某個方法!
測試小工具開發(fā)
核心:通過代碼解決手工測試重復(fù)度高的工作,這里舉幾個例子
測試數(shù)據(jù)創(chuàng)建:可以通過寫sql語句+UI自動化+接口自動化的方式來創(chuàng)建測試數(shù)據(jù)
測試環(huán)境構(gòu)建:主要是python,shell+ansible
Excel文檔相關(guān)處理:使用poi-ooxml jar包
Jenkins任務(wù)處理:使用jenkins-client jar
測試平臺開發(fā)
個人觀點(diǎn),測試平臺開發(fā)本質(zhì)上就是開發(fā)了,只不過是開發(fā)測試相關(guān)的產(chǎn)品。那么就需要較為深入地了解Java開發(fā)的相關(guān)的知識了,主要包括:
- 容器
- 多線程
- 反射
- 泛型
設(shè)計(jì)模式,重點(diǎn)關(guān)注:工廠設(shè)計(jì)模式,單例模式,代理模式,模板方法,包裝器模式,觀察者模式和適配器模式
由于絕大多數(shù)測試平臺都是基于B/S架構(gòu)開發(fā)的,所以我們需要掌握前后端相關(guān)技術(shù)。
后端需要掌握的知識包括:
- Spring,后端基礎(chǔ)框架
- Spring MVC,是基于 Spring 的一個 MVC 框架
微服務(wù)的概念
- Spring Boot,是基于 Spring的條件注冊的一套快速開發(fā)整合包,目前最主流的技術(shù)
- Spring Data JPA,操控?cái)?shù)據(jù)庫
- MyBatis,操控?cái)?shù)據(jù)庫
Spring Data JPA和MyBaits的比較如下
1.表關(guān)聯(lián)較多的項(xiàng)目,優(yōu)先使用mybatis
2.持續(xù)維護(hù)開發(fā)迭代較快的項(xiàng)目建議使用mybatis,因?yàn)樗鼮殪`活。
3.對于傳統(tǒng)項(xiàng)目或者關(guān)系模型較為清晰穩(wěn)定的項(xiàng)目,建議JPA
Spring Boot消息驅(qū)動(包括:KafkaTemplate、RabbitTemplate等等)
前端需要掌握的知識包括:
- HTML
- DOM
- Javascipt
- Css
- Vue
- react
總結(jié)
以上就是測試開發(fā)同學(xué)必備的技術(shù)棧了,難點(diǎn)自然是測試平臺開發(fā),因?yàn)檫@個職位本質(zhì)就是開發(fā)!有興趣的同學(xué)可以按照文章的知識點(diǎn),自行充電,慢慢提升!原創(chuàng)不易,如果文章幫到了你,歡迎大家點(diǎn)贊、收藏、轉(zhuǎn)發(fā),您的支持是我不斷原創(chuàng)的動力!