【親測有效】30 歲測試工程師的 12 個破除內(nèi)卷技能!
?



當技術、敏捷和 DevOps 方法快速發(fā)展,而加速開發(fā)和持續(xù)部署變得更加復雜時,測試就成了非常關鍵的階段。
1. 敏捷測試
軟件測試過程 —— 敏捷測試遵循敏捷軟件開發(fā)的原則。敏捷測試與迭代開發(fā)方法相一致,需求從客戶和測試團隊中逐漸開發(fā)出來。開發(fā)的產(chǎn)出物是符合客戶要求的。
敏捷測試是一個連續(xù)的過程,但并非按順序進行。測試從項目的最初就開始進行,測試和開發(fā)之間持續(xù)地進行集成。敏捷開發(fā)和測試的共同目標都是實現(xiàn)高產(chǎn)品質(zhì)量。
2. 自動化測試
通過利用最新技術、軟件復雜性的增加以及應用程序中的集成,僅使用手動測試已經(jīng)沒有辦法滿足現(xiàn)實工作需求。為了測試瀏覽器兼容性、性能、無界、數(shù)據(jù)庫以及集成層等,軟件測試人員或 QA 工程師有必要學自動化技能,因為它的邏輯和技術能夠為之提供更高的準確性。此外,一些測試自動化工具完全支持測試類型,并可以快速、高效地完成任務。
3. 軟件開發(fā)生命周期(SDLC)
測試人員有必要掌握軟件開發(fā)生命周期管理,而不是只局限于測試這一個環(huán)節(jié)。SDLC 的整個結(jié)構(gòu)將有助于理解應用程序開發(fā)任務,并相應地規(guī)劃測試周期。對 SDLC 有深入的了解也有助于測試人員預測應用程序中的復雜性,這可以指導我們事先采取正確的措施。除此之外,測試人員還可以掌握其他的開發(fā)相關知識,如看板、瀑布、Scrum、精益等。
4. 網(wǎng)頁端和移動端技術
測試人員需要了解網(wǎng)絡和移動領域的最新技術。比如應用程序的類型、構(gòu)建和可伸縮性,并為其測試應用適當?shù)牟僮鬟^程。所有 IT 從業(yè)者包括測試,都需要盡可能地關注網(wǎng)絡和移動的最新技術以及趨勢,因為這些技術指導我們不斷理解編碼架構(gòu)和技術挑戰(zhàn),以提供有效的 QA 解決方案。

5. 測試工具和技術
每個測試人員都需要配備最新的不同測試技術和工具的使用技能。了解各種測試類型,如黑盒測試、滲透測試、安全測試、系統(tǒng)測試、單元測試等,幫助測試人員在任何領域、任何應用類型去處理項目。除此之外,市場上可用的其他測試工具 —— 如 Bug 跟蹤工具、項目管理工具、GUI 測試工具、自動化工具等,可以幫助測試人員滿足項目的不同需求和復雜性。
6. 測試管理工具
缺陷跟蹤和測試用例管理工具、缺陷跟蹤和缺陷生命周期是任何軟件測試階段的關鍵角色。正確管理缺陷并系統(tǒng)地跟蹤它們是非常困難的。擁有缺陷跟蹤和測試用例管理工具(Bugzilla、zentao 等)知識的測試人員,可以幫助管理、開發(fā)、測試等任何團隊成員來鎖定、追蹤缺陷,提高項目質(zhì)量。

7. 數(shù)據(jù)庫或 SQL
SQL 一直是主流的數(shù)據(jù)庫管理的標準編程語言。加之數(shù)據(jù)被存儲在如 Oracle、MySQL 等不同類型的數(shù)據(jù)庫中,所以在后端,測試人員就必須要了解查詢和操作數(shù)據(jù)的方法。如果測試人員精通數(shù)據(jù)庫或 SQL,那當這些數(shù)據(jù)需要驗證時,就會更容易給出適當?shù)慕鉀Q方案??梢杂龅絾蝹€數(shù)據(jù)庫或 SQL 查詢,來檢查在后端數(shù)據(jù)庫中是否存儲了正確的數(shù)據(jù)。
8. 跨瀏覽器測試技能
由于對各種瀏覽器的需求、多種設備和智能手機不同屏幕尺寸的變化,導致對瀏覽器兼容性測試的需求會比以往任何時候都要大。
跨瀏覽器測試技能可以讓測試人員在不同瀏覽器中測試開發(fā)出來的程序,最大可能地保證交付的產(chǎn)品沒有缺陷和錯誤,能在各個平臺上順利運行。
9. 項目管理
軟件測試技能是技術和專業(yè)這兩個方面的結(jié)合。為了管理這兩方面,測試人員對項目擁有主人翁意識,承擔起相應的責任。掌握項目管理技能可以培養(yǎng)測試人員解決問題的能力。通過這種方式,測試人員也會對自己的工作負責,并向相關方交代,并承擔起端到端測試項目的責任和管理。項目管理技能在促進責任感方面也發(fā)揮著重要作用。如此一來,測試人員就可以改進整個測試過程并向客戶提供高質(zhì)量的結(jié)果。
10. 基本的編程知識
這并不意味著要每個測試員都應該作為開發(fā)人員工作。不過,了解應用程序的洞察力在測試工作中是非常重要的,因為有了一定的編程知識,測試人員能很容易了解產(chǎn)品功能并創(chuàng)建相應的測試。編程的基本知識也可以幫助測試人員識別應用程序代碼中可能存在的錯誤,從而進一步減少錯誤和應用效率低下的可能。所以每個測試人員都可以嘗試至少學會幾種編程語言,增加工作的靈活性。

11. 操作系統(tǒng)知識
這也包括核心 IT 技能。如果我們熱衷于在自己的領域中領悟和探索更多內(nèi)容,那么會發(fā)現(xiàn)學會使用新的操作系統(tǒng)很容易。當然,學 Windows、Linux 和 Mac 這幾個操作系統(tǒng) 是必須的,因為這會幫助我們了解桌面操作系統(tǒng)之間的基本差異,并以此做相應的處理。
此外,在移動平臺上熟悉 iOS 和 Android 也是個不錯的選擇。現(xiàn)在可穿戴設備正在蓬勃發(fā)展,也可以嘗試了解相應的系統(tǒng),比如 Tizen 和 Android Wear 等。
12. 特定領域知識
了解不同的領域,對每個 QA 或測試工程師來說是必不可少的。測試人員可以利用軟件測試領域的知識變得更有創(chuàng)造力。因此,它有助于提高軟件產(chǎn)品的價值。擁有良好的領域知識會幫助每個測試人員以更好的方式清楚了解客戶所需的測試技術,或滿足客戶的要求。每個 QA 的多個領域的知識會為其打開多份工作的大門,因為有時候一些客戶會需要在諸如法律、衛(wèi)生、金融、銀行等特定領域有專業(yè)技能的人。

不知道從何時起,社會上開始流行起這樣一種輿論風向:一個互聯(lián)網(wǎng)人必須在 35 歲之前,完成身份的躍遷,躋身管理層,否則將很難以技術為資本立足,35 歲似乎成為了每個互聯(lián)網(wǎng)人的達摩克利斯之劍,它意味著貶值、淘汰、失去意義。
為了解決懸在每個互聯(lián)網(wǎng)人頭上那把達摩克利斯劍,不僅僅是測試人員應該努力提高技術軟件測試技能和知識,所有互聯(lián)網(wǎng)人都要加強自身能力。 無論是自學還是參加培訓,我們要始終渴望學到更多的方法和流程,并不斷實施新的技能和知識。