国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Loadrunner-ALM框架的性能測試應(yīng)用研究

2019-12-02 08:56:52張偉
科技創(chuàng)新與應(yīng)用 2019年32期
關(guān)鍵詞:性能測試

張偉

摘? 要:性能測試是發(fā)現(xiàn)軟件性能問題的有效手段,在軟件上線之前,必須對系統(tǒng)進行嚴(yán)格的性能測試,以確認(rèn)系統(tǒng)是否滿足性能需求。文章結(jié)合實際測試案例,介紹了使用測試工具HP Loadrunner和測試管理工具HP ALM實施性能測試的過程及相關(guān)操作。

關(guān)鍵詞:性能測試;Loadrunner;ALM;負(fù)載測試

中圖分類號:TP39 文獻(xiàn)標(biāo)志碼:A 文章編號:2095-2945(2019)32-0077-03

Abstract: Performance testing is an effective means to find software performance problems. Before the software is online, the system must be strictly tested to confirm whether the system meets the performance requirements. Combined with the actual test case, this paper introduces the process and related operation of performance testing using test tool HP Loadrunner and test management tool HP ALM.

Keywords: performance test; Loadrunner; ALM; load test

引言

現(xiàn)如今,軟件產(chǎn)品的用戶對軟件的性能要求越來越高,性能差的系統(tǒng)會影響用戶的體驗和軟件的推廣。因此,在軟件系統(tǒng)發(fā)布應(yīng)用之前,需要經(jīng)過嚴(yán)格的性能測試,以判斷系統(tǒng)能否達(dá)到預(yù)期的性能需求,同時分析及定位軟件系統(tǒng)中可能存在的瓶頸,提出軟件優(yōu)化建議,最后起到優(yōu)化軟件性能,使軟件能夠安全、可靠、穩(wěn)定運行。在測試實踐中,通常需要借助性能測試工具來實施性能測試。常用的商業(yè)化性能測試工具包括:HP Mercury Loadrunner、 IBM Rational Robot、QALoad等,其中,Loadrunner的市場占有量最高。本文以一款客戶關(guān)系管理(簡稱CRM)軟件系統(tǒng)為例,介紹利用Loadrunner進行性能測試實踐的過程。HP ALM是惠普公司開發(fā)的一款軟件生命周期管理軟件,可以對測試過程進行管理,它可以與Loadrunner進行無縫通信,本文使用ALM 對Loadrunner性能測試過程進行管理。

1 HP Loadrunner

Loadrunner是由惠普公司研制的一款性能測試工具,它通過以模擬上千萬用戶實施并發(fā)負(fù)載及實時性能監(jiān)測的方式來確認(rèn)和查找問題,對整個企業(yè)架構(gòu)進行測試,幫助企業(yè)最大限度地縮短測試時間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期。Loadrunner具有以下七個特點:(1)支持多種平臺開發(fā)語言,Loadrunner可以支持多種腳本語言,默認(rèn)的腳本生成語言為C語言。(2)輕松創(chuàng)建虛擬用戶,使用Loadrunner的負(fù)載發(fā)生器組件可以虛擬出成千上萬個虛擬用戶來對被測業(yè)務(wù)的并發(fā)訪問。(3)創(chuàng)建真實負(fù)載測試場景,Loadrunner的控制器提供了多種測試場景設(shè)計技術(shù),測試人員依據(jù)性能測試需求可以配置出最接近真實用戶使用情況的場景方案。(4)強大的實時監(jiān)控,Loadrunner的控制器中集成了大量的資源計數(shù)器,如操作系統(tǒng)、數(shù)據(jù)庫、web應(yīng)用服務(wù)器等資源計數(shù)器。(5)分析結(jié)果以精確定位問題所在,Loadrunner的分析其提供了多種結(jié)果處理和分析技術(shù),如過濾、合并、關(guān)聯(lián)、頁面細(xì)分等,以便迅速查找到性能問題并追溯原由。

2 CRM性能測試實踐

使用Loadrunner對CRM系統(tǒng)進行性能測試,主要流程分為7步:性能測試需求分析與提取、制定測試計劃、設(shè)計測試用例、開發(fā)測試腳本、設(shè)計場景方案、執(zhí)行并監(jiān)控場景、分析測試結(jié)果并提交測試缺陷。其中執(zhí)行測試方案和提交測試缺陷借助ALM來進行。

2.1 性能測試需求分析與提取

性能測試需求分析與提取是測試人員依據(jù)客戶需求對被測系統(tǒng)的性能需求進行充分的理解與分析,挖掘系統(tǒng)的性能測試指標(biāo)及預(yù)期要求,并確定要進行測試的功能業(yè)務(wù)。性能測試需求分析與提取過程是非常重要的,如果在這個過程中無法得到確切的性能指標(biāo),會導(dǎo)致相關(guān)測試工作無法正常開展。性能測試需求提取一般流程包括三步:(1)測試指標(biāo)的分析與提取;(2)測試業(yè)務(wù)的確定;(3)評審性能測試指標(biāo)。

在本案例中,確定要進行的性能測試業(yè)務(wù)包括:登錄、客戶管理、線索管理、商機管理、日程管理、任務(wù)管理,其中登錄是單業(yè)務(wù)測試,客戶管理、線索管理、商機管理、日程管理、任務(wù)管理是組合業(yè)務(wù)測試。本次測試所涉及的指標(biāo)包括并發(fā)用戶數(shù)、響應(yīng)時間、事務(wù)成功率、CPU利用率、內(nèi)存使用率等。

2.2 制定性能測試計劃

軟件測試計劃是安排和指導(dǎo)測試過程的綱領(lǐng)性文件,通常是由經(jīng)驗豐富的測試工程師負(fù)責(zé)制訂與編寫文檔。在這個階段包括以下活動:組織測試人員、安排測試時間、搭建測試環(huán)境、設(shè)計場景模型、收集測試數(shù)據(jù)、分析測試風(fēng)險等。除了設(shè)計場景模型活動之外,其他幾種活動應(yīng)該不難理解。場景模型是用來約束和規(guī)范業(yè)務(wù)活動時的場景環(huán)境,它是指導(dǎo)場景設(shè)計的依據(jù)。場景設(shè)計的主要目的是能夠模擬出更加接近用戶真實使用情況的運行環(huán)境,場景模型的創(chuàng)建不僅要考慮具體的業(yè)務(wù)操作過程,還要思考多用戶同時使用系統(tǒng)的情況。

2.3 設(shè)計測試用例

測試用例的設(shè)計是性能測試工作中最重要的環(huán)節(jié)之一,它是指導(dǎo)后續(xù)腳本開發(fā)、場景方案設(shè)計與執(zhí)行的依據(jù)。性能測試用例模板也是多種多樣,一般來說,一個性能測試用例通常包含測試用例編號、測試目的、前提與約束、并發(fā)用戶數(shù)、操作步驟、預(yù)期結(jié)果、設(shè)計人員和執(zhí)行人員、設(shè)計時間和執(zhí)行時間。性能測試通常是在功能測試之后開始實施的,因此,性能測試用例只需考慮正常的業(yè)務(wù)流程,而不需要檢查異常流程,但是仍需要注意業(yè)務(wù)中的約束條件。

在本案例中,約束條件包括:(1)創(chuàng)建線索時,聯(lián)系人姓名、手機和郵箱不能為空,手機和郵箱須遵守一定的格式;(2)創(chuàng)建客戶時,客戶名稱不能為空,且不能跟已有客戶名稱重復(fù);(3)登錄用戶至少已擁有1位客戶,在創(chuàng)建商機時,商機名稱和預(yù)計價格不能為空,且商機名稱不能與已存在的商機名稱重復(fù);(4)在創(chuàng)建任務(wù)時,登錄用戶至少已擁有1位下屬員工。

在本案例中,測試指標(biāo)及預(yù)期結(jié)果包括:(1)CRM系統(tǒng)支持的并發(fā)用戶總數(shù)是30個,其中,40%用戶執(zhí)行線索創(chuàng)建業(yè)務(wù),25%用戶執(zhí)行客戶創(chuàng)建業(yè)務(wù),20%用戶執(zhí)行商機創(chuàng)建業(yè)務(wù),10%用戶執(zhí)行日程創(chuàng)建業(yè)務(wù),5%用戶執(zhí)行任務(wù)創(chuàng)建業(yè)務(wù);(2)用例中所有事務(wù)的響應(yīng)時間不超過3秒;(3)業(yè)務(wù)成功率>=98%,隨著并發(fā)用戶數(shù)的增加,TPS穩(wěn)步上升;(4)CPU使用率<=75%,內(nèi)存使用率<=70%。

2.4 開發(fā)測試腳本

性能測試計劃和測試用例設(shè)計完成之后,測試工程師就可以依據(jù)測試場景模型和測試用例來開發(fā)性能測試腳本。腳本開發(fā)的過程主要就是將測試業(yè)務(wù)變成可重復(fù)執(zhí)行的腳本,腳本開發(fā)的過程如圖1所示。

受篇幅所限,本文僅給出商機創(chuàng)建業(yè)務(wù)腳本的主要開發(fā)過程,包括:(1)錄制商機創(chuàng)建腳本,添加多個事務(wù),以便測試各個事務(wù)的響應(yīng)時間;(2)使用自動和手工關(guān)聯(lián)技術(shù)對商機創(chuàng)建者ID、擁有者ID、商機所對應(yīng)客戶ID進行關(guān)聯(lián),使測試腳本能夠提交正確的ID數(shù)據(jù);(3)使用檢查點技術(shù)驗證登錄后的頁面是否存在登錄用戶字符串,以判斷用戶登錄是否成功;(4)對用戶名和商機名進行參數(shù)化,便于腳本在執(zhí)行過程中使用不同的參數(shù)值;(5)增加思考時間和必要的注釋信息;(6)回放并調(diào)試腳本,保證測試腳本的正確性。

2.5 設(shè)計場景方案

腳本開發(fā)完成之后,將腳本加載到Controller中,然后在Controller組件中進行測試場景的設(shè)計。場景設(shè)計的主要依據(jù)就是測試計劃所設(shè)計的場景模型,通常需要考慮:并發(fā)用戶數(shù)、虛擬用戶調(diào)度計劃、集合點應(yīng)用、IP欺騙技術(shù)、負(fù)載發(fā)生器、負(fù)載均衡、資源監(jiān)控器等。

在本案例中,登錄業(yè)務(wù)腳本單獨放在一個場景中運行,而線索創(chuàng)建業(yè)務(wù)、客戶創(chuàng)建業(yè)務(wù)、商機創(chuàng)建業(yè)務(wù)、日程創(chuàng)建業(yè)務(wù)和任務(wù)創(chuàng)建業(yè)務(wù)腳本組合放在一個場景中運行。這里給出組合業(yè)務(wù)的場景設(shè)計策略:(1)設(shè)置并發(fā)用戶數(shù)為35; (2)場景啟動時,每15秒加載一個虛擬用戶,所有虛擬用戶加載完畢后,場景持續(xù)運行30分鐘,結(jié)束時,每15秒釋放一個虛擬用戶;(3)使用1個負(fù)載機;(4)使用IP欺騙技術(shù),在負(fù)載機虛擬10個IP地址;(5)在服務(wù)水平協(xié)議中,設(shè)置事務(wù)的響應(yīng)時間預(yù)期值不超過3秒;(6) 添加Windows資源計數(shù)器、Apache資源計數(shù)器和mysql資源計數(shù)器。

2.6 執(zhí)行與監(jiān)控場景

場景方案設(shè)計好之后,測試人員還要為腳本的運行準(zhǔn)備必要的測試數(shù)據(jù),在本次測試中,要準(zhǔn)備200條可登錄系統(tǒng)的用戶帳號,還要為每個用戶添加至少1條客戶信息。

經(jīng)過詳細(xì)的場景測試準(zhǔn)備工作之后,測試人員就可以執(zhí)行測試場景方案了。在實際測試中,可以在HP ALM系統(tǒng)中創(chuàng)建性能測試的測試集去執(zhí)行相關(guān)的測試場景文件。使用ALM可以運行Loadrunner測試場景,主要包含兩大部分的操作:一是將測試場景上傳到ALM中;二是在ALM創(chuàng)建測試集并運行測試場景。上傳測試場景通常需要進行以下幾項操作:(1)打開Loadrunner的控制器,連接到ALM系統(tǒng)上;(2)將測試場景上傳到ALM系統(tǒng)的“測試計劃”模塊中;(3)在ALM中驗證上傳是否成功。在ALM系統(tǒng)中執(zhí)行測試場景通常需要進行以下幾項操作:(1)在ALM的測試實驗室中建立測試集,并將要運行的測試場景導(dǎo)入測試集;(2)執(zhí)行測試集并查看測試結(jié)果。

在場景執(zhí)行過程中,測試人員要監(jiān)控場景的運行情況,尤其是場景執(zhí)行初期比較容易暴露測試腳本和場景設(shè)計中的問題,盡早發(fā)現(xiàn)并解決測試中存在的問題可以減少一些不必要的時間浪費,例如,如果場景要持續(xù)運行24小時,在場景運行結(jié)束后才發(fā)現(xiàn)測試腳本中犯了某些低級錯誤,那么本次場景運行基本上就沒有任何意義了。

在本次場景執(zhí)行過程中,主要監(jiān)控的內(nèi)容包括:Vuser的運行狀態(tài)、場景運行的概要信息、錯誤輸出消息、Vuser運行日志、數(shù)據(jù)分析圖和資源計數(shù)器。

2.7 分析測試結(jié)果并向ALM提交缺陷

在場景執(zhí)行完成之后,測試人員可以通過分析器組件對結(jié)果數(shù)據(jù)進行分析和處理。在結(jié)果分析過程中,如果發(fā)現(xiàn)某些性能指標(biāo)不符合預(yù)期要求,則需要測試人員進一步去挖掘系統(tǒng)可能存在的瓶頸并向開發(fā)工程師提出性能調(diào)優(yōu)的建議。在本案例中,主要發(fā)現(xiàn)了系統(tǒng)的兩個問題:(1)退出事務(wù)的響應(yīng)時間過長;(2)CPU使用率過高。針對這兩個缺陷問題,分析并總結(jié)出缺陷報告,然后通過缺陷管理工具提交測試缺陷。ALM系統(tǒng)包含比較強大的缺陷管理功能,本案例中使用ALM系統(tǒng)來管理測試過程中發(fā)現(xiàn)的缺陷。

3 結(jié)束語

使用HP Loadrunner等測試工具可以經(jīng)濟、快速地實施性能測試,挖掘軟件系統(tǒng)的性能缺陷,使軟件系統(tǒng)可以安全、可靠、穩(wěn)定運行。在實際測試活動中,測試人員可以將Loadrunner和ALM結(jié)合起來去實施和管理性能測試,提升測試的效率和質(zhì)量。

參考文獻(xiàn):

[1]馮興利.基于Fiddler+Loadrunner的微信公眾號自動化壓力測試[J].計算機應(yīng)用,2018,38(S2):267-269.

[2]王設(shè)計,張海梅,WANGSheji,等.基于LoadRunner的煤礦安全監(jiān)控系統(tǒng)性能測試方法[J].工礦自動化,2014,40(10):75-77.

[3]龍運堅,何倩,王勇,等.基于對等架構(gòu)的Web服務(wù)注冊系統(tǒng)[J].計算機應(yīng)用,2014,34(7):1983-1987.

[4]朱杰媛,朱巖,管曉靜.電力系統(tǒng)監(jiān)控軟件性能測試[J].中國測試,2008,34(2):32-35.

[5]尤宇峰,楊文暉,苗放.基于云平臺的分布式數(shù)據(jù)注冊中心訪問性能[J].科學(xué)技術(shù)與工程,2018,18(11):264-269.

[6]文俊浩,桑春艷,何盼.電子政務(wù)系統(tǒng)性能測試應(yīng)用研究[J].計算機科學(xué),2009,36(4):179-180.

[7]譚慶全,劉群,畢建濤,等.瘦客戶端WebGIS實現(xiàn)模式的性能仿真測試與分析[J].計算機應(yīng)用研究,2008,25(10):3145-3147.

猜你喜歡
性能測試
基于LoadRunner的網(wǎng)絡(luò)倉庫系統(tǒng)性能測試及優(yōu)化
Hadoop性能測試自動化研究
關(guān)于Java軟件的性能測試分析
自動扶梯主驅(qū)動鏈條性能測試分析與潤滑保養(yǎng)
人事薪資管理系統(tǒng)軟件測試方案研究
車聯(lián)網(wǎng)專用短程通信技術(shù)
關(guān)于聚羧酸系減水劑的性能論述
論轉(zhuǎn)向系統(tǒng)匹配構(gòu)架和實踐
淺談網(wǎng)頁游戲的測試方法
黃麻、洋麻纖維性能研究
中國纖檢(2015年3期)2015-03-13 18:28:41
荔浦县| 色达县| 昭苏县| 海城市| 获嘉县| 武胜县| 宝应县| 阳朔县| 外汇| 彝良县| 上思县| 镇远县| 闵行区| 拉萨市| 聂荣县| 蒲城县| 奉化市| 临沧市| 江油市| 阜新| 光泽县| 汉寿县| 绥阳县| 明星| 固原市| 恭城| 清原| 安阳市| 赣榆县| 白山市| 辉南县| 雷波县| 克山县| 谢通门县| 江津市| 河南省| 商南县| 新民市| 治县。| 女性| 永和县|