標籤:

如何寫出高效的軟體測試用例?

從事軟體測試大半年,基本上都是靠著對軟體產品的大致了解來進行測試工作,很難對產品進行一個全面細緻的測試。現在想學習一下怎麼寫測試方案和測試用例,有哪些相關書籍可以參考?


謝邀

------

寫幾百篇之後再來談高效


  • 深入了解你的測試對象
  • 重視分析,而不是設計,更不是實現
  • 確保系統該做的事情,該達到的指標都實現了-基礎覆蓋(等價類劃分,邊界值,決策表、狀態機,正交數組)
  • 進行風險分析! 進行風險分析! 進行風險分析! 優先解決和降低風險。
  • 以破壞性思維提出系統難以回答的問題,嘗試找出系統的破綻, 不斷持續這一過程。

介面測試?

如何保證介面測試的覆蓋率?

做介面測試的流程一般是怎麼樣的?

介面測試的數據如何回歸?

如何寫出高效的軟體測試用例?

軟體測試工程師,2年半工作經驗,第一次跳槽,如何快速融入團隊?

做測試,寫了一周的測試 用例,感覺自己已經是個文員了,怎麼辦?

該怎麼樣才能讓所有測試人員迅速學會自動化測試呢?

測試人力不足時,測試技術層面有什麼方法可以提高測試效率?

怎麼判斷哪些功能能實現自動化?

做了一年的軟體功能測試,想轉自動化測試。目前在看了一些Python資料,感覺無從下手,求指導?


測試的問題在哪裡都很少人關注啊。趁著年末有空刷知乎,多來答一下。增加人氣。

高考的時候,語文老師教寫作文,說了3個字『信』 『達』 『雅』

同樣的設計測試用例也可以按照整個標準。

的意思就是,用例要忠實的反應產品的功能,包括產品說明書、包括常識、包括你的發散性思維探索性的可能、系統性的思考。

要做到這個可不簡單。

1、首先必須了解需求,吃透產品/需求說明書

2、你得有常識。什麼叫有常識,舉個例子:百度輸入框,輸入之後,可以滑鼠點搜索,也可以直接按enter鍵搜索。這就是常識,通常產品說明書可不會告訴你,這個按鈕要對enter做響應

3、發散性是什麼呢?就是你能從產品說明中挖掘隱性的需求。比如說上面的這個框。產品可能只是說,輸入什麼,就在引擎查找並返回什麼。發散一下就是,我輸入特殊符號呢?中文呢?英文呢?西藏文?還能不能正常工作?

4、系統性的思考。何為系統性的思考,通常不會都測試都是新的東西,有可能是運營的小需求。流程加了狀態,加了按鈕,要從整個系統層面考慮這樣的改變,會帶來什麼影響,從而得到新的測試用例。這個思考的方式在另外的領域叫沙盤推演

這個的意思就是你用例的粒度,不能太粗也不能太細。要自然。就是同級別或者低一級別的QA看你的用例,也知道這個用例要做什麼,達到什麼效果,寫的讓別人還要再挖掘一輪的,都不是好用例

這個就是純粹的用例排版或者一些基本套路的表達。包括用例集的管理,比如按照功能劃分用例集、按照測試類型劃分用例集等等

個人認為,只要做到了上邊說的,出來的用例必然高效~


編寫測試用例的兩個途徑

1、先有用例設計,從整個產品/項目出發,先確定測試範圍、測試目標,再細化範圍到具體對象-&>具體功能,確定設計用例技術和測試方法,再來編寫用例。

2、 測試執行後-通過Bug反推 修改補充用例。


這題目真大,如果你對被測試系統不熟悉,用什麼方法都是白搭。所謂的熟悉不是我會用,我知道這個被測試系統有哪些功能,這個熟悉是對客戶或者驗收人員的。而測試人員的熟悉是在前面所說的熟悉的基礎上,對於被測試系統的架構,代碼結構,數據存儲結構,甚至說使用的編碼語言的熟悉。如果做不到熟悉,那麼談什麼高效的測試用例呢?


高效的測試用例,需要你的思考方面更為全面,思考全面的前提,你需要對測試的對象【文檔】足夠的清晰,再從不同的角度去考慮問題,這樣會讓你寫的測試用例覆蓋面更為全面。


推薦閱讀:

做測試,寫了一周的測試 用例,感覺自己已經是個文員了,怎麼辦?
如何用一個例子徹底解釋白盒測試中語句覆蓋、判定覆蓋、條件覆蓋、條件判定覆蓋、條件組合覆蓋?
沒有基礎的中專生學習軟體測試自學還是報培訓班好?
軟體評測師證書有什麼用,前景怎樣啊?
達內公司軟體測試工程師培訓四個月,先就業後付款,找到工作再付款,這事靠譜嗎?

TAG:軟體測試 |