一、開發自測理想要做到的程度
在入測試之前先要做一輪冒煙測試,冒煙測試需要檢查的點:
1. 主幹流程能不能跑通,這直接影響後續的測試能否進行下去;
2. 要求自測的結果要給後續的測試做參考,例如,自測的時候做了效能測試,那麼,對應的測試資料以及測試環境應記錄下來,給測試人員進行後續效能測試做乙個基準;
3. 測試,不僅是把程式**跑通,也更應該從業務和產品的角度考慮哪個模組會出現什麼樣的問題,從使用者的角度考慮各種場景;
4. 要明白產品發布出去後(不管是新產品發布還是已有產品的公升級發布),產品是幹嘛的,以及產品可能會遇到的挑戰,由此想到自己開發的某模組會不會因此受到威脅,例如擴容、使用者量上公升等。
二、理解除錯和測試的區別
1. 目標:測試是為了發現錯誤,而除錯是為了定位錯誤,修改錯誤
2. 過程:測試是有序的,可重複的,而除錯是不可重複的
4. 人員:測試是由測試人員進行的,而除錯是由開發人員進行的
5. 測試為除錯提供了必要的診斷資訊
三、測試人員聽取了開發自測結果後,應多問確認幾點:
1. 模組的主幹流程沒有問題
2. 模組和整個產品其他模組整合在一起的時候也沒有問題
3. 模組根據產品特徵和業務挑戰的前提下,會面臨什麼樣的風險,這點有沒有考慮到(涉及多種作業系統、瀏覽器、使用者量),若考慮到了,那麼有沒有提前的準備工作
四、測試思路的重要性
測試方法、測試工具不重要,重要的是測試思路,一定要培養自己從產品和業務角度考慮產品可能會出現的問題。清楚測試思路後,方法和工具是很自然的事情。
五、和開發溝通的時候,要善於利用一些方法、說話的技巧,使得開發願意跟你溝通
六、測試乙個產品的基本產出物
1. 測試需求:在充分了解了prd和開發設計文件的前提下,知道了我需要測什麼,哪些地方需要作為重點進行測試,這個產品的「坑」最有可能出現在**,然後,寫出乙個問題列表,拿著問題列表去和產品和開發核對需求,之後,就會清楚我得測試什麼東西,我的測試範圍是什麼,先測哪塊,再測哪塊,這就形成了測試需求。
2. 測試策略:應該怎麼幹哪些事(根據產品的特徵、現有資源、以及技術來決定)。
測試計畫:應該怎麼去幹這些事(根據測試策略、人力資源和機器資源、時間進度來決定)。
3. 測試用例:按測試方向和手段來設計,按場景,先把產品分成幾大模組,確保這幾大模組完全覆蓋了產品的測試點,例如,對於bugzilla系統,可以分為許可權管理、bug管理等幾個比較大的模組,然後再對大的模組進行細化。不要只從頁面上歸納模組,有很多大模組是隱藏的。另外,要注意產品的可配置性,產品配置不同,測試方法也會不盡相同。若產品有多端,同步也是乙個測試重點,測試同步,不僅需要測試資料的準確性,也要從業務角度測試同步對產品的影響,包括外在的和內在的。按場景把模組分好後,接下來要細化模組,例如對「bug管理」模組進行細化,可以分為增刪改查以及其他模組。當把模組細化後,就要考慮每個最小模組的測試點,例如「新建bug「模組,要考慮很多種情況,而且還要考慮與其他模組的互動,例如許可權管理。很多產品的測試用例都有很多相似的地方,我們可以建立公共測試用例,減少不必要的工作。對於寫測試用例,建議先用思維導圖把產品邏輯畫出來,根據思維導圖寫測試用例會是乙個很好的方法,能盡可能把測試點覆蓋全面。另外,開發自測時,可以測試到思維導圖的第二層到第三層就可以了。
4. 測試資料:在軟體測試過程中,測試資料的準備是乙個工作量很大而且也是乙個技術活。因此如何準備大量的測試資料,而且如何準備高質量的測試資料,滿足測試的需求,就是乙個重要的話題。首先看資料的**,資料的**一般來講有三個,乙個是根據被測系統需求的分析,針對正常業務,異常情況,邊界情況等來構建完整的資料,又稱為「造」資料。這不僅僅包括最基本的基礎資料,比如:使用者、許可權、配置、基礎編碼、原資料等,還包括上面提到的業務資料。這對於比較小型的系統來說還是可行的,對於大型的系統來說可能就是乙個巨大的工程了。第二種方式就是利用現有系統,這適合已有類似系統,測試是針對公升級或者增加功能的產品化的系統。這種情況把已經在生產環境中執行的資料匯出。在此基礎上再進行資料的整理、加工為測試資料。第三種方式就是將現有非電子化的業務資料錄入到系統中,在驗證業務的同時也完成了測試資料的積累。即邊測試邊積累資料。但是這種情況積累的資料往往有一定侷限性,因為已經發生的業務資料基本是正確的、一致的,而且可能缺少某些特定業務的資料(不常發生的業務)。這樣就需要根據對測試需求的分析,追加新的測試資料,以便能完整覆蓋業務型別。確定好資料**後,還需要對已有資料進行分析、驗證、檢查,保證資料的質量,資料的質量一般要滿足測試需求、覆蓋被測業務、覆蓋測試邊界,以及要滿足完整性、一致性等要求。檢查完後要整理和完善資料,清除無用和冗餘的資料、補錄不完整的資料,修改一些錯誤的資料。經過整理好的資料要納入配置管理,以後根據需求和變更要進行資料的維護和更新,以保證滿足系統測試的要求。
5. 測試指令碼:一般指的是乙個特定測試的一系列指令,用於自動化測試。
6. 缺陷報告:
7. 結果報告與產品質量評估:要明確、具體、量化,並告知風險。
七、測試流程
1. 需求分析,理解需求
2. 制定出需求中的優先順序作為測試的重點和順序的參考
3. 定義測試策略,即指定做什麼型別和環節的測試
4. 制定測試計畫(schedule,職責,工具,開始和結束的標準,bug的追蹤和報告的機制)
5. 設計測試用例(重點,顆粒度,時限)
6. 測試執行(認真,責任心,經驗,用例維護)
7. 持續性測試結果反饋
8. 交叉測試(解決人力不夠,速度很快),回歸測試(少遺漏,改動無其他影響,在準上線測試中要進行全亮的回歸測試,即覆蓋面要足夠廣,而在一般的測試環節中,只需要進行部件級的回歸測試即可)
9. 分析測試結果,缺陷狀態,缺陷分布
10. 報告產品質量結果
11. 線上監控,線下使用者反饋,利用監控和使用者反饋的結果去指導下一階段的需求,形成閉環
八、
軟體測試學習筆記(一)軟體測試基礎
課程鏈結 軟體測試 中國大學mooc 慕課 1.什麼是bug,談談你對它的理解 bug在英文上是小蟲子 的意思,第一次bug的出現,正是乙個小蟲子落在巨型計算機的導致電晶體短路,從而使得計算機出現問題。我理解的bug是在編譯程式時以及後續執行時出現的錯誤,有很大的不可 性,進行改錯時還可能出現,改掉...
軟體測試學習筆記(一) 軟體測試基礎
什麼是軟體測試?為了發現軟體的問題而操作軟體的過程叫做軟體測試 一 問題的定義及規劃 主要確定軟體的開發目的及可行性,制定專案總體開發計畫。即要做好市場調研。二 需求分析 在確定軟體開發可行的情況下,對軟體需要實現的各個功能進行詳細分析,明確客戶的要求,輸出需求規格說明書初版,提交評審。三 軟體設計...
測試基礎 一
經典定義 軟體質量的定義 軟體測試和軟體質量的區別 軟體測試的內容 軟體測試的分類 單元原則 單元測試的益處 限制整合測試 系統測試 驗收測試 按測試的實施單位來分 按測試技術來分 測試手段 優點缺點 測試方法 黑盒測試 優點缺點 關注點灰盒測試 功能測試 回歸測試 alpha測試 beta測試 冒...