為使用Visual Studio開發項目選擇合適軟件測試方法

發表于:2010-11-03來源:作者:點擊數: 標簽:軟件測試開發項目StudioVisual
應用軟件 開發 完畢后,對于軟件的測試非常的關鍵。 軟件測試 人員的身價也一漲再漲,甚至有蓋過程序開發人員的趨勢。從中也可以看出程序 測試人員 的重要性。特別是在團隊開發項目中,選擇什么樣的測試類型、如何相互協調等等,顯得尤其的重要。筆者這里就

  應用軟件開發完畢后,對于軟件的測試非常的關鍵。軟件測試人員的身價也一漲再漲,甚至有蓋過程序開發人員的趨勢。從中也可以看出程序測試人員的重要性。特別是在團隊開發項目中,選擇什么樣的測試類型、如何相互協調等等,顯得尤其的重要。筆者這里就以一個團隊項目為例,談談如何選擇合適的測試類型。

  一、普通測試。

  普通測試是指現有的程序或者來自另一個源的測試。經過一定的包裝之后,在Visual Studio中作為測試運行。通常情況下,如果采用普通測試的話,有一個前提條件,即需要有比較完善的基礎架構。其測試效果的好壞,則主要去取決于在框架外部創建的自動化測試工具。在使用一般測試的時候,可以包裝現有的測試程序或者第三方工具。在進行測試時,可以根據不同的測試需要選擇返回不同的結果。如有些情況下,只需要測試是否通過,那么就可以讓其只返回“通過”或者“失敗”的結果即可,而不需要返回具體的原因。而有時候可能還需要具體的結果。如現在可能需要測試某個功能優化的效果,那么就需要返回內部測試的詳細結果。

  普通測試最常用的一個地方就是通過普通測試來收集代碼覆蓋率數據。如通過如下步驟就可以收集到代碼覆蓋率的相關數據。

  第一步創建或者打開包含普通測試的測試項目。在解決方案資源管理器中,打開“解決方案項”文件夾。然后在這個文件夾中找到一個叫做testrunconfig的文件,并雙擊打開。第二步在打開的對話框中,可以看到“代碼覆蓋率”的按鈕。單擊這個按鈕,在“選擇要檢測的項目”對話框中,選擇要為其手機代碼覆蓋率數據的成品代碼二進制文件。單擊應用進行測試即可。在這個過程中需要注意一個問題。有時候在“選擇要檢測的項目”對話框中可能會找不到需要測試的二進制代碼文件。這主要是需要檢測的二進制文件沒有與添加程序集關聯的原因。此時需要先點擊“添加程序集”,然后再在“選擇需要測試的程序集”對話框中,制定需要測試的二進制文件。通常情況下第一次測試是需要這么操作。第二次測試時可以直接打開。另外如果測試的是成品代碼,那么需要注意包含成品代碼的二進制文件可能不是一般測試中所包含的文件。遇到這種情況的話,測試人員需要指定普通測試將中間應用程序作為測試來包裝。也就是說利用中間應用程序來運行需要測試的成品代碼。這往往能夠取得比較好的測試效果。

  二、單元測試。

  單元測試與普通測試有本主的區別。單元測試是編程測試中的一種重要方法。其主要通過調用帶參數類的方法,來驗證返回值是否是用戶所期望的值。簡單的說,就是測試人員輸入幾個參數,然后看應用程序得到的結果,是否與我們所期望的值類似。顯然,對于單元測試來說,要取得比較好的效果,不在于測試的數量,而在于提供的參數是否包含了實際應用中涵蓋的范圍。簡單的說,如果現在要測試一個單元格金額合計的程序,那么就需要提供金額為零、為負、為空(如果對輸入的金額沒有限制的話)等值,以取得在包含這些數據時會返回什么樣的運算結果。

  在Studio平臺中,程序測試人員可以選擇采用平臺自帶的單元測試模板進行測試,也可以自己手工編寫代碼進行測試。在這個平臺中,提供了兩種專用的單元測試變體,分別為數據驅動型單元測試和ASP.NET單元測試。前者主要是針對數據源的每一行反復調用時采用的。此時單元測試使用每一行的數據作為輸入數據。后者主要用來測試Web應用程序的代碼或者IIS進程中所運行的代碼。

  如果以上這兩個測試模板不能夠滿足要求的話,則就需要手工添加新的單元測試代碼。手工添加測試代碼時,也有兩種方法。一是直接添加,即使用單元測試在測試項目中添加一個源文件,該文件中包含一個有效的空白單元測試方法,然后再手工編寫這個方法的代碼。二是通過向導來完成??梢赃x擇“使用測試向導”顯示創建單元測試對話框。測試人員可以使用這個對話框利用當前項目中的方法來生成單元測試。不過雖然使用向導來創建單元測試,可以節省代碼編寫的時間。但是生成單元測試之后,仍然需要檢查并在必要的時候進行手工的調整。

  三、負載測試。

  顧名思義,負載測試主要就是用來測試用戶并發訪問時應用程序的性能。負載測試的原理比較簡單,就是將單元測試、普通測試等方法進行封裝,然后使用虛擬用戶同時運行應用程序,以判斷在多用戶的環境中應用程序的運行狀態。在負載測試下運行這些測試將生成比較多的測試結果,包括以表格或者圖標形式顯示的性能計數器等相關的計數器?,F在大部分應用程序都是服務器/客戶機模式,用戶數量比較多,負載測試是一種必不可少的測試方法。

  如現在需要使用Studio開發一個Web應用程序。其有可能有成千上萬個用戶。一個用戶使用的時候,性能等方面可能沒有問題。但是如果許多用戶同時訪問這個應用程序,是否會有性能上的障礙呢?在測試的時候,同時叫上千個人對應用程序進行同時訪問,也不怎么現實。在實際工作中,通常是通過負載測試來完成。如可以將Web測試添加到負載測試項目中,然后可以模擬數千個用戶與某個特定的Web應用程序同時進行交互訪問。負載測試可以幫助程序開發人員判斷在應用程序的訪問達到最大量的時候,是否否出現錯誤或者性能上的瓶頸。而不是等到真的出現這種情況時再去彌補。

  用戶選擇負載測試的時候,需要注意如下問題。

  一是要從少到多進行測試。有時候用戶可能需要測試應用軟件的最大訪問量是多少,此時最好從少到多進行測試。這主要是因為如果頁面因數據庫或者CPU瓶頸而導致響應時間比較長的話,則會限制每個虛擬用戶每秒發出的請求數,從而影響到最后測試的結果。比較合理的做法是,先從少量的負載開始,并確保緩慢增加負載時能夠保持合理的響應時間。如可以通過響應時間目標屬性為每個請求設置期望的最長響應時間。工具加上合理的經驗,才能夠得到比較準確的結果。

  二是在負載測試時,最好進行直接測試,而不要在測試端與被測試端之間加入代理服務器。雖然在Studio提供的負載測式方法中,可以啟用自動代理服務器檢測工具。但是,如果啟用這個工具的話,可能會帶來一些誤診。因為代理服務器性能不同,會直接影響到檢測的結果。為了保持客觀公正的效果,最好不要使用代理服務器。畢竟代理服務器會在負載測式中降低性能,較少吞吐量。絕大部分情況下,在使用代理服務器之后,應用程序的性能都會有所下降。

  從以上的分析中可以看出,在Studio平臺中提供了比較豐富的測試方法。但是不同的測試方法其側重點有所不同,都有各自的應用領域。作為程序測試人員,比較重要的一點就是如何根據企業的實際情況,選擇合適的測試方法,并在各個項目成員之間取得一致。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97