最常用的軟體測試方法

一般我們判定一個軟體質量到底如何,都是從哪些方面來衡量呢?這就是我們所說的測試方法。其實軟體測試的方法種類繁多,現在我們就把常用的軟體測試方法羅列出來,讓大家對軟體測試行業有個總體的看法。

一、功能測試

根據產品特性、操作描述和使用者方案,測試一個產品的特性和可操作行為以確定它們滿足設計需求。有的系統有前後臺,如:淘寶,我們要分別對前後臺測試;有的系統有PC端和APP端,如:QQ,我們要分別對兩端測試。

每個系統的模組中都有一些公用的功能,如:增加、刪除、修改、查詢、匯入、匯出、列印等。因此實際測試中,我們要都把這些功能首先測試一遍。

模組和模組、功能與功能之間不是孤立沒有聯絡的,相反,正是因為他們之間的相互關係才組合成了我們複雜的系統,因此測試時,要把他們之間的關係全部走通。一般業務流程之間的關聯分為:

功能和功能之間

模組和模組之間

系統和系統之間

資料庫和資料庫之間

介面

二、效能測試

效能測試是指透過工具模擬多種正常、峰值以及異常負載條件來對系統的各項效能指標進行測試 。一般在功能測試之後,系統版本穩定之後進行。效能測試主要考慮的問題是:

1。 使用者層面

– 需求規格說明書明確定義了使用者的效能需求

– 使用者最關心響應時間

2。 產品層面

– 系統伺服器能否承受上線後將帶來的使用者訪問量和巨大的併發衝擊還是未知數

– 產品/專案經理最關心資源消耗比

三、安全性測試

應用程式級別的安全性,包括對資料或業務功能的訪問,應用程式級別的安全性可確保:在預期的安全性情況下,主角只能訪問特定的功能或用例,或者只能訪問有限的資料。例如,可能會允許所有人輸入資料,建立新賬戶,但只有管理員才能刪除這些資料或賬戶。如果具有資料級別的安全性,測試就可確保“使用者型別一”能夠看到所有客戶訊息(包括財務資料),而“使用者二”只能看見同一客戶的統計資料。

系統級別的安全性,包括對系統的登入或遠端訪問。系統級別的安全性可確保只有具備系統訪問許可權的使用者才能訪問應用程式,而且只能透過相應的閘道器來訪問。

防SQL漏洞掃描

– Appscan、SQLmap、Burpsuite

防XSS、防釣魚

– RatProxy、Taint、Netsparker

get、post -> 防止關鍵資訊顯式提交

– get:顯式提交

– post:隱式提交

cookie、session

– Cookie欺騙

四、相容性測試

1、瀏覽器

2、解析度

3、資料庫

4、作業系統

5、手機APP主流核心不同瀏覽器:

IE、Firefox、Chrome、Safari 、Opera

6、不同核心瀏覽器在解析css和js上會有明顯區別

Flash渲染、JavaScript、Css

工具:IETester

7、前端革命

bootstrap、ExtJS、EasyUI

8、手機

480×800,480×854,960×540,960×640

9、PC

1024X768,1280×1024,1440×900,1680×1050

10、筆記本

1366×768,1920×1080,1600×900

11、iPad

1024*600,1280*800,2560*1600

12、資料庫

有的公司系統複雜,有很多資料庫版本,因此要針對涉及的資料庫版本進行測試 。如:A公司網管系統客戶不同,提供了oracle、sysbase、mysql等版本,作為測試,我們要把不同資料庫的版本都測一次,因為資料庫之間會存在函式等差異,所以程式碼上會很不一樣。

13、作業系統

如:A公司用php語言開發了一套CRM系統,客戶的伺服器既可能是Windows,也可能是Uinx/Liinux,因此要測試不同作業系統之間相容性。如:$Student =M(‘student’);

Windows上就不會出問題,linux上就出錯,因為linux大小寫敏感。

14、手機APP

如:A公司開發了一款APP,那要在各Android版本上都測試。

五、可靠性測試

1、使用者許可權限制。軟體是否按功能模組劃分使用者許可權,許可權劃分是否合理,考察超級使用者對各個使用者的許可權管理是否合理,包括修改使用者的登入資料等。

2、使用者和密碼封閉性。軟體對使用者名稱和密碼有無校驗,有無保護措施,尤其對密碼有無遮蔽功能。

3、系統對使用者錯誤登入的次數限制。軟體對使用者錯誤登入有無次數限制,一般做法是連續三次登入失敗就退出系統。

4、留痕功能。軟體是否提供操作日誌,比如某使用者登入的時間,查詢、修改或刪除的動作以及離開的時間等。

5、 遮蔽使用者操作錯誤。考察對使用者常見的誤操作的提示和遮蔽情況,例如可否有效避免日期的錄入錯誤或寫入無效的日期。

6、錯誤提示的準確性。當用戶操作錯誤時,能否有準確清晰的提示,使使用者知道造成錯誤的原因。例如當用戶未輸入完有效資訊時存檔,系統應當給出關於未輸入項的提示。

7、錯誤是否導致系統異常退出。考察軟體執行的穩定性,當軟體發生一般錯誤或嚴重錯誤時,軟體是否會自動退出。

8、資料備份與恢復手段。主要針對有資料儲存需要的軟體,有的軟體依靠資料庫作業系統本身的備份與恢復機制,這需要使用者具備一定的操作知識;好的軟體會提供備份與恢復的操作,不需要使用者直接對資料庫系統進行操作。

9、 輸入資料有效性檢查。當用戶輸入的資料有錯時,軟體應能判斷資料的有效性,避免無效資料的生成。

10、異常情況的影響。在程式執行過程中進行掉電等試驗,考查資料和系統的受影響程度;若受損,是否提供補救工具,補救的情況如何。

11、網路故障對系統的影響。當網路中斷連線時,是否會造成資料的丟失。

六、易用性測試

易用性即使用者體驗,指使用者使用軟體時感覺的方便度。不同公司有不同策略:

大公司:提供易用性檢查表,測試工程師根據表進行逐一排查易用性。

小公司:邊測功能邊測易用,測試工程師從客戶角度和根據經驗及行業標準來排查易用性。

七、安裝/解除安裝測試

確保該軟體在正常情況和異常情況的不同條件下安裝/解除安裝。

【例】

1、進行首次安裝、升級、完整的或自定義的安裝都能進行安裝。

2、異常情況包括磁碟空間不足、缺少目錄建立許可權等。

3、核實軟體在安裝後可立即正常執行。

TAG: 使用者測試軟體系統資料庫