? ? ? ? 大多數(shù)中小公司(甚至我之前呆過的一家上市公司的分公司)的軟件測試,都是那種剛畢業(yè)的專業(yè)和計算機毫不相關(guān)的年輕妹子(招妹子可能也有程序員鼓勵師的意思)。她們的工作就是拿著各種型號的手機對app點點點~~~找找你的app有沒有閃退,UI有沒有按照要求,或者適配做的怎么樣,稍厲害一點的也就是造各種假數(shù)據(jù)試試你的app會不會出問題。
為此特地讀了一本軟件開發(fā)的書,減少一下知識盲區(qū)。
? ? ? 1. 軟件產(chǎn)品和質(zhì)量模型
? ? ? 2. 測試類型
? ? ? 3. 測試方法
? ? ? 4. 測試設(shè)計
? ? ? 5. 探索式方法
? ? ? 6. 自動化測試
? ? ?軟能力包括:
? ? ? 1. 溝通和協(xié)商
? ? ? 2. 寫好測試用例的技法
? ? 當(dāng)然你要做軟件測試架構(gòu)師,你還必須有以下的核心技能:
? ? ? 1. 四步測試策略制定法
? ? ? 2. 產(chǎn)品質(zhì)量評估模型
? ? ? 3. 測試覆蓋度評估
? ? ? 4. 測試過程評估
? ? ? 5. 缺陷分析技術(shù)
? ? ? 6. 風(fēng)險分析技術(shù)
? ? ? 7.分層測試技術(shù)
軟件測試的分類
1、從測試設(shè)計方法分類

? ? 實際工作中,對系統(tǒng)的了解越多越好。目前大多數(shù)的測試人員都是做黑盒測試(功能測試),很少有做白盒測試(結(jié)構(gòu)測試)的。 因為白盒測試對軟件測試人員的要求非常高,需要有很多編程經(jīng)驗。做.NET程序的白盒測試你要能看得懂.NET代碼。做JAVA程序的測試,需要你能看懂JAVA的代碼。 如果你都能看懂了,你還會做測試么?
2、從測試是手動還是自動上分類

對于項目來說, 手動測試和自動化測試同等重要,都是保障軟件質(zhì)量的方法。 目前大部分的項目組都是手動測試和自動化測試相結(jié)合。因為很多測試無法做成自動化,很多復(fù)雜的業(yè)務(wù)邏輯也很難自動化, 所以自動化測試無法取代手動測試。
對于軟件測試人員個人發(fā)展來說, 做自動化測試是個挑戰(zhàn),也是測試人員發(fā)展的一個方向,? 需要測試人員學(xué)習(xí)大量的開發(fā)知識(開發(fā)的知識真是學(xué)無止境啊)。 從長遠角度來看,自動化測試肯定是越來越吃香的。
而手動測試比較適合剛工作不久的人,手動測試最大的缺點就是技術(shù)含量低,單調(diào)乏味,容易廢人。
總的來說,手工測試勝在測試業(yè)務(wù)邏輯,而自動化測試勝在測試底層架構(gòu)。
3、按測試策略分類

4、從測試的目的分類
測試的范圍從小到大,從內(nèi)到外, 從程序開發(fā)人員(單元測試)到測試人員,到一般用戶Alpha/Beta測試。

一個軟件除了基本功能之外,還有很多功能之外的特性,這些叫“Quality of Service requirement”服務(wù)質(zhì)量需求。沒有軟件的功能,這些特性都無從表現(xiàn)出來,因此,我們要在軟件開發(fā)的適當(dāng)階段-基本功能完成后做這些測試。

當(dāng)然跟高級的測試就是跟黑客一樣,去攻擊后臺的數(shù)據(jù)庫或服務(wù)器。這個比高級軟件開發(fā)要難好幾倍。