0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

測試工程師應具備哪些基本技能

工程師人生 ? 來源:wv ? 作者:簡書網(wǎng) ? 2019-09-12 10:20 ? 次閱讀

筆者針對測試從業(yè)者必須掌握的基本功做了個分層:

1、操作系統(tǒng)

在這個層面,至少需要去了解操作系統(tǒng)類型、生產(chǎn)廠商、劃時代的版本、典型的應用場景。

一般而言,操作系統(tǒng)類型可以分為:unix、linux、windows,咦蘋果系統(tǒng)去哪了? 蘋果系統(tǒng)的核是unix的一個分支。當然了要是細分下去會更多,大家大體了解這三種足夠(也可以把mac os列為獨立的一種、android則自動歸為linux系列)

從應用的場景又可以分為:桌面版本、服務器版本、移動版本,獨立生態(tài)的蘋果,對于每種所占據(jù)的市場地位,也是眾所皆知的,如果你不清楚,那你平時就應該多多看看相關科技資訊信息了。

從操作系統(tǒng)生產(chǎn)商發(fā)行版本來看:

windows分兩大類: 以往桌面版的windows系列和服務器版本的Server系列以及現(xiàn)在桌面、移動合一的windows 10

unix:這個就比較多了,例如AIX(工作站、大型計算機常用)、原sun發(fā)布的Solaris、惠普發(fā)布的HP-UX、A/UX(即蘋果系統(tǒng))

linux:這個就更多了,例如centos、fedaro、ubutun、debian、opensuse、redhat、kali等等,國內(nèi)的就不列,大家自己去搜索下。

不管是哪種類型的操作系統(tǒng),您都應該去了解下POSIX,POSIX標準定義了操作系統(tǒng)應該為應用程序提供的接口標準,是IEEE為要在各種UNIX操作系統(tǒng)上運行的軟件而定義的一系列API標準的總稱,其正式稱呼為IEEE 1003,而國際標準名稱為ISO/IEC 9945。

通過對POSIX的了解,你能更深入的了解什么是操作系統(tǒng)。

2、協(xié)議層

協(xié)議是什么? 協(xié)議就是游戲規(guī)則,如果你不具備打破規(guī)則的能力,那請遵循游戲規(guī)則,否則沒人和你玩。

對測試從業(yè)者而已,需要掌握:

網(wǎng)絡協(xié)議由誰定義?

在哪里可以查閱協(xié)議定義原文?

在哪里可以查閱中文版協(xié)議定義原文?

測試人員應該掌握哪些協(xié)議?

下面回答下上述四個問題:

幾乎所有的因特網(wǎng)標準都收錄在RFC(Request For Comments)中,RFC是一系列以編號排定的文件。文件收集了有關因特網(wǎng)相關資訊,以及UNIX和因特網(wǎng)社群的軟件文件。目前RFC文件是由Internet Society(ISOC)所贊助發(fā)行。

RFC原文你可以從這里獲取: https://www.rfc-editor.org/

RFC中文版你可以從這里獲?。篽ttp://man.chinaunix.net/develop/rfc/default.htm

對于協(xié)議的掌握,一是掌握協(xié)議機制;二是協(xié)議報文格式;三是抓包分析工具。對測試人員而言,必須掌握的機制是:

IP/TCP三次握手機制。

必須掌握的報文格式:

IP協(xié)議

TCP協(xié)議

HTTP協(xié)議

抓包分析工具:

首推wireshark

其他的比如httpWatch、fiddler

對于具體的信息請大家自行去找相關文檔查閱和實踐。

3、基礎服務

這里大致分幾個類,大家就清楚了,我們應該掌握:

Web Server類,例如tomcat、apache、weblogic、IIS等等

數(shù)據(jù)庫:例如Oracel、MySQL、mongodb等等

Docker類容器等等

當然還有其他的,不過這些就算沒直接接觸,應該要去了解:

其應用場景是什么樣的

其部署方式及可能帶來的性能影響

同類型基礎服務間的優(yōu)劣對比

關鍵性的配置

在這個基礎上,大家根據(jù)自己踩過的坑再繼續(xù)發(fā)揮下,會有更多的收獲。

4、編程能力

在這里所說的編程能力,不僅僅包括C、C++java等等這類的開發(fā)語言,同樣包括SQL、html等等。

從軟件測試招聘的要求和未來發(fā)展來看,深入掌握一門編程語言是必備的基本能力,同時對各種語言能有所了解、甚至理解也將成為優(yōu)勢。

從編程角度和職場要求來看,測試人員應該掌握以下幾個方面的能力:

熟練掌握一門編程語言,并能將該語言服務于測試過程效率的改進

了解常見的算法的時間消耗和空間消耗

debug分析能力

軟件工程思想

當然還有其他能力,但我想,上述四種能力是最為基礎的,也是最為核心的。對于上述幾種能力的掌握推薦基本書吧:

編程方面,推薦xx核心編程,例如python就推薦: 《Python核心編程》

算法方面:《算法導論》

debug能力:這個要靠實踐中積累了,需要各種知識的綜合應用和經(jīng)驗積累。一般來講三板斧:

一是print;二是log(日志);三是IDE自帶debug功能(單步調(diào)試等)。

軟件工程思想:比較強力推薦林銳博士的《軟件工程思想》通俗易懂,語言犀利,深刻透徹。

5、基本命令

這里的基本命令是指windows、linux、unix等操作系統(tǒng)下的常用的命令,對于這些命令我們需要掌握哪些呢?這里我們不列舉具體的命令。

下面我們說明下要掌握的命令分類和其典型代表命令:

系統(tǒng)管理類,例如用戶管理、進程管理、內(nèi)存、CPU監(jiān)控等等

文件管理類,例如文件比較、 創(chuàng)建、查找、拷貝、刪除、賦權(quán)等等

磁盤管理類,例如目錄創(chuàng)建、刪除、掛載等等

系統(tǒng)設置類,例如環(huán)境變量設置、計劃任務管理等等

備份壓縮類,例如文件備份、各種格式文件解壓縮等等

當然還有其他分類的命令,但上述這些是日常工作中,必須會的。

6、軟件測試

這個就太多太多了,簡直無以言表。我試著就軟件測試進行濃縮,僅供大家參考:

博弈論

動態(tài)規(guī)劃

求同存異

思緒良久,沒有嘗試出通俗易懂的表達方式,也不想闡述過多的理論或細節(jié),最終選擇了上述幾個關鍵詞。

下面我介紹下這兩個關鍵詞的含義,我想應該可以給大家一些發(fā)散的原點。

博弈論:主要研究公式化了的激勵結(jié)構(gòu)間的相互作用,是研究具有斗爭或競爭性質(zhì)現(xiàn)象的數(shù)學理論和方法。

動態(tài)規(guī)劃:是求解決策過程(decision process)最優(yōu)化的數(shù)學方法。

求同存異:是周恩來處理復雜關系、解決復雜矛盾一以貫之的思想方法和行為模式,中國外交政策之一。

在反復回顧過程的測試實踐和對測試領域未來的發(fā)展,認為這三個詞能代表測試領域的特色[注:這三個詞也可以用于其他任何領域吧。萬金油,哪都可以用^_^]

人生苦短,我做測試!

7、測試技術

測試技術應當說是測試實踐過程中最為簡潔的事了,但卻成為了測試人員進一步提升的攔門虎,有些意外,有些無奈,讓人很迷茫。

這里簡單的說明下測試技術方向的想法,要想掌握測試技術,首先得了解以下分層:

UI級自動化測試,模擬用戶真實操作,改進測試過程的效率

接口級自動化測試,驗證系統(tǒng)、服務、模塊間的調(diào)用關系及響應數(shù)據(jù)

性能測試,采集系統(tǒng)性能指標、挖掘系統(tǒng)瓶頸,預估系統(tǒng)未來擴容的可行性

安全測試,挖掘系統(tǒng)安全漏洞,規(guī)劃系統(tǒng)、數(shù)據(jù)等安全

數(shù)據(jù)測試,過濾臟數(shù)據(jù),確保數(shù)據(jù)的有效性、精確性,挖掘數(shù)據(jù)的價值

其他可自動化測試的

提供測試技術實施成功率的幾個重要保障:

定義自動化測試的邊界,即抓住最典型的用戶場景和異常場景,忌通吃

做好自動化業(yè)務場景對應的元素定位技術分析

定義好自動化測試執(zhí)行方式,即全自動調(diào)度測試、半自動、手工觸發(fā)方式

做好自動化測試數(shù)據(jù)規(guī)劃,數(shù)據(jù)驅(qū)動流程是一種很好的方式

總結(jié)

基本功底先分享這么多,后續(xù)還有關于基本功底的分享,例如測試數(shù)據(jù)規(guī)劃、過程度量等等

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 測試工程師
    +關注

    關注

    6

    文章

    124

    瀏覽量

    12398
收藏 人收藏

    評論

    相關推薦

    電力電子工程師拿到50W以上的年薪需要具備哪些技能

    高薪電力電子工程師需要具備技能
    的頭像 發(fā)表于 11-05 09:44 ?107次閱讀
    電力電子<b class='flag-5'>工程師</b>拿到50W以上的年薪需要<b class='flag-5'>具備</b>哪些<b class='flag-5'>技能</b>

    Keysight助力提升工程師測試測量知識水平

    Keysight為您解鎖測試測量領域的最新知識,助力工程師在快速變化的科技環(huán)境中保持競爭力。
    的頭像 發(fā)表于 10-16 09:28 ?332次閱讀

    正是拼的年紀|65歲電子工程師上班VLOG #65歲退休 #電子工程師 #搞笑 #上班vlog

    電子工程師
    安泰小課堂
    發(fā)布于 :2024年07月25日 11:31:02

    嵌入式軟件工程師如何提升自己?

    的基礎 嵌入式軟件工程師需要具備扎實的計算機科學和工程知識。因此,在職業(yè)生涯的起步階段,建議將重點放在學習基礎知識上,包括數(shù)據(jù)結(jié)構(gòu)、算法、操作系統(tǒng)、編程語言等。通過深入學習這些基礎知識,打下堅實的理論基礎,為將來
    發(fā)表于 06-12 11:20

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    。他們之間的緊密合作對于成功開發(fā)出高效的嵌入式系統(tǒng)至關重要。 嵌入式軟件工程師和嵌入式硬件工程師在工作中有著不同的技能要求和專業(yè)知識。嵌入式軟件工程師需要
    發(fā)表于 05-16 11:00

    大廠電子工程師常見面試題#電子工程師 #硬件工程師 #電路知識 #面試題

    電子工程師電路
    安泰小課堂
    發(fā)布于 :2024年04月30日 17:33:15

    一款適合嵌入式工程師使用的在線工具

    一款適合嵌入式工程師使用的在線工具,工具有如下功能,如下圖所示: 1. 報文校驗功能,如下圖所示 2. UDP服務端測試工具:該UDP服務端工具可以理解為 “UDP服務端” 或者 “服務器
    發(fā)表于 04-09 22:20

    優(yōu)秀電源工程師需要哪些必備技能?

    就帶大家細數(shù)一下優(yōu)秀電源工程師具備的那些技能。一、新手必備課程成為一名電源高手需要扎實的理論基礎,涉及電路原理、語言編程和控制理論等多個學科領域。為了幫助大家更好地掌握電源開發(fā)相關的關鍵知識點,我們整理
    發(fā)表于 01-29 11:29

    為什么要做自動化測試?測試工程師存在的必然性

    軟件測試這個過程的實施主體就是測試工程師。那么多少個測試工程師比較合適呢,或者換句話說如上的事情必須要測試工程師完成嗎?
    的頭像 發(fā)表于 01-16 11:32 ?867次閱讀

    優(yōu)秀電源工程師的必備技能大揭秘!

    就帶大家細數(shù)一下優(yōu)秀電源工程師具備的那些技能。新手必備課程成為一名電源高手需要扎實的理論基礎,涉及電路原理、語言編程和控制理論等多個學科領域。為了幫助大家更好地掌握
    的頭像 發(fā)表于 12-19 08:23 ?1664次閱讀
    優(yōu)秀電源<b class='flag-5'>工程師</b>的必備<b class='flag-5'>技能</b>大揭秘!