• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      針對基于B/S架構(gòu)軟件系統(tǒng)的性能測試研究

      2017-11-20 13:52:20萬鈞
      電腦知識與技術(shù) 2017年27期
      關(guān)鍵詞:腳本事務(wù)工序

      萬鈞

      摘要:當今社會的信息化建設(shè)模式主要包括自主開發(fā)、合作開發(fā)及外購商業(yè)軟件三種模式,這些軟件的整體性能是否滿足各建設(shè)單位需求,能否承受最大用戶數(shù)并發(fā)使用等一系列問題,一直困擾著各建設(shè)單位的信息化管理等相關(guān)部門。其中,隨著信息化建設(shè)發(fā)展,基于B/S架構(gòu)的軟件系統(tǒng)已經(jīng)成為了各個建設(shè)單位信息化建設(shè)項目的主流。因此,為了提高軟件可靠性和效率,進一步驗證功能正確性,那么,從性能測試工作中總結(jié)研究出一套行之有效的針對B/S架構(gòu)軟件系統(tǒng)的性能測試方法論變得尤為重要。

      關(guān)鍵詞:性能;事務(wù);負載;腳本;工序

      中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2017)27-0211-02

      隨著軟件規(guī)模的不斷擴大,軟件質(zhì)量問題已成為制約計算機發(fā)展的主要因素之一。其中,基于B/S架構(gòu)的軟件系統(tǒng)正在成為各個建設(shè)單位信息化建設(shè)項目的主流。與以往的軟件相比,它有著不同于以往軟件的特點,主要體現(xiàn)在:數(shù)據(jù)庫集中、信息系統(tǒng)管理集中、業(yè)務(wù)管理集約化、用戶所在地域分布廣泛、數(shù)據(jù)量大、業(yè)務(wù)量大等方面。

      由于存在以上這些特點,基于B/S架構(gòu)的信息化軟件相比傳統(tǒng)軟件,帶來了非常大的優(yōu)越性,但同時也帶來了很多挑戰(zhàn),這是因為基于B/S架構(gòu)的信息系統(tǒng)的大分布,決定了Web服務(wù)器要同時接受大量的數(shù)據(jù)請求。

      通過驗證軟件系統(tǒng)是否能夠達到用戶提出的性能需求,發(fā)現(xiàn)軟件系統(tǒng)中存在的性能瓶頸,了解軟件系統(tǒng)的可靠性能力,才能達到不斷提高軟件系統(tǒng)性能的最終目的。

      1 測試工序

      性能測試工序主要包括:設(shè)計測試用例、搭建測試環(huán)境、創(chuàng)建測試腳本、設(shè)置方案場景、運行方案場景、分析測試結(jié)果幾大部分,見圖1。具體內(nèi)容如下所述:

      (1) 根據(jù)評審?fù)ㄟ^的軟件需求規(guī)格說明書中的性能需求部分,設(shè)計性能測試用例,包括:性能測試環(huán)境描述、所需測試功能點、測試場景設(shè)計、基礎(chǔ)數(shù)據(jù)量準備、所需監(jiān)控的各項性能指標等;

      (2) 搭建性能測試環(huán)境,包括待測軟件系統(tǒng)的安裝與部署及性能測試工具(控制臺服務(wù)器與并發(fā)服務(wù)器)環(huán)境的搭建;

      (3) 根據(jù)性能測試用例中的所需測試業(yè)務(wù)場景,通過腳本編輯器創(chuàng)建性能測試腳本,并將每個業(yè)務(wù)場景以事務(wù)(transaction)的形式添加到腳本之中;

      (4) 根據(jù)性能測試用例中的測試場景設(shè)計、基礎(chǔ)數(shù)據(jù)量準備、所需監(jiān)控的各項性能指標,通過場景設(shè)計器對各種場景進行設(shè)置;

      (5) 通過場景設(shè)計器運行每個場景,并分別記錄及保存性能測試結(jié)果;

      (6) 最終借助測試結(jié)果分析器對性能測試結(jié)果進行分析和總結(jié),形成性能測試報告。

      2 測試工具

      隨著軟件測試的地位逐步提高,測試的重要性逐步顯現(xiàn),測試工具的應(yīng)用已經(jīng)成為了普遍的趨勢。目前用于測試的工具一般可分為白盒測試工具、黑盒測試工具、性能測試工具,測試管理工具(測試流程管理、缺陷跟蹤管理、測試用例管理)。

      目前行業(yè)內(nèi)比較流行的性能測試工具有很多種,例如:WAS、OpenSTA、QALoad、TeamTest、WebLoad、LoadRunner等。

      3 測試方法

      3.1 測試用例設(shè)計

      性能測試用例主要分為預(yù)期目標用戶測試,用戶并發(fā)測試,疲勞強度與大數(shù)據(jù)量測試,網(wǎng)絡(luò)性能測試,服務(wù)器性能測試五大部分。設(shè)計測試用例時要根據(jù)實際情況進行裁減,在項目應(yīng)用中遵守低成本、重策略、具體化等原則。性能測試用例設(shè)計策略需注意三點:一是要選擇典型的業(yè)務(wù)場景進行測試,尤其要選擇并發(fā)用戶數(shù)目較大的業(yè)務(wù)場景。二是要覆蓋全面,即設(shè)計出的用例要覆蓋到系統(tǒng)高峰期的主要業(yè)務(wù)場景。按照80/20法則,大約80%的用戶會集中在20%的時間段內(nèi)進行頻繁操作,為了更好地體現(xiàn)出在不同用戶數(shù)使用下,系統(tǒng)的各項性能指標變化趨勢。三是要選擇合適的性能監(jiān)控指標,否則性能測試的整個過程會事倍功半。

      另外,大多數(shù)用戶的真實使用場景中并不存在所有用戶只使用一個功能模塊的情況,而是每個功能模塊都有可能被用到,因此還需要適當采用組合業(yè)務(wù)性能測試方法。

      3.2 Virtual User腳本開發(fā)

      利用虛擬用戶腳本編輯器技術(shù),可以將每個測試用例中的業(yè)務(wù)場景進行腳本語言轉(zhuǎn)化,形成性能測試工具可以識別的業(yè)務(wù)場景語言。

      根據(jù)被測系統(tǒng)的開發(fā)框架不同,可以選擇Web(HTTP/HTML)、Web Services等針對基于B/S架構(gòu)軟件系統(tǒng)的腳本框架協(xié)議進行腳本開發(fā)。開發(fā)過程中可以通過以下手段滿足不同性能測試要求:通過事務(wù)(Transaction)的封裝來獲取某個業(yè)務(wù)操作的響應(yīng)時間;插入Text/Image檢查點,可以檢查Web服務(wù)器返回的網(wǎng)頁是否正確,驗證網(wǎng)頁上是否存在指定的Text或Image;腳本關(guān)聯(lián)技術(shù),可以把腳本中某些寫死的(Hard-coded)數(shù)據(jù),轉(zhuǎn)變成是取自被測服務(wù)器所發(fā)送的、動態(tài)的數(shù)據(jù),繞過服務(wù)器端在每一次請求之后返回的唯一辨識碼(Session ID),提高腳本的正確性和可靠性。

      3.3 測試場景運行

      場景設(shè)計器的運行方式分為兩種:目標場景設(shè)置和手動場景設(shè)置。目標場景設(shè)置的目的是通過設(shè)置目標來驗證軟件系統(tǒng)能否達到預(yù)期目標,在項目最后確認質(zhì)量時可以使用目標場景來完成最終的測試報告。目標場景設(shè)置中無法設(shè)置集合點策略,系統(tǒng)自動形成并發(fā)負載,定位瓶頸位置較難;手動場景設(shè)置可以定制化虛擬用戶的啟動策略、持續(xù)負載時間、事務(wù)運行思考時間等,盡可能真實的模擬系統(tǒng)負載狀態(tài)。

      3.4 測試結(jié)果分析

      性能測試結(jié)果分析是在整個性能測試過程中最為關(guān)鍵和重要的一個階段。無論用什么樣的測試工具和測試方法,都需要測試工程師利用其豐富的經(jīng)驗、精湛的技術(shù)對這些原始數(shù)據(jù)進行全面的邏輯分析和推導(dǎo),才能得出正確的結(jié)論。endprint

      性能測試結(jié)果分析需要遵循“由外到內(nèi),由表及里,層層深入”的基本原則。對于一個軟件系統(tǒng)來說,性能開始出現(xiàn)下降的最直觀表象就是系統(tǒng)的響應(yīng)時間變長了,這時可以把系統(tǒng)響應(yīng)時間作為分析性能的起點,要從原始測試數(shù)據(jù)中查看系統(tǒng)的響應(yīng)時間是否滿足用戶的性能需求。下面我們主要講一下服務(wù)端性能問題的結(jié)果分析過程:

      (1) 平均事務(wù)響應(yīng)時間(Average Transaciton Response Time)是分析性能測試結(jié)果的第一步,根據(jù)測試結(jié)果來確定軟件系統(tǒng)變慢了的業(yè)務(wù)操作,它顯示了在測試場景運行期間的每一秒內(nèi)事務(wù)執(zhí)行所用的平均時間,通過它可以分析測試場景運行期間應(yīng)用系統(tǒng)的性能走向。

      (2) 每秒事務(wù)數(shù)分析(Transaction per Second)顯示在場景運行的每一秒中,每個事務(wù)通過、失敗和停止的數(shù)量,是考察系統(tǒng)性能的一個重要參數(shù),通過它可以確定系統(tǒng)在任何指定時刻的實際事務(wù)負載,也可以直接看出系統(tǒng)的性能變化趨勢。并且可以將其與平均事務(wù)響應(yīng)時間圖進行對比,以分析事務(wù)數(shù)對響應(yīng)時間的影響。

      (3) 點擊率(Hits per Second),即每秒點擊次數(shù),顯示了在場景運行過程中虛擬用戶每秒向Web服務(wù)器提交的HTTP請求數(shù),可依據(jù)點擊次數(shù)來評估虛擬用戶產(chǎn)生的負載量,還可將其與平均事務(wù)響應(yīng)時間圖進行比較,以查看點擊次數(shù)對事務(wù)性能產(chǎn)生的影響

      (4) 吞吐率(Throughput),顯示場景運行過程中服務(wù)器每秒的吞吐量。表示虛擬用戶在任何給定的某一秒上從服務(wù)器獲得的數(shù)據(jù)量。可以依據(jù)吞吐量來評估虛擬用戶產(chǎn)生的負載量,吞吐量的單位是字節(jié)。

      (5) Windows系統(tǒng)資源(Windows Resources),表示了服務(wù)端的各項監(jiān)控指標表現(xiàn)情況,圖3為被測系統(tǒng)的Windows系統(tǒng)資源監(jiān)控圖。

      除了上面介紹的分析指標外,根據(jù)不同的實際情況還需有選擇性的針對每秒HTTP響應(yīng)數(shù)、連接數(shù)、每秒服務(wù)器重試次數(shù)、場景運行期間服務(wù)器重試摘要等指標進行結(jié)果分析,這里不再一一撰述。

      4 結(jié)束語

      性能測試是一項找到軟件系統(tǒng)性能瓶頸“攻堅戰(zhàn)”中的重要過程,需要通過對系統(tǒng)層層深入的分析,才能對問題進行更加準確的定位。本文對基于B/S架構(gòu)軟件系統(tǒng)的性能測試提出了一套較為全面的性能測試方法論。通過測試用例設(shè)計、Virtual User腳本開發(fā)、測試場景運行、測試結(jié)果分析等一系列測試工序,發(fā)現(xiàn)軟件系統(tǒng)的性能瓶頸,同時找出引起性能下降的原因,為優(yōu)化系統(tǒng)提供重要依據(jù)。

      參考文獻:

      [1] 張大陸,偉力.基于WEB應(yīng)用系統(tǒng)的評測方法和技術(shù)[J].計算機工程,2003,29(4).

      [2] 中國軟件評測中心測試中心. 性能——軟件測試的重中之重[J],2003.

      [3] 劉群策.LoadRunner和軟件項目性能測試[M].北京:機械工業(yè)出版社,2008.

      [4] 姜昌華,朱敏.Web應(yīng)用程序壓力測試[J].計算機應(yīng)用,2003,23(10).

      [5] 李煜,苗放.LoadRunner在Web應(yīng)用程序性能測試中的應(yīng)用[J].軟件導(dǎo)刊,2007.

      [6] 劉艷會.LoadRunner使用手冊[A].軟件測試中心,2003-8-21.endprint

      猜你喜歡
      腳本事務(wù)工序
      “事物”與“事務(wù)”
      酒駕
      基于分布式事務(wù)的門架數(shù)據(jù)處理系統(tǒng)設(shè)計與實現(xiàn)
      120t轉(zhuǎn)爐降低工序能耗生產(chǎn)實踐
      昆鋼科技(2022年2期)2022-07-08 06:36:14
      安奇奇與小cool 龍(第二回)
      河湖事務(wù)
      大理石大板生產(chǎn)修補工序詳解(二)
      石材(2020年4期)2020-05-25 07:08:50
      土建工程中關(guān)鍵工序的技術(shù)質(zhì)量控制
      數(shù)據(jù)庫系統(tǒng)shell腳本應(yīng)用
      電子測試(2018年14期)2018-09-26 06:04:24
      快樂假期
      盘锦市| 新和县| 桐城市| 安阳市| 许昌市| 陆川县| 乃东县| 海淀区| 全州县| 蓝田县| 内江市| 拜城县| 钦州市| 综艺| 汽车| 海伦市| 杭锦旗| 霍林郭勒市| 二手房| 漯河市| 西林县| 威远县| 乌拉特前旗| 大竹县| 寻甸| 荆门市| 霍林郭勒市| 仙居县| 金塔县| 方城县| 洛南县| 普安县| 天长市| 曲阜市| 达州市| 大同县| 普兰店市| 江阴市| 长葛市| 孝感市| 丰城市|