新年新開始,繼續我的測試生活感悟!按a覆蓋率”是一個有意思的話題,圍繞它的討論有很多;旧,人們都認識到了,代碼覆蓋率并不能說明測試的好壞,它只是一個度量方法,用于度量我們測試的廣度。它只能告訴你,你的測試代碼覆蓋了哪些被測的代碼,并沒有告訴你,覆蓋的被測代碼是否測試好。
代碼覆蓋率有諸多好處:
1. 能一定程度上說明測試覆蓋的廣度。
2. 通過代碼覆蓋率結果,能夠比較直觀的了解到哪些代碼未被測試,哪些分支未被覆蓋,進而補充相應的測試案例。
3. 代碼覆蓋率具有非常好的可操作性,可以在一定程度上衡量測試人員的工作。
4. 代碼覆蓋率給程序員和測試人員以信心。
但是,即使你的代碼覆蓋率達到了80%或者更高,不要被代碼覆蓋率蒙蔽了雙眼!
1. 好好回想一下覆蓋的80%的代碼中,你一共發現了幾個Bug?
2. 剩下的20%代碼,極有可能產生80%的Bug!
3. 覆蓋的80%代碼中,你真正進行驗證的代碼函數有多少?
4. 覆蓋的80%代碼中,你真正了解的代碼有多少?或者說,有多少代碼是無意間被執行的。
5. 你是否保證了不同操作系統下測試案例的執行?
6. 這80%覆蓋的代碼中,你是否偷懶省去了某些復雜的檢查點的檢查?
7. 你是否會因為某個分支只有一行代碼,而省去這個分支的測試案例?
8. 你是否存在一個檢查點也沒有的測試案例?
看了上面的8條,再想想你的80%代碼覆蓋率,還會感覺測試已經完全,無事可做了嗎?
代碼覆蓋率只是一個最基本的前提,一定要保證,但不是意味著達到指標就代表測試的完成。
文章來源于領測軟件測試網 http://www.kjueaiud.com/