如何從零開始學習軟體測試
很多朋友想要入行軟體測試,但是都不知道該怎麼學。
抽個時間簡單的給大家說下,對於0基礎的朋友,應該怎麼去學習軟體測試。學習軟體測試有2條路可以選。最省事的當然是找個靠譜的培訓機構去培訓啦,你就什麼都不用想了,跟著培訓結構認真的學習就行了。當然,這裡並不會給你推薦培訓機構,所以這裡我們講的是,怎麼去自學軟體測試。畢竟軟體測試的門檻真的挺低的。
好了,正式開始講了。第一階段 測試基礎
測試基礎是軟體測試最最最重要的部分,只要你是做測試,不管是什麼測試,測試的基礎、理論知識都是必須學會的。
最好學到什麼程度呢,最好是能夠理解,並能夠用自己的話給複述出來。畢竟面試初級測試的時候,問的問題都是從基礎理論上進行考核的。那測試基礎有哪些內容呢?測試的定義、測試的分類、測試的方法、測試的生命周期。
測試計劃、測試方案、測試策略、測試用例的編寫。BUG的定義、BUG的分類、BUG的六要素、BUG的生命周期。 測試和開發流程的關係、瀑布流、V字形、W字型(雙V)、螺旋型、敏捷等等。戴明環、5W2H等分析管理的方法質量管理體系CMMI(了解)
嗯,大概就是以上的內容吧,以上全部都是理論和文檔能力、只要你肯背、肯寫,都是能獨立的掌握的。
根據你的學習時長、大概7-15天能夠全部掌握吧。學習測試基礎的資料、我放到網盤裡了。自己下載了花時間去學習就好。 如下:鏈接:https://pan.baidu.com/s/1i5peOHv 密碼:h2bk
還有我之前做的一個關於怎麼寫測試用例的視頻,建議在把書看了後再去看。
如何寫好測試用例
第二階段 工具學習
軟體測試的基礎學完了過後,應該學習工具了。
其實學工具真的很容易,所以大家不用去糾結工具的選擇。把最基礎的幾個工具學習了就行了,以後用到什麼工具就去學什麼。下面我會列幾個必學的工具,不用太精通,會用就行了。- 性能測試工具:loadrunner、jmeter。
- 介面測試工具:postman
- 抓包工具:fiddle
- 資料庫管理工具:Navicat
- 項目/BUG管理工具:禪道、QC
- 搜索工具: 百度、谷歌
以上的這些工具都是純圖形化的,很好掌握,估計就性能測試工具稍微會費點時間。
loadrunner11下載地址:鏈接:https://pan.baidu.com/s/1eS2ciFg 密碼:6ahk
jmeter下載地址:鏈接:https://pan.baidu.com/s/1nvzgd0d 密碼:ptza其他的工具你們直接去對應的官網下在就行了。工具的部分教程:loadrunner入門:https://www.imooc.com/learn/714jmeter入門:https://www.imooc.com/learn/735fiddl和postman入門:https://www.imooc.com/learn/738如果你還要問我Navicat怎麼學,我只能問你,你會用excle嗎? 如果你問我禪道怎麼學,我只能問你,你會用QQ空間嗎?
第三階段 代碼學習
好了,學完了以上兩個部分,恭喜你,你已經是一個出色的初級測試工程師了。
接下來,你要考慮你的發展方向了。
是成為一個自動化測試工程師呢?還是性能測試工程師呢?還是安全測試工程師呢?啊!這個問題好難!我也不知道該怎麼選。反正我啥都會一點,哪個崗位都能去面一面。關於方向的選擇,看我的這篇文章。軟體測試該如何提升自己嗯,相信你心中已經有了答案了,那我們繼續往下面說。
這個階段,我們應該學習代碼了,關於編程語言的選擇,我推薦Java或者python。還有資料庫也是必須掌握的!在工具篇的學習里,我認為你已經可以通過navicat學會了基本的增刪查改了。
那你在這個階段就應該學會更複雜的SQL語句的編寫了,也應該會用命令行工具了。嗯,加油,各位先學習mysql就好,這個用的人多。所以現在各位可以去學習編程語言了,不過不用像開發那樣,學的那麼深入。比如Java,只需要學完JavaSE的部分就夠你用了。 python的話也是一樣的,把基礎的部分學完就行了。總之前期你兩者二選一的學習就OK了。啥?你問我學的啥。我當然是兩種都會啊。哈哈哈哈哈哈哈,驚不驚喜!意不意外! 以下是學習教程:mysql:
- mysql基礎教程
Java:
- Java入門第一季
- Java入門第二季
- Java入門第三季
python:
- python入門
- 廖雪峰的官方網站
自動化方向
等你代碼已經基本掌握了,嗯,很好,接下來就要學習各種自動化測試了。
- 各種單端測試框架:unittest(python)、pytest(python)、JUnit(java)
- WEB自動化測試框架:selenium(適用於javapythonjavascript)
- APP自動化測試框架:appium(適用於javapythonjavascript)
以上的內容,根據你學的語言進行選擇。
appiunm和selenium根據你參與的項目進行選擇。不過無所謂了,反正遲早都要學會的。這部分的教程太多了,你學會了編程的基礎後,隨便百度,好多博客論壇都有教程。而且憑你那時候的水平,你都能輕鬆的看懂。性能方向
對loadrunner和jmeter的掌握更加的深入。
可以手寫腳本、脫離錄製。
學會了多線程編程、能夠手寫java或者python、不用工具直接實現壓測。學習linux,畢竟性能總是和伺服器打交道的。學習系統架構的相關知識、方便你更容易的分析系統瓶頸。說實話、性能方向的提示更難、因為需要掌握的東西太多了。性能測試做深入了,基本上就是架構師的水平了。可能你現在看著這個性能方向的學習一臉懵逼。沒關係、等你把上面的編程語言學會了你就不懵逼了。安全方向
- 滲透測試
- SQL注入
- 暴力破解
- 脫庫
- 等等
其實安全測試基本上偏向於網路攻防了,也就是傳說中的黑客了,不過我們都是好人,這個的發展方向就是白帽子。 部分教程如下:
鏈接:https://pan.baidu.com/s/1hs8dG6S 密碼:5dh5推薦知道創宇的學習體系。
我估計你看到這裡就更懵逼了。沒關係、等你把基礎的東西學會就知道我在說啥了。畢竟你現在還是一個小白嘛。不要去糾結這種小事。各位在這個階段,正常情況都應該是中級測試工程師的水平了。
第四階段 架構學習
前三個階段學習完成後,各位就應該考慮怎麼寫代碼更合理了。
怎麼去測試更全面。怎麼才能更好的保障項目的質量。我認為,在這個階段,應該回頭重新學習一遍測試基礎。因為這個階段的提高是思想、方法的提高了。上面講的都是教你應該怎麼做。
在這個階段你要自己去發現、為什麼要那樣做。跨過了這個階段就基本上可以成為專家了。學習都是水到渠成的,在這個時候,你應該已經掌握了不少框架了,甚至自己也能開發合適的框架了。自動化測試框架、性能測試框架等等。已經有了屬於自己的一套東西了。在群里或者論壇上去裝逼、別人都會尊稱你一聲大佬了。可能你也學會了一些其他的技術了,甚至在往全棧等方向跨進了。總之,到了這個階段就沒什麼學習路線了。都是靠自己的悟性了。哎哎哎,不提了,我要去群里裝個逼,滿足下自己的虛榮心。第五階段 XX專家
專家你好。 專家求抱大腿。
到了這個階段的小夥伴請聯繫我。到時候讓我抱個大腿。總結
以上就是從0開始入門的攻略了。
如果你還是有問題的話,可以加我的微信,我們一起討論學習。
微信:LangJinTest
推薦閱讀:
※Selenium Webdriver使用Click失效問題的解決方法
※一個維護了數年的龐大的C++ codebase如何一步一步增加testcase,讓項目工程化,可靠。?
※你如何看待軟體測試思想?
※談談軟體測試人員有哪些前景
TAG:软件测试 |