新聞中心
在這里我們將討論的是Visual Studio 2010選擇合適的項目測試方法,希望通過這些文章,能幫助大家更好的用好VS 2010的測試功能。

“只有客戶發(fā)展了,才有我們的生存與發(fā)展!”這是創(chuàng)新互聯(lián)的服務宗旨!把網(wǎng)站當作互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品思維更注重全局思維、需求分析和迭代思維,在網(wǎng)站建設中就是為了建設一個不僅審美在線,而且實用性極高的網(wǎng)站。創(chuàng)新互聯(lián)對成都網(wǎng)站建設、成都做網(wǎng)站、網(wǎng)站制作、網(wǎng)站開發(fā)、網(wǎng)頁設計、網(wǎng)站優(yōu)化、網(wǎng)絡推廣、探索永無止境。
應用軟件開發(fā)完畢后,對于軟件的測試非常的關鍵。軟件測試人員的身價也一漲再漲,甚至有蓋過程序開發(fā)人員的趨勢。從中也可以看出程序測試人員的重要性。特別是在團隊開發(fā)項目中,選擇什么樣的測試類型、如何相互協(xié)調(diào)等等,顯得尤其的重要。筆者這里就以一個團隊項目為例,談談如何選擇合適的測試類型。
一、普通測試。
普通測試是指現(xiàn)有的程序或者來自另一個源的測試。經(jīng)過一定的包裝之后,在Visual Studio 2010中作為測試運行。通常情況下,如果采用普通測試的話,有一個前提條件,即需要有比較完善的基礎架構。其測試效果的好壞,則主要去取決于在框架外部創(chuàng)建的自動化測試工具。在使用一般測試的時候,可以包裝現(xiàn)有的測試程序或者第三方工具。在進行測試時,可以根據(jù)不同的測試需要選擇返回不同的結果。如有些情況下,只需要測試是否通過,那么就可以讓其只返回“通過”或者“失敗”的結果即可,而不需要返回具體的原因。而有時候可能還需要具體的結果。如現(xiàn)在可能需要測試某個功能優(yōu)化的效果,那么就需要返回內(nèi)部測試的詳細結果。
普通測試最常用的一個地方就是通過普通測試來收集代碼覆蓋率數(shù)據(jù)。如通過如下步驟就可以收集到代碼覆蓋率的相關數(shù)據(jù)。
第一步創(chuàng)建或者打開包含普通測試的測試項目。在解決方案資源管理器中,打開“解決方案項”文件夾。然后在這個文件夾中找到一個叫做testrunconfig的文件,并雙擊打開。第二步在打開的對話框中,可以看到“代碼覆蓋率”的按鈕。單擊這個按鈕,在“選擇要檢測的項目”對話框中,選擇要為其手機代碼覆蓋率數(shù)據(jù)的成品代碼二進制文件。單擊應用進行測試即可。在這個過程中需要注意一個問題。有時候在“選擇要檢測的項目”對話框中可能會找不到需要測試的二進制代碼文件。這主要是需要檢測的二進制文件沒有與添加程序集關聯(lián)的原因。此時需要先點擊“添加程序集”,然后再在“選擇需要測試的程序集”對話框中,制定需要測試的二進制文件。通常情況下第一次測試是需要這么操作。第二次測試時可以直接打開。另外如果測試的是成品代碼,那么需要注意包含成品代碼的二進制文件可能不是一般測試中所包含的文件。遇到這種情況的話,測試人員需要指定普通測試將中間應用程序作為測試來包裝。也就是說利用中間應用程序來運行需要測試的成品代碼。這往往能夠取得比較好的測試效果。
二、單元測試。
單元測試與普通測試有本主的區(qū)別。單元測試是編程測試中的一種重要方法。其主要通過調(diào)用帶參數(shù)類的方法,來驗證返回值是否是用戶所期望的值。簡單的說,就是測試人員輸入幾個參數(shù),然后看應用程序得到的結果,是否與我們所期望的值類似。顯然,對于單元測試來說,要取得比較好的效果,不在于測試的數(shù)量,而在于提供的參數(shù)是否包含了實際應用中涵蓋的范圍。簡單的說,如果現(xiàn)在要測試一個單元格金額合計的程序,那么就需要提供金額為零、為負、為空(如果對輸入的金額沒有限制的話)等值,以取得在包含這些數(shù)據(jù)時會返回什么樣的運算結果。
在Visual Studio 2010平臺中,程序測試人員可以選擇采用平臺自帶的單元測試模板進行測試,也可以自己手工編寫代碼進行測試。在這個平臺中,提供了兩種專用的單元測試變體,分別為數(shù)據(jù)驅(qū)動型單元測試和ASP.NET單元測試。前者主要是針對數(shù)據(jù)源的每一行反復調(diào)用時采用的。此時單元測試使用每一行的數(shù)據(jù)作為輸入數(shù)據(jù)。后者主要用來測試Web應用程序的代碼或者IIS進程中所運行的代碼。
如果以上這兩個測試模板不能夠滿足要求的話,則就需要手工添加新的單元測試代碼。手工添加測試代碼時,也有兩種方法。一是直接添加,即使用單元測試在測試項目中添加一個源文件,該文件中包含一個有效的空白單元測試方法,然后再手工編寫這個方法的代碼。二是通過向?qū)硗瓿伞?梢赃x擇“使用測試向?qū)А憋@示創(chuàng)建單元測試對話框。測試人員可以使用這個對話框利用當前項目中的方法來生成單元測試。不過雖然使用向?qū)韯?chuàng)建單元測試,可以節(jié)省代碼編寫的時間。但是生成單元測試之后,仍然需要檢查并在必要的時候進行手工的調(diào)整。
三、負載測試。
顧名思義,負載測試主要就是用來測試用戶并發(fā)訪問時應用程序的性能。負載測試的原理比較簡單,就是將單元測試、普通測試等方法進行封裝,然后使用虛擬用戶同時運行應用程序,以判斷在多用戶的環(huán)境中應用程序的運行狀態(tài)。在負載測試下運行這些測試將生成比較多的測試結果,包括以表格或者圖標形式顯示的性能計數(shù)器等相關的計數(shù)器?,F(xiàn)在大部分應用程序都是服務器/客戶機模式,用戶數(shù)量比較多,負載測試是一種必不可少的測試方法。
如現(xiàn)在需要使用Visual Studio 2010開發(fā)一個Web應用程序。其有可能有成千上萬個用戶。一個用戶使用的時候,性能等方面可能沒有問題。但是如果許多用戶同時訪問這個應用程序,是否會有性能上的障礙呢?在測試的時候,同時叫上千個人對應用程序進行同時訪問,也不怎么現(xiàn)實。在實際工作中,通常是通過負載測試來完成。如可以將Web測試添加到負載測試項目中,然后可以模擬數(shù)千個用戶與某個特定的Web應用程序同時進行交互訪問。負載測試可以幫助程序開發(fā)人員判斷在應用程序的訪問達到最大量的時候,是否否出現(xiàn)錯誤或者性能上的瓶頸。而不是等到真的出現(xiàn)這種情況時再去彌補。
用戶選擇負載測試的時候,需要注意如下問題。
一是要從少到多進行測試。有時候用戶可能需要測試應用軟件的最大訪問量是多少,此時最好從少到多進行測試。這主要是因為如果頁面因數(shù)據(jù)庫或者CPU瓶頸而導致響應時間比較長的話,則會限制每個虛擬用戶每秒發(fā)出的請求數(shù),從而影響到最后測試的結果。比較合理的做法是,先從少量的負載開始,并確保緩慢增加負載時能夠保持合理的響應時間。如可以通過響應時間目標屬性為每個請求設置期望的最長響應時間。工具加上合理的經(jīng)驗,才能夠得到比較準確的結果。
二是在負載測試時,最好進行直接測試,而不要在測試端與被測試端之間加入代理服務器。雖然在Visual Studio 2010提供的負載測式方法中,可以啟用自動代理服務器檢測工具。但是,如果啟用這個工具的話,可能會帶來一些誤診。因為代理服務器性能不同,會直接影響到檢測的結果。為了保持客觀公正的效果,最好不要使用代理服務器。畢竟代理服務器會在負載測式中降低性能,較少吞吐量。絕大部分情況下,在使用代理服務器之后,應用程序的性能都會有所下降。
從以上的分析中可以看出,在Visual Studio 2010平臺中提供了比較豐富的測試方法。但是不同的測試方法其側重點有所不同,都有各自的應用領域。作為程序測試人員,比較重要的一點就是如何根據(jù)企業(yè)的實際情況,選擇合適的測試方法,并在各個項目成員之間取得一致。
本文名稱:在VisualStudio2010選擇合適的項目測試方法
當前路徑:http://m.fisionsoft.com.cn/article/cdoecpj.html


咨詢
建站咨詢
