03.07 有關於軟件測試,需要學習什麼內容,學到什麼程度可以找到工作?

耿彥佳


需要學習各種測試手法呀,主要有功能測試、自動化測試、接口測試、性能測試等內容,選取行業內主流崗位中應用最廣泛的語言和工具深入學習,可以做到舉一反三就差不多了。


今天天氣晴


第一步,測試基礎:

測試基礎是軟件測試最最最重要的部分,只要你是做測試,不管是什麼測試,測試的基礎、理論知識都是必須學會的。大概就包括:測試計劃編寫、設計測試用例、編寫測試報告、編寫BUG報告單、跟蹤BUG修復情況、還需要良好的溝通能力、以及各種測試階段所使用的測試方法、單元測試、功能測試、集成測試、系統測試等。

第二步:學習腳本語言

如:python語言,當然python 是一門相對簡單的計算機語言,考慮長遠發展,需要了解C語言或者java。都說C語言最難,但是用得確實也多。

第三步:學習軟件測試工具

學習軟件測試工具並不難,只是需要我們去系統的學習。比如性能測試工具loadrunner,自動化測試工具selenium、Appium,接口測試Jmeter、Postman等。雖然說工具不是萬能的但是工具能為我們提高工作效率,所以必須得會熟練的使用。最關鍵的一點,是要結合項目具體去操作,實踐出真知,理論知識在實際項目中才能得到鞏固。

第四步:計算機硬件知識

做過性能測試的都知道在性能測試過程中硬件性能也是一個非常重要的指標、CPU、內存、IO、帶寬等等、如果你是做硬件測試的。那麼就更不用說了。交換機、路由器、防火牆這些設備都需要有所瞭解。

第五步:數據庫測試

MySQL數據庫

MySQL簡介、命令行工具以及數據管理、MySQL數據查詢(條件、分組、聚合函數、排序、分頁、連接查詢、自關聯、子查詢)、內置函數、項目練習、數據分表、Python操作MySQL。

Redis數據庫

Redis簡介、客戶端和服務器、數據類型(string、hash、list、set、zset)、各種數據類型操作、Python操作Redis、主從、集群。 1.一般來說,測試新人的話首先需要把基礎打好,測試理論基礎可以通過看一些經典書籍或網上也有很多免費的資源。

剛開始不太建議加入過多技術群或其他論壇提問,初期遇到問題可以自己搜索自己嘗試解決,當然需要控制一個止損點,不要為一個問題耗費太長時間。

自學基礎的同時一定要做好筆記,且一定是通過自己的理解後做的。可以使用思維導圖把前後學到的東西給關聯起來。之後學習到的新東西也是。

讀完一本書或一個階段結束後,可以自測一下,通過找一些經典的筆試題或一些istqb中的題目,來鞏固或查漏補缺,有針對性的再次鞏固學過的東西

接下來可以找一些項目來做或去眾測平臺看一些基本的項目測試流程,包括基本測試文檔的書寫規範等等

目前有好多平臺會開設一些免費的公開課,通過技術討論組可以接收消息推送,設定好時間聽一些專業領域的測試方法,可以快速瞭解到大體的流程。(一定要經過嚴格篩選,選擇質量高的,否則會浪費一大部分時間)

以上都是基於從整體的方向來考慮,當然很多細節問題都需要在學習過程中記錄下來

給自己的學習過程制訂一個詳細的計劃,量化到天,排好每天要學習的東西。同時最重要的是,一定要養成總結的習慣 ,每天總結 ,每個項目總結 ,總結測試方法,總結Bug原因,奇葩Bug等等,這些將會成為你日後工作的寶貴財富。


玩機教程


軟件測試要學很多東西,需要學:測試理論,myaql數據庫(或其他的數據庫),linux操作系統,接口測試,移動端測試,性能測試,python編程。

最起碼測試理論要熟悉,測試流程(需求分析,測試計劃,測試方案,測試用例,等),測試方法(白盒測試,灰盒測試,黑盒測試),用例設計方法(邊界值,等價類,場景法,錯誤推測,因果圖,判定表)

mysql至少也要會基本操作語句,增(insert into),刪(delete),改(update),查(select)。

linux系統至少需要會基本命令(vi編輯器,文件權限修改,環境搭建等……),接口測試需要了解http/https,tcp/ip等知識,get/post請求知識,還要學jmeter工具使用,

性能測試需要學會loadrunner工具

移動端需要學會adb命令,

最後,自動化需要python編程(不需要完全掌握,只要會一些基本語法,如:if,else,for,while…),然後就是selenium工具,unittest框架,元素定位,

以上這些東西掌握了就可以啦!


小嘟嘟熊


上面一樓說的太專業了吧,不過值得點贊!

本人是一名Java開發,對於測試還是比較瞭解的,自己也有朋友在學測試。對於測試來說,還是比較簡單的,測試不屬於開發不是程序員,可以歸類於工程師,通俗的說是質檢員一樣。學測試的話,我朋友是網上看的視頻,你可以去網上搜搜,測試門檻較低,還是合適小白的,另外測試分為很多種,什麼功能測試,自動化測試,然後一樓說的MySQL和Redis什麼的其實測試根本用不到(但是面試肯定會問的,面試造火箭而已),進入公司了基本都是點點點(也就是功能測試),然後其實你還是要會一點編程語言的,比如Java或者Python。


三柳的蝸牛


如果是自學軟件測試的話,可以參考以下介紹中關於軟件測試需要學習哪些技能,學習完成相關的知識與技能後再加上適當的項目練習,就可以試著投簡歷面試。掌握以下基本技能即:

首先,瞭解軟件測試的本質。這是最基礎的理論知識,但鮮有人能真正地關注,檢驗自己是否能完全站在用戶的角度,思考問題是否能嚴謹、全面、有條理、邏輯性強。其一,參加面試時一些面試官會由此回答來推斷應聘者對軟件測試的理解程度和經驗指數。

熟悉常見的測試方法和種類,對於常見的測試類型如白盒測試、黑盒測試要清楚其定義與測試原理,白盒測試不需要一定自己接觸過,但相關的基礎概念要有所瞭解,以及其他測試種類在不同項目環境下的應用場景,如可接受性測試、α測試、β測試、接口測試、文檔測試、安裝測試、本地化、國際化測試等等,有些不常用的清楚其原理就好,但不免有些公司的筆試題中會出現。

理解軟件生命週期與軟件測試流程等概念,比如面試中最常問的一個問題是:說說你經歷的測試流程是怎樣的?或者你們處理Bug的流程是怎樣的,從需求到交付用戶測試人員在不同階段都扮演了哪些角色?具體的流程可以參考一些基礎的專業書籍中介紹,但不要被觀念固化,要多接觸不同類型的項目,以瞭解測試流程的靈活應用。

熟悉操作系統的原理,對於計算機專業畢業的同學,應該對操作系統原理印象比較深,但轉行或其他跨專業的測試人員,需要在業餘時間將操作系統原理的書籍翻看下,因為操作系統是平臺的基礎,很多公司的產品都支持一些主流的平臺,如UNIX、MAC、Windows等,學習操作系統知識如果純看書的話容易枯燥,且與實際應用結合的效果也不明顯。可以在一些網絡平臺上查找相關的視頻學習。

測試環境搭建

這是自學測試人員最容易忽略的一點,但如果是作為實習測試前期也不會要求必須能搭建環境,但在自學的過程中可以掌握一些常見的技術,一方面面試時可以加分,其次,當真的需要學習去搭建環境時,自己儲備的理論知識也可以及時起到作用。

關於測試環境搭建需要掌握如下技術,這裡只列出部分。

理解專業術語,構建測試,跨平臺,測試環境鏡像、虛擬技術、Linux基礎操作、中間件等,以上術語不一一解釋,但每一項都對自身測試技能的提升有著關鍵作用,比如,學習中間件可以通過應用Server管理和監控目標應用程序, 對於發現問題、分析問題都有著緊密的關係。

掌握1-2種常見的開發模式,開發模式可以參考之前推文中的瀑布模式與敏捷模式。重要的瞭解對應的測試模式,如敏捷測試模式就是相對於敏捷開發而言的。一般情況下游戲公司更多采用敏捷開發模式,瞭解其迭代開發與增量開發。

瞭解適當的開發技術,與測試環境搭建類似,前期瞭解即可,後期在提升自己的職業技能時,開發技術也是必備的,測試人員檢查開發"生產"出的產品,如果完全不瞭解該產品是如何做出來的,則一定不能做到全面的質量管理,也即測試覆蓋率與測試深度的問題。

最後,就是測試人員的基本功了,如何設計測試用例與提交缺陷報告 。

掌握設計測試用例的基本方法,如等價類、邊界值、判定表、因果圖、錯誤推測法、場景法、流程分析法等等。安裝並試用1-2種缺陷管理工具,熟悉基本的操作。一般面試時會問到:以前使用過哪些項目管理工具,缺陷管理工具等。

最後,就是用例書寫與缺陷報告的書寫格式了,一開始就要給自己形成一個好的習慣。遵照公司內部的書寫格式規範,不要允許一絲懶惰,自身就是從事測試的,更要注意一些細節,養成良好的習慣會終生受益。

#軟件測試#


分享到:


相關文章: