有很多工具可以用于這類測試,包括微軟的 application center test(act)。微軟提供了兩種使用 act 的方式,一是作為獨(dú)立產(chǎn)品使用,另外 visual studio .net enterprise edition 也包含一個(gè)版本的 act。下面讓我們細(xì)看一下如何使用這個(gè)工具訪問一個(gè) web 應(yīng)用程序。
得到 act
act 壓力測試 web 服務(wù)器,允許我們分析 web 應(yīng)用程序的性能和可擴(kuò)展性問題。visual studio .net enterprise edition 中的 act 并不限制為只測試使用 asp.net 構(gòu)建的應(yīng)用程序。比如說,使用它還可以測試任何類型的 web 應(yīng)用程序,包括 active server pages(asp),java server pages(jsp)和 html。
act 通過模擬一大組用戶以及打開很多到 web 服務(wù)器的連接來測試 web 應(yīng)用程序。連接到服務(wù)器的客戶向服務(wù)器發(fā)送 http 請(qǐng)求。act 允許我們指定要模擬的用戶/連接的數(shù)目。
除了標(biāo)準(zhǔn)的 http 協(xié)議之外,act 支持各種可以在 web 應(yīng)用程序中使用的身份驗(yàn)證方案,包括流行的安全套接字層(ssl,secure sockets layer)協(xié)議。
注意:在安裝 visual studio .net enterprise edition 時(shí) act 是一個(gè)安裝選項(xiàng)。在開始創(chuàng)建測試之前,應(yīng)該正確地配置測試環(huán)境以保證能夠得到可靠的測試結(jié)果。
對(duì)于如何建立在 act 產(chǎn)品中使用的測試環(huán)境,微軟提供了以下指導(dǎo)原則:
測試環(huán)境應(yīng)該只包含開發(fā)服務(wù)器或測試服務(wù)器。
開發(fā)人員應(yīng)該盡量減少所有與測試無關(guān)的網(wǎng)絡(luò)活動(dòng)。而且,還要避免在同一個(gè)測試環(huán)境中同時(shí)運(yùn)行多個(gè)測試。
對(duì)于一個(gè)壓力測試,創(chuàng)建足夠的 web 服務(wù)器負(fù)載,使處理器的利用率至少達(dá)到 80%。
使用快速的網(wǎng)絡(luò)組件,避免使用 http 代理服務(wù)器。壓力測試依賴于逐漸增加的負(fù)載等級(jí),直到 web 服務(wù)器或者應(yīng)用程序變成瓶頸,這個(gè)時(shí)候停止增加負(fù)載。如果系統(tǒng)的任何部分比 web 服務(wù)器或應(yīng)用程序慢,那么就不可能測量出服務(wù)器或應(yīng)用程序的最大容量。增加負(fù)載等級(jí)將不能解決這個(gè)問題。
在正確地安裝了產(chǎn)品,設(shè)置好了測試環(huán)境之后,我們已經(jīng)可以開始創(chuàng)建和運(yùn)行測試了。
創(chuàng)建測試
在安裝完 act 之后,可以將它作為一個(gè)獨(dú)立工具使用,還可以通過 visual studio .net 使用。如果要使用獨(dú)立模式,可以在 visual studio .net 安裝位置的 visual studio .net enterprise features 子目錄下找到。而且,visual studio .net 中還提供了 act projects 的一個(gè)新項(xiàng)目類型。兩種方式的功能相同,但是留在我們熟悉的 visual studio .net 工作空間中是一個(gè)好的選擇。因此下面我將集中在使用 visual studio .net 界面。
主要組件是 act 項(xiàng)目。在 visual studio .net 中通過使用 act project 選項(xiàng)新建一個(gè)項(xiàng)目可以創(chuàng)建一個(gè)新 act 項(xiàng)目。act 項(xiàng)目文件是一個(gè)擴(kuò)展名為 .act 的 xml 文件。此外,在項(xiàng)目設(shè)置中,option 是一個(gè)代理服務(wù)器或端口(如果使用)的說明。這是我們?cè)陧?xiàng)目的 properties 窗口中輸入的值。
可以通過右鍵點(diǎn)擊項(xiàng)目然后選擇 add new item 往項(xiàng)目中添加一個(gè)測試。act 安裝包括兩個(gè)測試腳本(一個(gè)是 jscript,另外一個(gè)是 vbscript),以及一個(gè)用于記錄瀏覽器會(huì)話的選項(xiàng)。最后一個(gè)選項(xiàng)是測試應(yīng)用程序的盡可能簡單直接的方法。
一旦選擇了 browser recorded test,就會(huì)打開一個(gè)具有 start 和 cancel 按鈕的窗口。start 按鈕通過打開 internet explorer 的一個(gè)新實(shí)例開始記錄過程。在那個(gè) internet explorer 實(shí)例中發(fā)生的所有活動(dòng)都將被記錄起來。在結(jié)束后,可以返回 browser record 窗口然后選擇 stop。這樣我們就可以選擇 ok 將測試保存在項(xiàng)目中,或者取消這一過程。選擇 save 可以生成一個(gè) vbscript 文件,這個(gè)文件包含記錄測試的腳本。通過分析系統(tǒng)產(chǎn)生的腳本可以更多地了解 act 腳本的執(zhí)行情況。
在會(huì)話停止記錄之后,我們可以用它來測試應(yīng)用程序。也就是說,我們可以將這個(gè)會(huì)話作為測試應(yīng)用程序性能的基礎(chǔ)。測試屬性允許我們控制連接、測試等的數(shù)目。下面是對(duì)不同測試屬性的一個(gè)概括:
iterations:測試將運(yùn)行的次數(shù)。
runtime:測試將要運(yùn)行的時(shí)間。
warmuptime:測試在啟動(dòng)之前的等待時(shí)間。
connections:測試模擬的連接數(shù)目。
測試實(shí)際上通過 test 下拉菜單執(zhí)行,在 visual studio .net 位于 act 項(xiàng)目時(shí)菜單欄就會(huì)出現(xiàn)這個(gè)菜單。使用 test 菜單可以啟動(dòng)和/或停止測試,還可以查看測試結(jié)果。測試結(jié)果顯示在 visual studio .net 工作空間的輸出窗格中。
browser record 測試只是 act 提供的很多可能的測試中的一種。act 安裝中的其它基本測試僅僅發(fā)送一個(gè) http 到一個(gè)指定的地址,但是 act 包括一個(gè)廣泛的對(duì)象模型,我們可以使用這些對(duì)象模型來構(gòu)建使用 vbscript 或者 jscript 的特征齊全的測試。
新聞熱點(diǎn)
疑難解答
圖片精選