日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
WEB性能測試:你應該帶上VisualStudio2010

【獨家特稿】在Web性能測試方面,增加了循環(huán)(Loops)和條件(Conditions),讓開發(fā)人員可以為他們的應用程序?qū)懗龈鼜碗s,更智能的測試;在負載測試方面,增加了64位代理和控制器,讓測試人員可以更高效地利用可用的硬件資源產(chǎn)生負載。此外,改變了負載測試代理和控制器的許可,提供了更多的靈活性,間接地更節(jié)省成本。

Web測試允許你在你的ASP.NET Web應用程序上模擬一個用戶執(zhí)行一組操作 – 通常是一個定義好的用例,然后確認程序的響應結(jié)果是否與預期結(jié)果一致,當你定義好Web測試后,可以將它們組織在一起就構(gòu)成了負載測試,通過負載測試可以查看你的應用程序在壓力下的表現(xiàn)。本文將重點介紹如何使用Visual Studio 2010執(zhí)行Web測試,負載測試將在另外一篇文章中介紹。

創(chuàng)建Web測試

Web測試通常是使用IE Web測試工具條創(chuàng)建的,它從頭到尾詳細記錄了測試人員在Web應用程序上的點擊動作,本文使用的示例代碼中,我們的Visual Studio測試項目叫做Com.Benday.WebTesting.WebTests,當然你可以在這個項目上點擊右鍵,選擇“新建Web測試”創(chuàng)建一個新的Web測試。

在項目上添加好新的Web測試后,Visual Studio將會打開IE瀏覽器,你將會在瀏覽器中看到Web測試記錄器面板,然后你可以轉(zhuǎn)到任意一個網(wǎng)站,就象平常瀏覽一樣進行操作,你的每一個操作都將被Web測試記錄器記錄下來,如圖1所示。

圖 1 Web測試記錄器記錄下的操作

當你想要記錄的操作執(zhí)行完畢后,點擊“停止”按鈕,返回Visual Studio 2010,你將會在一個*.webtest文件中看到你的操作,如圖2所示。

圖 2 在.webtest文件中的操作記錄

#p#

更復雜的Web測試

前面錄制的Web測試并沒有太大的實用價值,它僅僅回放了你的原始操作,并沒有檢查返回的值,也不知道你的應用程序工作得怎樣,但它是創(chuàng)建更復雜,更全面Web測試的基礎。

可以使用校驗規(guī)則,提取規(guī)則和Web測試請求中的測試上下文創(chuàng)建更智能的測試,校驗規(guī)則檢查從服務器返回的HTML,驗證應用程序是否如你預期那樣工作的,提取規(guī)則檢查HTML,提出值,保存在所謂的測試上下文字典結(jié)構(gòu)中,這些值可用于響應后面的測試請求,創(chuàng)建動態(tài)的行為和動態(tài)的驗證。

本文所使用的示例代碼中,我提供了一個管理個人信息的Web應用程序,每個人的記錄都有姓名,電話號碼,Email地址,加上主鍵ID,其類圖如圖3所示,數(shù)據(jù)庫表結(jié)構(gòu)如圖4所示,在我們的Web應用程序中將會使用這個ID值確定顯示和編輯哪個人的記錄。

圖 3 Person類圖

圖 4 Person數(shù)據(jù)庫表結(jié)構(gòu)

假設你想模擬一群人通過你的Web應用程序在數(shù)據(jù)庫中創(chuàng)建個人信息,下面是創(chuàng)建一個新用戶的具體步驟:

1、在瀏覽器中訪問應用程序。

2、點擊“創(chuàng)建一個新用戶”。

2.1驗證是否顯示了“創(chuàng)建新用戶”界面。

2.2驗證所有文本輸入框是否都是空白的,以及ID值是否等于-1,如果是-1就表明你是在創(chuàng)建新用戶,如圖5所示。

圖 5 創(chuàng)建新用戶

3、輸入新用戶的信息,如圖6所示。

圖 6 輸入新用戶信息

4、點擊“保存”。驗證ID值是否不再是-1,如果不是-1表明新用戶已經(jīng)創(chuàng)建成功,如圖7所示。

圖 7 用戶創(chuàng)建成功后ID值不再是-1

5、返回人員名單界面,驗證新創(chuàng)建的用戶是否位于列表中,如圖8所示。

圖 8 新創(chuàng)建的用戶位于列表中

6、打開新建用戶的記錄,驗證內(nèi)容與你輸入的是否一致。

#p#

如果使用Web測試記錄器,可以很容易記錄下最基本的操作,但每次新增用戶時,ID值由于是主鍵,因此每次都會發(fā)生變化,這就使得回放操作更復雜了。

我們首先從第2步開始,增加一個驗證規(guī)則檢查ID值是否等于-1,要做到這一點,你需要知道兩件事:1)哪個Web請求啟動“創(chuàng)建新用戶”頁面,2)顯示ID值的ASP.NET Label控件的名字。

解決這兩個問題最好的辦法是運行Web測試,然后分析其結(jié)果,結(jié)果記錄清晰地記錄了你發(fā)送給Web應用程序的請求以及從Web應用程序返回的結(jié)果,通過查看HTML內(nèi)容,可以確定每個請求都發(fā)生了什么,使用了哪些Web控件,它們的名字是什么都一清二楚,如圖9所示。

圖 9 點擊響應標簽,查看HTML,找出顯示ID信息Label控件的名字

當你知道這個控件的名字 - 在這個例子叫做m_labelId – 也弄清楚了你需要哪個Web請求后,在這個請求上點擊右鍵,選擇“添加驗證規(guī)則”,打開添加驗證規(guī)則對話框,如圖10所示。

圖 10 給請求添加驗證規(guī)則

#p#

在Visual Studio 2010中,你可以使用標簽內(nèi)文本(Tag Inner Text)驗證規(guī)則讀取m_labelId控件的值,如果你使用的是Visual Studio 2008,你需自己編寫驗證規(guī)則獲取它的值。

接下來我們創(chuàng)建一個規(guī)則,確保保存成功后,人員ID值不等于-1,這一次可以使用查找文本(Find Text)規(guī)則,將發(fā)現(xiàn)文本則通過(Pass If Text Found)屬性設為否(False),如圖11所示,如果你發(fā)現(xiàn)標簽控件的文本和值是-1,規(guī)則驗證就失敗,表明未保存成功。

圖 11 給保存按鈕增加文本發(fā)現(xiàn)驗證規(guī)則

你可能也想給這個請求增加一個提取規(guī)則,提取出m_labelId的值,便于后面的測試使用,對于這個要求,可以使用標簽內(nèi)文本提取規(guī)則(Tag Inner Text Extraction Rule)提取m_labelId的值,然后將它放入名叫PersonId的上下文參數(shù)中,如圖12所示。

圖 12 給人員PersonId值添加提取規(guī)則

#p#

Web測試參數(shù)

當你提取到你想要的值,保存在測試上下文后,可以利用Web測試參數(shù)將測試上下文中的值插入到Web測試請求中,在我們的Web應用程序示例中,EditPerson.aspx頁面使用了一個名叫ID的查詢字符串參數(shù)載入人員信息。

當你記錄Web測試時,它會保存你使用到的值,因此當你重新載入這個人的信息時,你會發(fā)現(xiàn)在查詢字符串參數(shù)的值是一個硬編碼的值,如圖13所示。

圖 13 查詢字符串參數(shù)的值被硬編碼了

如果你點擊Id參數(shù),你會看到它的屬性對話框,在“值”屬性上,你可以點擊下拉列表看到所有的數(shù)據(jù)上下文值,你需要做的是選擇其中的PersonId上下文值,如圖14所示,之后查詢字符串參數(shù)的值就是動態(tài)填充的了。

圖 14 將PersonId 上下文值綁定給Id查詢字符串參數(shù)

參數(shù)化有一個最佳實踐應該在所有Web測試中使用 – 參數(shù)化Web服務器地址,特別是你打算在最后的負載測試中使用這些Web測試時,幸運的是,在Web測試編輯器中有一個按鈕提供了這個功能,如圖15所示,參數(shù)化Web服務器地址后,所有Web測試請求都會轉(zhuǎn)移到參數(shù)化后的Web服務器地址。

圖 15 參數(shù)化Web服務器按鈕

在Web測試的底部你應該看到有一個上下文參數(shù)(Context Parameters)節(jié)點,展開它就能看到測試期間引用的所有Web服務器,如圖16所示,這個功能非常有用,因為你運行Web測試的環(huán)境與運行負載測試的環(huán)境可能不同,另外,你可能將Web測試和負載測試與每日構(gòu)建關(guān)聯(lián)起來了,服務器的變化取決于你的構(gòu)建類型,即使你現(xiàn)在不需要它,你也會喜歡它的靈活性。

圖 16 在測試上下文中的參數(shù)化Web服務器

#p#

數(shù)據(jù)源和數(shù)據(jù)綁定

用數(shù)據(jù)上下文值實現(xiàn)參數(shù)化僅僅是構(gòu)建復雜的Web測試和負載測試的開始,你也可以給Web測試附加一個包含測試數(shù)據(jù)的數(shù)據(jù)源,對于數(shù)據(jù)源也可以運用參數(shù)化思想,每執(zhí)行一次Web測試換一行數(shù)據(jù)。

獲得一個數(shù)據(jù)源最簡單的方法是創(chuàng)建一個用逗號分隔的值組成的CSV文件,并將它導入到你的Visual Studio測試項目,如圖17所示。

圖 17 逗號分隔的數(shù)據(jù)源文件

導入這個CSV文件后,在Web測試上點擊右鍵,選擇“添加數(shù)據(jù)源”,如圖18所示,啟動添加數(shù)據(jù)源向?qū)В鐖D19所示。

圖 18 給Web測試添加一個數(shù)據(jù)源

圖 19 新建測試數(shù)據(jù)源向?qū)υ捒?/p>

#p#

當你配置好數(shù)據(jù)源后,就可以使用參數(shù)綁定將數(shù)據(jù)行值附加給你的Web測試請求,例如,如果你想使用數(shù)據(jù)源的值填充“創(chuàng)建新用戶”Web頁面中的字段,你可以將每個textbox控件的表單POST參數(shù)綁定到數(shù)據(jù)源中的字段,如圖20,21所示。

圖 20 將m_textFirstName POST參數(shù)綁定到數(shù)據(jù)源的FirstName列

圖 21 數(shù)據(jù)綁定表單POST參數(shù)

當你運行數(shù)據(jù)驅(qū)動的Web測試時,你會看到測試每執(zhí)行一次就使用數(shù)據(jù)源中的一行數(shù)據(jù),如圖22所示,這樣不僅可以創(chuàng)建一個動態(tài)的測試,也可以在大數(shù)據(jù)集上運行測試。

圖 22 使用數(shù)據(jù)源執(zhí)行多次迭代Web測試

小結(jié)

Web性能測試是構(gòu)成負載測試的基礎,是測試你的Web應用程序確保質(zhì)量和性能的有效方法,由數(shù)據(jù)驅(qū)動的Web性能測試使負載測試更接近真實環(huán)境,數(shù)據(jù)源的每一行數(shù)據(jù)由負載測試代理用來模擬用戶執(zhí)行類似的用例,但每次用到的數(shù)據(jù)都不同,如果每次發(fā)給服務器的數(shù)據(jù)都是相同,這樣的測試不算真正意義上的測試。

Visual Studio 2010旗艦版中增強的Web測試和負載測試功能為減少Q(mào)A周期提供了一個極好的方法,可以快速地確定你的應用程序是否如預期那樣工作,如果你從Team Foundation Server 2010自動構(gòu)建執(zhí)行測試,那么每次構(gòu)建時都可以執(zhí)行這些高質(zhì)量的測試。

本文引用的示例程序全部源代碼可從http://visualstudiomagazine.com/~/media/ECG/visualstudiomagazine/Code%20Download/2010/06/BenDay_WebTesting_vs2010.ashx下載。

原文名:Web Performance Testing with Visual Studio 2010

【編輯推薦】

  1. Visual Studio 2010中Xaml開發(fā)格式設置技巧
  2. Visual Studio 2010中手動添加圖片文件
  3. 使用Visual Studio 2010統(tǒng)一管理數(shù)據(jù)庫對象
  4. Visual Studio 2010 TFS探索之旅
  5. Visual Studio 2010更改顏色背景的方法

當前標題:WEB性能測試:你應該帶上VisualStudio2010
網(wǎng)站鏈接:http://www.5511xx.com/article/djcigdo.html