国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

進行Web網站壓力測試教程詳解

開發 前端
Web服務處于分布式計算的核心位置,它們之間的交互通常很難測試。分布式開發、大型的開發者團隊以及對代碼日益組件化的期望都有可能使 Web服務的開發變得越來越容易隱藏錯誤。本文是一篇進行Web網站壓力測試教程。

Web網站壓力測試過程中的錯誤極難檢測出來。壓力測試是檢測這類代碼錯誤的一種有效方法,但是只有在壓力系統設計得比較有效的情況下 才能發揮作用。本文將讓您深入了解一下這種壓力系統的基本要求。

Web網站壓力測試教程

傳統的測試方法包括某種形式的簡單 單元測試 ,通常由開發人員執行。設計這些測試需要了解軟件的內部知識,并且這些測試幾乎總是針對產品的非常小的、特定的部分。這些類型的測試非常適合與其他代碼組件極少交互,甚至沒有交互的簡單 Web 服務。

功能驗證(Functional Verification)也 是一種測試過程,在這個過程中,對產品源代碼了解有限的設計者進行測試以確認產品或服務的核心功能。設計這種測試是為了證明這個核心功能符合某個規范。舉 個例子,我的在線拍賣顯示的是輸入的正確出價嗎? 我的保險經紀人系統找到***的報價了嗎?如果這些測試失敗,通常就意味著檢測到了產品的一個基本問題(這個問題通常是可以直接修復)。這種測試也是適合 簡單的 Web 服務,使您可以檢查服務是否能夠正確執行它的各個功能。

系統測試(System Test)通常是在功能驗 證階段完成,驗證了核心功能后進行。它傾向于把整個系統作為一個整體來查找問題 — 弄清 Web 服務作為系統的一部分怎樣運作,以及 Web 服務相互之間如何交互。由于系統測試是在開發生命周期快結束時才進行,所以通常不能給它分配足夠的時間來完成。又因為緊張的發行日程安排以及開發的各個重 要階段的后移,系統測試階段經常被忽略,并且一些通常都可以發現的、少見的錯誤都不能被檢測到。即使發現了這種錯誤,這時也來不及確定錯誤的原因并設法修 復它們了。因此,在查找代碼錯誤時,必需把系統測試應用設計得盡可能高效。系統測試通常由三部分組成,它們是:

性能(Performance):這涉及到確定相關的產品統計數據的過程。例如:每秒有多少條消息?一個服務可同時接受多少個用戶?

案例(Scenario):這是重新創建客戶所需的確切配置的過程。因此在案例中發現的任何問題都可以在客戶使用該產品之前被檢測出來。

壓力(或稱工作負載平衡):它 與另兩個部分不同,因為它被設計為通過應用很大的工作負載來使軟件超負荷運轉。如果壓力測試通過對產品保持高強度的使用(但不超過性能統計數字確定的限 制)能有效地執行,那么它就經常能夠發現許多隱蔽的錯誤,而這些錯誤用上面提到的任何其他技術都是發現不了的(這些錯誤也經常是最難修復的)。

從檢測代碼錯誤這方面來說,可以證明這三個系統測試組件中效率***的是 壓力測試 部分。但由于這個過程經常跟系統的其他要素或功能測試混淆在一起,所以這個過程涉及到的方法還沒有被正確著手處理或實現。
壓力下的錯誤

使用壓力測試,您有希望找到很多種用其他測試方法更難發現的錯誤。有兩種錯誤類型是:

內存泄漏(Memory leak): 一種極難檢測的現象。內存泄漏經常發生在已發行的產品中,原因很簡單,很難設計測試 用例來檢測它們。使用簡單的功能測試,幾乎發現不了內存泄漏問題,因為在產品完成之前測試沒對產品進行足夠多的使用。內存泄漏通常要求操作要重復非常多的 次數以使內存消耗達到能引起注意的程度。盡管與其它編程語言(如 C/C++)相比,Java 程序更難引入內存泄漏錯誤,但只要程序仍保持著對對象的引用,該對象仍有可能被實例化并且它占用的內存永遠不會被釋放。

并發與同步(Concurrency and Synchronization):壓力測試在查找并發性問題上非常出眾,這是因為在任何一個測試生命周期中,它都應用了許多不同的代碼路徑和定時條件。一般的規則是,壓力測試運行的時間越 長,涉及并應用的代碼路徑組合和定時條件就越多。當然,這也的確使得這些問題很難再現(錯誤可以在 5 分鐘或 5 天后發生)。死鎖、線程泄漏以及任何一般的同步問題通常只能在壓力測試階段被檢測出來。這些類型的問題很難通過執行單元測試來發現。開發人員不會一直考慮 他或她的代碼將與其他地方的代碼(在執行單元測試時這些代碼可能還沒寫出來)進行交互。

現有的壓力測試工具

有許多聲稱能夠對 產品進行壓力測試的可用工具目前正在開發中。被廣泛應用的是針對 Web 服務的那些工具。然而,這些工具中有許多只是簡單的 HTML/SOAP 生成器,它們模擬許多客戶機連接,并因此對 Web 服務器生成高負載(這對于查找 Web 服務器的問題很有用,但對于查找 Web 服務的問題就沒那么有用了)。這些工具對基本的壓力測試比較有用,但它們經常是僅僅擴展功能驗證階段來重復地執行相同的功能任務。如果足夠的時間和資源可 用,就可以通過創建定制構建的壓力測試系統來實現更有效的測試。由于壓力系統的設計者通常對要測試的產品和 Web 服務有更多的了解,所以他們將能夠確保壓力系統可以用于哪些具體的代碼區域。

設計壓力應用

設計試圖對 Web 服務進行壓力測試的壓力測試系統時,要讓它們以某種特定的方式運行代碼。這些風格超越了功能驗證,目的是要弄清楚被測試的 Web 服務是不是不僅能做我們認為它能做的事,而且在被施加了某些高強度壓力的情況下仍然繼續正常運行。壓力測試必須對 Web 服務應用四個基本條件。許多已建立的壓力系統應用了這些條件。有效的壓力測試系統將應用以下這些關鍵條件:

重復(Repetition): 或 許最明顯的且最容易理解的壓力條件就是測試的重復。換句話說,測試的重復就是一遍又一遍地執行某個操作或功能,比如重復調用一個 Web 服務。功能驗證測試可以用來被弄清楚一個操作能否正常執行。而壓力測試將確定一個操作能否正常執行,并且能否繼續在每次執行時都正常。這對于推斷一個產品 是否適用于某種生產情況至關重要。客戶通常會重復使用產品,因此壓力測試應該在客戶之前發現代碼錯誤。許多最簡單的壓力系統只實現這一個條件,但簡單地擴 展功能驗證測試來多次重復并不能構成一個有效的壓力測試。當與下面的一些原則結合起來使用時,重復就可以發現許多隱蔽的代碼錯誤。

并發(Concurrency):并 發是同時執行多個操作的行為。換句話說,就是在同一時間執行多個測試,例如在同一個服務器上同時調用許多 Web 服務。這個原則不一定適用于所有的產品(比如無狀態服務),但是多數軟件都具有某個并發行為或多線程行為元素,這一點只能通過執行多個代碼示例才能測出 來。功能測試或單元測試幾乎不會與任何并發設計結合。壓力系統必須超越功能測試,要同時遍歷多條代碼路徑。至于怎么做到這一點取決于具體的產品。例如,一 個 Web 服務壓力測試需要一次模擬多個客戶機。Web 服務(或者任何多線程代碼)通常會訪問多個線程實例間的一些共享數據。因額外方面的編程而增加的復雜性通常意味著代碼會具有許多因并發引起的錯誤。由于引 入并發性意味著一個線程中的代碼有可能被其他線程中的代碼中斷,所以錯誤只在一個指令集以特定的順序(例如以特定的定時條件)執行時才會被發現。把這個原 則與重復原則結合在一起,您可以應用許多代碼路徑 和 定時條件。

量級(Magnitude):壓力系統應該應用于產品的另一個條件考慮到了每個操作中的負載量。壓力測試可以重復執行一個操作,但是操作自身也要盡量給產品增加負擔。例如,一個Web服務允許客戶機輸入一條消息,您可以通過模擬輸入超長消息的客戶機來使這個單獨的操作進行高強度的使用。換句話說就是,您增加了這個操作的量級。這個量級 總是特定于應用的,但是可以通過查找產品的可被用戶計量和修改的值來確定它—例如,數據的大小、延遲的長度、資金數量的轉移、輸入速度以及輸入的變化等等。單獨的高強度操作自身可能發現不了代碼錯誤(或者僅能發現功能上的缺陷), 但與其他壓力原則結合在一起時,您將可以增加發現問題的機會。

隨機變化:***一點,任何壓力系統都多多 少少具有一些隨機性。如果您隨機使用前面的壓力原則中介紹的無數變化形式,您就能夠在每次測試運行時應用許多不同的代碼路徑。下面是幾個關于怎樣在測試生 命周期內改變測試的示例。使用重復時,在重新啟動或重新連接服務之前,您可以改變重復操作間的時間間隔、重復的次數,或者也可以改變被重復的 Web 服務的順序。使用并發,您可以改變一起執行的 Web 服務、同一時間運行的 Web 服務數目,或者也可以改變關于是運行許多不同的服務還是運行許多同樣的實例的決定。量級或許是最容易更改的 — 每次重復測試時都可以更改應用程序中出現的變量(例如,發送各種大小的消息或數字輸入值)。如果測試完全隨機的話,因為很難一致地重現壓力下的錯誤,所以 一些系統使用基于一個固定隨機種子的隨機變化。這樣,用同一個種子,重現錯誤的機會就會更大。

一個壓力測試通常會結合上述的所 有原則,并且在允許的范圍內盡可能長時間地運行。測試被允許的執行時間越長,就可以遍歷越多的代碼路徑,并且發現的錯誤也越多。當然,一旦找到錯誤就必須 診斷并修復它。由于一個代碼錯誤可以在壓力測試運行多日以后自己顯示出來,所以系統必須保證當出現錯誤時所有可用的調試信息都被生成 — 否則可能就必須花費同樣多的時間來重現這個錯誤。

Web網站壓力測試教程結束語

測試是軟件開發過程中至關重要 的部分,并且一個重要的、經常被曲解或忽略的部分是壓力測試。遵循上面詳細說明的原則,您就可以設計并實現有效的壓力測試系統,用來查找一些與您的代碼相 關的、比較隱蔽的問題。無論是利用預先寫好的工具,還是創建一個完全專用的壓力系統,壓力測試都是用于查找 Web 服務(或其他任何程序)問題的本質方法,并能最終提高您的軟件產品質量。

【編輯推薦】

  1. JSP Web開發技術的優勢與技術難點分析
  2. 安裝和配置Web服務器和JSP引擎
  3. Web開發須知JSP技術
  4. JSP變量在規范中稱作范圍變量
  5. 詳解JSP技術的方法
責任編輯:彭凡 來源: 51CTO論壇
相關推薦

2017-10-11 17:25:03

webwebbenchlnmp

2016-09-14 11:09:06

Web工具運維

2011-08-30 11:09:26

MySQL ProxyLua

2023-03-30 16:50:18

2009-08-27 14:09:09

布線測試跳線測試串擾測試

2011-08-03 11:17:50

iOS程序 測試

2023-07-17 13:57:05

2023-03-17 16:32:51

測試軟件開發

2023-06-05 07:49:13

?左移測試敏捷

2021-01-05 08:00:00

Windows 10工具GPU

2019-07-24 09:00:00

New Relic性能工程壓力測試

2020-07-07 13:00:00

Linux壓力測試

2023-06-06 16:10:11

2011-07-28 09:49:50

IOS IOS 4 UI

2023-06-27 17:50:22

2011-07-18 13:11:53

2015-07-27 18:19:22

Linuxstress參數

2009-01-06 18:57:38

2012-06-25 14:30:48

Web

2019-03-15 09:17:22

Web測試工具
點贊
收藏

51CTO技術棧公眾號

自拍偷拍欧美| 你懂的视频在线| 亚洲日本va中文字幕| 午夜久久久久久久久| 欧美日韩另类丝袜其他| 日韩av影片| 日韩欧美在线网站| av免费在线免费观看| 亚洲日本va在线观看| 99sesese| 激情综合一区二区三区| 中文字幕av一区二区| **国产精品| 国产精品网红福利| 99综合在线| 超碰在线免费观看97| 国产欧美久久久精品影院| 1024亚洲| 日韩午夜电影在线观看| 亚洲精品三区| eeuss一区二区三区| 国产成a人亚洲精品| http://嫩草影院| 日韩精品中文字幕在线不卡尤物 | 日韩有码在线观看| 日韩国产一区二区| 综合久久国产| 亚洲一区二区三区四区中文字幕| 日韩欧美中文免费| 成人短视频在线| 免费在线成人av| 99re8这里有精品热视频免费| 久久久免费精品视频| 日韩专区精品| 国产专区在线视频| 亚洲欧美一区二区三区久本道91| av中文字幕在线观看| 中国丰满人妻videoshd| 性欧美长视频| 亚洲熟妇无码一区二区三区| 欧美日韩在线免费| 国产激情欧美| 麻豆蜜桃91| 一区二区欧美精品| 欧美videos粗暴| 精品日本一区二区| 亚洲精品第一国产综合野| 深夜成人福利| 久久这里精品国产99丫e6| 日韩美女精品在线| 成人啊v在线| 亚洲小视频在线| 亚洲精品一级二级三级| 亚洲天堂电影网| 日韩高清免费在线| 国产日产一区| 国产91色在线|亚洲| 粉嫩欧美一区二区三区高清影视| 中日韩免费毛片| 欧美成人精品二区三区99精品| 国产精品久久久久久妇女| 欧洲av一区| 日韩欧美亚洲国产一区| 97国产在线| 中文一区二区在线观看| 成人亚洲精品| 亚洲国产精品女人| 天天综合网天天综合色| 成人开心激情| 久久久久久久久久久一区| 福利视频一区二区| 国产精品久久| heyzo高清国产精品| 久久久久久久久中文字幕| 蜜桃精品视频在线| av资源网站在线观看| 国产精品电影网站| 国产欧美精品一区二区色综合| 欧美日韩大片| 黄色免费高清视频| 免费不卡亚洲欧美| 精品日韩在线一区| 亚洲一区久久| 91极品在线| 一卡二卡三卡视频| 成人免费淫片| 综合久久国产| 欧美成人免费观看| 精品国产乱码久久久久久牛牛| 色噜噜狠狠色综合欧洲selulu| 亚洲已满18点击进入久久| 麻豆成人91精品二区三区| 色成人综合网| 国产二级片在线| 精品一区日韩成人| 亚洲韩国欧洲国产日产av| 亚洲www永久成人夜色| 欧美日韩一区二区三区在线观看免 | heyzo在线观看| 51午夜精品视频| 天堂av在线网| 一区二区三区四区免费观看| 九九综合九九综合| 99久久99九九99九九九| 国产1区2区3区中文字幕| 亚洲精品一区中文| 国产麻豆视频一区| 中文字幕在线视频久| www.国产在线播放| 亚洲乱码一区二区三区三上悠亚| 精品91自产拍在线观看一区| 日韩中文欧美在线| 国产视频二区| 69久久夜色精品国产7777| 夜夜精品浪潮av一区二区三区| 国内精品国产成人国产三级粉色| 国产一级粉嫩xxxx| 国产99久久久精品| 国产探花在线精品| 欧美hdxxxx| 国产一级特黄a大片99| 欧美**vk| 欧美性猛交7777777| 国产视频综合在线| 4438全国亚洲精品在线观看视频| 欧美黑人xxxⅹ高潮交| 激情视频在线观看一区二区三区| 亚洲一区二区在线观看视频| 四季av一区二区凹凸精品| 国产精品影院在线| 欧美国产美女| 国产66精品| 日韩第二十一页| 自拍视频在线看| 老司机在线永久免费观看| 秋霞福利视频| 1024在线视频| 特黄特色特刺激视频免费播放| 午夜免费一区二区| 黄色录像特级片| 欧美xxxx吸乳| 亚洲视频一区在线| jizzjizzji欧美| 亚洲kkk444kkk在线观看| 国产超碰在线| 日本高清视频在线观看| 肥女人的一级毛片| 国产精品视频福利| 欧美这里有精品| 亚洲综合丁香婷婷六月香| 国产欧美精品日韩区二区麻豆天美| 不卡视频一二三四| 久久精品国产精品亚洲精品| 亚洲一区二区毛片| 99视频精品全部免费在线视频| 蜜桃免费网站一区二区三区| 亚洲国产97在线精品一区| 日本aⅴ中文| 蜜桃传媒视频麻豆一区| 久久99视频精品| 欧美日韩一区二区三区四区五区| 99久久伊人精品影院| 日韩视频在线免费观看| 国产丝袜不卡| 国内在线观看一区二区三区| 色哟哟一区二区| 欧美一级在线观看| www精品久久| 成人短视频app| 日日摸夜夜添夜夜添国产精品| 亚洲日本在线视频观看| 欧美精品一区二区三区蜜桃视频| 五月天激情视频在线观看| 成人黄色免费观看| 亚洲h色精品| 亚洲综合色在线| 91福利视频导航| 在线成人h网| 美女久久一区| 欧美国产日韩精品免费观看| 国产精品久久久久久久久晋中| 一区在线观看免费| 久久精品人人爽| 99久久无色码| 国产无遮挡又黄又爽免费软件| 四虎影视精品成人| 懂色av一区二区| 国产午夜亚洲精品理论片色戒| 亚洲欧美制服中文字幕| 国产免费av在线| 好吊日精品视频| 老司机午夜精品99久久| 国产伦理精品不卡| 日韩欧美123| 日本在线精品视频| 中文字幕无码精品亚洲资源网久久| 狠狠色伊人亚洲综合网站l| 国产91精品一区二区麻豆网站| 亚洲一区二区在线播放相泽| 欧美综合在线观看|