王斌 馮真
摘 要: 基于虛擬化技術(shù)進(jìn)行軟件自動(dòng)化測(cè)試是測(cè)試主流技術(shù)發(fā)展的一個(gè)方向。介紹了虛擬機(jī)軟件VMware結(jié)合測(cè)試工具軟件LoadRunner的一種軟件測(cè)試方案,詳細(xì)介紹了測(cè)試方法、測(cè)試環(huán)境、測(cè)試用例以及數(shù)據(jù)處理方法。通過對(duì)同一B/S系統(tǒng)在真實(shí)環(huán)境和虛擬環(huán)境中進(jìn)行對(duì)比性能測(cè)試,并基于實(shí)測(cè)數(shù)據(jù)加以分析,論證了該方案的優(yōu)越性,得出了能否應(yīng)用的結(jié)論。
關(guān)鍵詞: 虛擬機(jī); VMware; LoadRunner; 性能測(cè)試
中圖分類號(hào):TP319 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2014)02-40-02
0 引言
在當(dāng)今軟件測(cè)試行業(yè)中,虛擬化已經(jīng)成為測(cè)試主流技術(shù)發(fā)展的一個(gè)方向?;谔摂M機(jī)技術(shù)的軟件測(cè)試,具有低風(fēng)險(xiǎn)、低成本和安裝配置的易操作性、多樣性、靈活性等優(yōu)勢(shì)。本文主要探討虛擬機(jī)軟件結(jié)合測(cè)試工具的一種測(cè)試方案,以得出能否應(yīng)用的結(jié)論。
1 虛擬機(jī)軟件及測(cè)試工具軟件簡(jiǎn)介
1.1 虛擬機(jī)的基本概念
虛擬機(jī)即Virtual Machine(VM),是針對(duì)真正的計(jì)算機(jī)而言的概念,是一個(gè)模擬真實(shí)計(jì)算機(jī)進(jìn)行工作的軟件系統(tǒng)。按IBM的定義,虛擬機(jī)是物理主機(jī)(Host)的一個(gè)或多個(gè)拷貝,每個(gè)拷貝都是完全受保護(hù)的獨(dú)立系統(tǒng),可以像主機(jī)一樣運(yùn)行自己的操作系統(tǒng)和應(yīng)用程序,通常稱作客戶機(jī)(Guest)。
每一個(gè)虛擬機(jī)都擁有對(duì)其整個(gè)系統(tǒng)資源的完全控制權(quán),而且不受其他虛擬機(jī)和主機(jī)的影響。虛擬機(jī)中大部分主要指令的執(zhí)行實(shí)際上是直接由物理CPU來完成,基本不影響程序的執(zhí)行速度,這與仿真程序中指令由虛擬CPU執(zhí)行的工作方式是完全不同的。除定時(shí)與同步外,程序在虛擬機(jī)中運(yùn)行的效果與在主機(jī)中運(yùn)行的效果相同[1]。
1.2 虛擬機(jī)軟件VMware簡(jiǎn)介
VMware是被廣泛應(yīng)用的虛擬PC系統(tǒng)軟件,它可以提供基于Intel CPU的虛擬PC系統(tǒng)環(huán)境,包括CPU、BIOS、硬盤和其他外圍硬件設(shè)備[2],使用戶可以在一臺(tái)PC機(jī)上同時(shí)運(yùn)行兩個(gè)操作系統(tǒng)。VMware對(duì)外圍硬件設(shè)備的模擬,屏蔽了不同設(shè)備型號(hào)的差異,在硬件環(huán)境發(fā)生改變時(shí)(硬件型號(hào)變化),對(duì)于運(yùn)行于VMware上的操作系統(tǒng)影響很?。o須安裝新的驅(qū)動(dòng)程序)。
1.3 測(cè)試工具軟件LoadRunner簡(jiǎn)介
LoadRunner是一種預(yù)測(cè)系統(tǒng)行為和性能的工業(yè)標(biāo)準(zhǔn)級(jí)負(fù)載測(cè)試工具[3]。通過以模擬上千萬用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來確認(rèn)和查找問題,LoadRunner能夠?qū)φ麄€(gè)企業(yè)架構(gòu)進(jìn)行測(cè)試。通過使用LoadRunner,能最大限度地縮短測(cè)試時(shí)間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期[5]。
2 測(cè)試方案
2.1 被測(cè)系統(tǒng)介紹
某在線考勤系統(tǒng),是B/S模式的網(wǎng)絡(luò)應(yīng)用,開發(fā)語言為ASP,數(shù)據(jù)庫為Access2003,主要功能是實(shí)現(xiàn)自動(dòng)化考勤,即:人員上班后在自己的電腦上進(jìn)行簽到,下班時(shí)進(jìn)行注銷操作,系統(tǒng)將自動(dòng)記錄簽到時(shí)間及遲到記錄等信息。
2.2 測(cè)試方法及用例
作為一個(gè)小型的網(wǎng)絡(luò)應(yīng)用,考慮到系統(tǒng)用戶數(shù)量,擬采用的測(cè)試方法是[7]:
測(cè)試用例一:在5分鐘內(nèi),模擬從1個(gè)用戶開始,持續(xù)加壓到20個(gè)用戶登錄的場(chǎng)景,進(jìn)行登錄、簽到、注銷操作,查看服務(wù)器的響應(yīng)情況;
測(cè)試用例二:在5分鐘內(nèi),模擬20個(gè)用戶同時(shí)登錄的場(chǎng)景,進(jìn)行登錄、簽到、注銷操作,查看服務(wù)器的響應(yīng)情況。
以上場(chǎng)景均執(zhí)行兩次,在虛擬機(jī)中執(zhí)行一次,在物理主機(jī)上執(zhí)行一次,將虛擬機(jī)中的測(cè)試結(jié)果與真實(shí)環(huán)境下的測(cè)試結(jié)果相比對(duì),尋找差異,得出是否可行的結(jié)論。
2.3 測(cè)試環(huán)境
3.2 數(shù)據(jù)分析
通過以上測(cè)試數(shù)據(jù)[4]可知,簡(jiǎn)單B/S模式的Web應(yīng)用下,在虛擬主機(jī)上進(jìn)行負(fù)載壓力測(cè)試的結(jié)果,其事務(wù)響應(yīng)時(shí)間和事務(wù)通過率兩個(gè)主要指標(biāo)與真實(shí)主機(jī)上的數(shù)據(jù)近似。
4 結(jié)束語
本文介紹了結(jié)合測(cè)試工具LoadRunner進(jìn)行B/S模式系統(tǒng)的測(cè)試,在單一系統(tǒng)環(huán)境中,得出了利用虛擬機(jī)進(jìn)行測(cè)試可以定性說明系統(tǒng)特性的結(jié)論。對(duì)此類系統(tǒng),可先不必部署至真實(shí)環(huán)境而利用虛擬環(huán)境進(jìn)行測(cè)試,從而可大量節(jié)約人力、物力成本。測(cè)試后,可基于其結(jié)果分析,發(fā)現(xiàn)系統(tǒng)瓶頸,進(jìn)行性能調(diào)優(yōu),再進(jìn)行回歸測(cè)試。對(duì)于復(fù)雜系統(tǒng)能否在虛擬機(jī)環(huán)境下結(jié)合測(cè)試工具進(jìn)行性能測(cè)試,還有待于進(jìn)一步分析與研究。
參考文獻(xiàn):
[1] 湯文學(xué)等.VMware虛擬機(jī)軟件在網(wǎng)絡(luò)技術(shù)實(shí)驗(yàn)中的應(yīng)用[J].電腦知識(shí)與技術(shù),2008.7:1366-1367
[2] 張敏等.基于虛擬機(jī)的嵌入式VxWorks實(shí)驗(yàn)教學(xué)平臺(tái)[J].實(shí)驗(yàn)科學(xué)與技術(shù),2009.2:47
[3] 陳紹英等.Web性能測(cè)試實(shí)戰(zhàn)[M].電子工業(yè)出版社,2006.
[4] 于艷華等.如何利用測(cè)試工具LoadRunner進(jìn)行性能測(cè)試結(jié)果分析[J].科技傳播,2011.15:208
[5] 董躍華等.利用LoadRunner實(shí)現(xiàn)網(wǎng)頁負(fù)載壓力測(cè)試[J].江西理工大學(xué)學(xué)報(bào),2010.5:53
[6] 汪星輝等.VMware虛擬機(jī)在網(wǎng)絡(luò)實(shí)驗(yàn)與教學(xué)中的應(yīng)用[J].科技信息,2010.10:645
[7] 伊文斌,鄭劍.LoadRunner的Web負(fù)載測(cè)試[J].江西理工大學(xué)學(xué)報(bào),2008.29(4):13
[8] 岳崗等.海軍艦艇作戰(zhàn)系統(tǒng)通用測(cè)試環(huán)境仿真軟件及自動(dòng)生成工具[J].計(jì)算機(jī)應(yīng)用,2012.32:101