版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
性能測試調(diào)研報告1概述性能測試是通過自動化的測試工具模擬多個正常、峰值以及異常負(fù)載條件來對系統(tǒng)的各項性能指標(biāo)進(jìn)行測試。負(fù)載測試和壓力測試都屬于性能測試,兩者能夠結(jié)合進(jìn)行。通過負(fù)載測試,擬定在多個工作負(fù)載下系統(tǒng)的性能,目的是測試當(dāng)負(fù)載逐步增加時,系統(tǒng)各項性能指標(biāo)的變化狀況。壓力測試是通過擬定一種系統(tǒng)的瓶頸或者不能接受的性能點,來獲得系統(tǒng)能提供的最大服務(wù)級別的測試。性能測試在軟件的質(zhì)量確保中起著重要的作用,它涉及的測試內(nèi)容豐富多樣。中國軟件評測中心將性能測試概括為三個方面:應(yīng)用在客戶端性能的測試、應(yīng)用在網(wǎng)絡(luò)上性能的測試和應(yīng)用在服務(wù)器端性能的測試。普通狀況下,三方面有效、合理的結(jié)合,能夠達(dá)成對系統(tǒng)性能全方面的分析和瓶頸的預(yù)測。1.1應(yīng)用在客戶端上性能的測試應(yīng)用在客戶端性能測試的目的是考察客戶端應(yīng)用的性能,測試的入口是客戶端。它重要涉及并發(fā)性能測試、疲勞強(qiáng)度測試、大數(shù)據(jù)量測試和速度測試等,其中并發(fā)性能測試是重點。并發(fā)性能測試是重點并發(fā)性能測試的過程是一種負(fù)載測試和壓力測試的過程,即逐步增加負(fù)載,直到系統(tǒng)的瓶頸或者不能接受的性能點,通過綜合分析交易執(zhí)行指標(biāo)和資源監(jiān)控指標(biāo)來擬定系統(tǒng)并發(fā)性能的過程。負(fù)載測試(LoadTesting)是擬定在多個工作負(fù)載下系統(tǒng)的性能,目的是測試當(dāng)負(fù)載逐步增加時,系統(tǒng)構(gòu)成部分的對應(yīng)輸出項,例如通過量、響應(yīng)時間、CPU負(fù)載、內(nèi)存使用等來決定系統(tǒng)的性能。負(fù)載測試是一種分析軟件應(yīng)用程序和支撐架構(gòu)、模擬真實環(huán)境的使用,從而來擬定能夠接受的性能過程。壓力測試(StressTesting)是通過擬定一種系統(tǒng)的瓶頸或者不能接受的性能點,來獲得系統(tǒng)能提供的最大服務(wù)級別的測試。并發(fā)性能測試的目的重要體現(xiàn)在三個方面:以真實的業(yè)務(wù)為根據(jù),選擇有代表性的、核心的業(yè)務(wù)操作設(shè)計測試案例,以評價系統(tǒng)的現(xiàn)在性能;當(dāng)擴(kuò)展應(yīng)用程序的功效或者新的應(yīng)用程序?qū)⒁徊际饡r,負(fù)載測試會協(xié)助擬定系統(tǒng)與否還能夠解決盼望的顧客負(fù)載,以預(yù)測系統(tǒng)的將來性能;通過模擬成百上千個顧客,重復(fù)執(zhí)行和運行測試,能夠確認(rèn)性能瓶頸并優(yōu)化和調(diào)節(jié)應(yīng)用,目的在于尋找到瓶頸問題。測試的基本方略是自動負(fù)載測試,通過在一臺或幾臺PC機(jī)上模擬成百或上千的虛擬顧客同時執(zhí)行業(yè)務(wù)的情景,對應(yīng)用程序進(jìn)行測試,同時統(tǒng)計下每一事務(wù)解決的時間、中間件服務(wù)器峰值數(shù)據(jù)、數(shù)據(jù)庫狀態(tài)等。通過可重復(fù)的、真實的測試能夠徹底地度量應(yīng)用的可擴(kuò)展性和性能,擬定問題所在以及優(yōu)化系統(tǒng)性能。預(yù)先懂得了系統(tǒng)的承受力,就為最后顧客規(guī)劃整個運行環(huán)境的配備提供了有力的根據(jù)。并發(fā)性能測試前的準(zhǔn)備工作測試環(huán)境:配備測試環(huán)境是測試實施的一種重要階段,測試環(huán)境的適合與否會嚴(yán)重影響測試成果的真實性和對的性。測試環(huán)境涉及硬件環(huán)境和軟件環(huán)境,硬件環(huán)境指測試必需的服務(wù)器、客戶端、網(wǎng)絡(luò)連接設(shè)備以及打印機(jī)/掃描儀等輔助硬件設(shè)備所構(gòu)成的環(huán)境;軟件環(huán)境指被測軟件運行時的操作系統(tǒng)、數(shù)據(jù)庫及其它應(yīng)用軟件構(gòu)成的環(huán)境。一種充足準(zhǔn)備好的測試環(huán)境有三個優(yōu)點:一種穩(wěn)定、可重復(fù)的測試環(huán)境,能夠確保測試成果的對的;確保達(dá)成測試執(zhí)行的技術(shù)需求;確保得到對的的、可重復(fù)的以及易理解的測試成果。測試工具:并發(fā)性能測試是在客戶端執(zhí)行的黑盒測試,普通不采用手工方式,而是運用工具采用自動化方式進(jìn)行。現(xiàn)在,成熟的并發(fā)性能測試工含有諸多,選擇的根據(jù)重要是測試需求和性能價格比。出名的并發(fā)性能測試工含有QALoad、LoadRunner、BenchmarkFactory和Webstress等。這些測試工具都是自動化負(fù)載測試工具,通過可重復(fù)的、真實的測試,能夠徹底地度量應(yīng)用的可擴(kuò)展性和性能,能夠在整個開發(fā)生命周期、跨越多個平臺、自動執(zhí)行測試任務(wù),能夠模擬成百上千的顧客并發(fā)執(zhí)行核心業(yè)務(wù)而完畢對應(yīng)用程序的測試。測試數(shù)據(jù):在初始的測試環(huán)境中需要輸入某些適宜的測試數(shù)據(jù),目的是識別數(shù)據(jù)狀態(tài)并且驗證用于測試的測試案例,在正式的測試開始以前對測試案例進(jìn)行調(diào)試,將正式測試開始時的錯誤降到最低。在測試進(jìn)行到核心過程環(huán)節(jié)時,非常有必要進(jìn)行數(shù)據(jù)狀態(tài)的備份。制造初始數(shù)據(jù)意味著將適宜的數(shù)據(jù)存儲下來,需要的時候恢復(fù)它,初始數(shù)據(jù)提供了一種基線用來評定測試執(zhí)行的成果。在測試正式執(zhí)行時,還需要準(zhǔn)備業(yè)務(wù)測試數(shù)據(jù),例如測試并發(fā)查詢業(yè)務(wù),那么規(guī)定對應(yīng)的數(shù)據(jù)庫和表中有相稱的數(shù)據(jù)量以及數(shù)據(jù)的種類應(yīng)能覆蓋全部業(yè)務(wù)。模擬真實環(huán)境測試,有些軟件,特別是面對大眾的商品化軟件,在測試時經(jīng)常需要考察在真實環(huán)境中的體現(xiàn)。如測試殺毒軟件的掃描速度時,硬盤上布置的不同類型文獻(xiàn)的比例要盡量靠近真實環(huán)境,這樣測試出來的數(shù)據(jù)才有實際意義。并發(fā)性能測試的種類與指標(biāo)并發(fā)性能測試的種類取決于并發(fā)性能測試工具監(jiān)控的對象,以QALoad自動化負(fù)載測試工具為例。軟件針對多個測試目的提供了DB2、DCOM、ODBC、ORACLE、NETLoad、Corba、QARun、SAP、SQLServer、Sybase、Telnet、TUXEDO、UNIFACE、WinSock、WWW、JavaScript等不同的監(jiān)控對象,支持Windows和UNIX測試環(huán)境。最核心的仍然是測試過程中對監(jiān)控對象的靈活應(yīng)用,例如現(xiàn)在三層構(gòu)造的運行模式廣泛使用,對中間件的并發(fā)性能測試作為問題被提到議事日程上來,許多系統(tǒng)都采用了國產(chǎn)中間件,選擇JavaScript監(jiān)控對象,手工編寫腳本,能夠達(dá)成測試目的。采用自動化負(fù)載測試工具執(zhí)行的并發(fā)性能測試,基本遵照的測試過程有:測試需求與測試內(nèi)容,測試案例制訂,測試環(huán)境準(zhǔn)備,測試腳本錄制、編寫與調(diào)試,腳本分派、回放配備與加載方略,測試執(zhí)行跟蹤,成果分析與定位問題所在,測試報告與測試評定。并發(fā)性能測試監(jiān)控的對象不同,測試的重要指標(biāo)也不相似,重要的測試指標(biāo)涉及交易解決性能指標(biāo)和UNIX資源監(jiān)控。其中,交易解決性能指標(biāo)涉及交易成果、每分鐘交易數(shù)、交易響應(yīng)時間(Min:最小服務(wù)器響應(yīng)時間;Mean:平均服務(wù)器響應(yīng)時間;Max:最大服務(wù)器響應(yīng)時間;StdDev:事務(wù)解決服務(wù)器響應(yīng)的偏差,值越大,偏差越大;Median:中值響應(yīng)時間;90%:90%事務(wù)解決的服務(wù)器響應(yīng)時間)、虛擬并發(fā)顧客數(shù)。疲勞強(qiáng)度與大數(shù)據(jù)量測試疲勞測試是采用系統(tǒng)穩(wěn)定運行狀況下能夠支持的最大并發(fā)顧客數(shù),持續(xù)執(zhí)行一段時間業(yè)務(wù),通過綜合分析交易執(zhí)行指標(biāo)和資源監(jiān)控指標(biāo)來擬定系統(tǒng)解決最大工作量強(qiáng)度性能的過程。疲勞強(qiáng)度測試能夠采用工具自動化的方式進(jìn)行測試,也能夠手工編寫程序測試,其中后者占的比例較大。普通狀況下以服務(wù)器能夠正常穩(wěn)定響應(yīng)請求的最大并發(fā)顧客數(shù)進(jìn)行一定時間的疲勞測試,獲取交易執(zhí)行指標(biāo)數(shù)據(jù)和系統(tǒng)資源監(jiān)控數(shù)據(jù)。如出現(xiàn)錯誤造成測試不能成功執(zhí)行,則及時調(diào)節(jié)測試指標(biāo),例如減少顧客數(shù)、縮短測試周期等。尚有一種狀況的疲勞測試是對現(xiàn)在系統(tǒng)性能的評定,用系統(tǒng)正常業(yè)務(wù)狀況下并發(fā)顧客數(shù)為基礎(chǔ),進(jìn)行一定時間的疲勞測試。大數(shù)據(jù)量測試能夠分為兩種類型:針對某些系統(tǒng)存儲、傳輸、統(tǒng)計、查詢等業(yè)務(wù)進(jìn)行大數(shù)據(jù)量的獨立數(shù)據(jù)量測試;與壓力性能測試、負(fù)載性能測試、疲勞性能測試相結(jié)合的綜合數(shù)據(jù)量測試方案。大數(shù)據(jù)量測試的核心是測試數(shù)據(jù)的準(zhǔn)備,能夠依靠工具準(zhǔn)備測試數(shù)據(jù)。速度測試現(xiàn)在重要是針對核心有速度規(guī)定的業(yè)務(wù)進(jìn)行手工測速度,能夠在多次測試的基礎(chǔ)上求平均值,能夠和工具測得的響應(yīng)時間等指標(biāo)做對比分析。1.2應(yīng)用在網(wǎng)絡(luò)上性能的測試應(yīng)用在網(wǎng)絡(luò)上性能的測試重點是運用成熟先進(jìn)的自動化技術(shù)進(jìn)行網(wǎng)絡(luò)應(yīng)用性能監(jiān)控、網(wǎng)絡(luò)應(yīng)用性能分析和網(wǎng)絡(luò)預(yù)測。網(wǎng)絡(luò)應(yīng)用性能分析網(wǎng)絡(luò)應(yīng)用性能分析的目的是精確展示網(wǎng)絡(luò)帶寬、延遲、負(fù)載和TCP端口的變化是如何影響顧客的響應(yīng)時間的。運用網(wǎng)絡(luò)應(yīng)用性能分析工具,例如ApplicationExpert,能夠發(fā)現(xiàn)應(yīng)用的瓶頸,我們可知應(yīng)用在網(wǎng)絡(luò)上運行時在每個階段發(fā)生的應(yīng)用行為,在應(yīng)用線程級分析應(yīng)用的問題。能夠解決多個問題:客戶端與否對數(shù)據(jù)庫服務(wù)器運行了不必要的請求?當(dāng)服務(wù)器從客戶端接受了一種查詢,應(yīng)用服務(wù)器與否耗費了不可接受的時間聯(lián)系數(shù)據(jù)庫服務(wù)器?在投產(chǎn)前預(yù)測應(yīng)用的響應(yīng)時間;運用ApplicationExpert調(diào)節(jié)應(yīng)用在廣域網(wǎng)上的性能;ApplicationExpert能夠讓你快速、容易地仿真應(yīng)用性能,根據(jù)最后顧客在不同網(wǎng)絡(luò)配備環(huán)境下的響應(yīng)時間,顧客能夠根據(jù)自己的條件決定應(yīng)用投產(chǎn)的網(wǎng)絡(luò)環(huán)境。網(wǎng)絡(luò)應(yīng)用性能監(jiān)控在系統(tǒng)試運行之后,需要及時精確地理解網(wǎng)絡(luò)上正在發(fā)生什么事情;什么應(yīng)用在運行,如何運行;多少PC正在訪問LAN或WAN;哪些應(yīng)用程序造成系統(tǒng)瓶頸或資源競爭,這時網(wǎng)絡(luò)應(yīng)用性能監(jiān)控以及網(wǎng)絡(luò)資源管理對系統(tǒng)的正常穩(wěn)定運行是非常核心的。運用網(wǎng)絡(luò)應(yīng)用性能監(jiān)控工具,能夠達(dá)成事半功倍的效果,在這方面我們能夠提供的工具是NetworkVantage。通俗地講,它重要用來分析核心應(yīng)用程序的性能,定位問題的本源是在客戶端、服務(wù)器、應(yīng)用程序還是網(wǎng)絡(luò)。在大多數(shù)狀況下顧客較關(guān)心的問題尚有哪些應(yīng)用程序占用大量帶寬,哪些顧客產(chǎn)生了最大的網(wǎng)絡(luò)流量,這個工具同樣能滿足規(guī)定。網(wǎng)絡(luò)預(yù)測考慮到系統(tǒng)將來發(fā)展的擴(kuò)展性,預(yù)測網(wǎng)絡(luò)流量的變化、網(wǎng)絡(luò)構(gòu)造的變化對顧客系統(tǒng)的影響非常重要。根據(jù)規(guī)劃數(shù)據(jù)進(jìn)行預(yù)測并及時提供網(wǎng)絡(luò)性能預(yù)測數(shù)據(jù)。我們運用網(wǎng)絡(luò)預(yù)測分析容量規(guī)劃工具PREDICTOR能夠作到:設(shè)立服務(wù)水平、完畢日網(wǎng)絡(luò)容量規(guī)劃、離線測試網(wǎng)絡(luò)、網(wǎng)絡(luò)失效和容量極限分析、完畢日常故障診療、預(yù)測網(wǎng)絡(luò)設(shè)備遷移和網(wǎng)絡(luò)設(shè)備升級對整個網(wǎng)絡(luò)的影響。從網(wǎng)絡(luò)管理軟件獲取網(wǎng)絡(luò)拓?fù)錁?gòu)造、從現(xiàn)有的流量監(jiān)控軟件獲取流量信息(若沒有這類軟件可人工生成流量數(shù)據(jù)),這樣能夠得到現(xiàn)有網(wǎng)絡(luò)的基本構(gòu)造。在基本構(gòu)造的基礎(chǔ)上,可根據(jù)網(wǎng)絡(luò)構(gòu)造的變化、網(wǎng)絡(luò)流量的變化生成報告和圖表,闡明這些變化是如何影響網(wǎng)絡(luò)性能的。PREDICTOR提供以下信息:根據(jù)預(yù)測的成果協(xié)助顧客及時升級網(wǎng)絡(luò),避免因核心設(shè)備超出運用閥值造成系統(tǒng)性能下降;哪個網(wǎng)絡(luò)設(shè)備需要升級,這樣可減少網(wǎng)絡(luò)延遲、避免網(wǎng)絡(luò)瓶頸;根據(jù)預(yù)測的成果避免不必要的網(wǎng)絡(luò)升級。1.3應(yīng)用在服務(wù)器上性能的測試對于應(yīng)用在服務(wù)器上性能的測試,能夠采用工具監(jiān)控,也能夠使用系統(tǒng)本身的監(jiān)控命令,例如Tuxedo中能夠使用Top命令監(jiān)控資源使用狀況。實施測試的目的是實現(xiàn)服務(wù)器設(shè)備、服務(wù)器操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)、應(yīng)用在服務(wù)器上性能的全方面監(jiān)控,測試原理以下。UNIX資源監(jiān)控指標(biāo)和描述監(jiān)控指標(biāo)描述平均負(fù)載系統(tǒng)正常狀態(tài)下,最后60秒同時進(jìn)程的平均個數(shù)沖突率在以太網(wǎng)上監(jiān)測到的每秒沖突數(shù)進(jìn)程/線程交換率進(jìn)程和線程之間每秒交換次數(shù)CPU運用率CPU占用率(%)磁盤交換率磁盤交換速率接受包錯誤率接受以太網(wǎng)數(shù)據(jù)包時每秒錯誤數(shù)包輸入率每秒輸入的以太網(wǎng)數(shù)據(jù)包數(shù)目中斷速率CPU每秒解決的中斷數(shù)輸出包錯誤率發(fā)送以太網(wǎng)數(shù)據(jù)包時每秒錯誤數(shù)包輸出率每秒輸出的以太網(wǎng)數(shù)據(jù)包數(shù)目讀入內(nèi)存頁速率物理內(nèi)存中每秒讀入內(nèi)存頁的數(shù)目寫出內(nèi)存頁速率每秒從物理內(nèi)存中寫到頁文獻(xiàn)中的內(nèi)存頁數(shù)目或者從物理內(nèi)存中刪掉的內(nèi)存頁數(shù)目內(nèi)存頁交換速率每秒寫入內(nèi)存頁和從物理內(nèi)存中讀出頁的個數(shù)進(jìn)程入交換率交換區(qū)輸入的進(jìn)程數(shù)目進(jìn)程出交換率交換區(qū)輸出的進(jìn)程數(shù)目系統(tǒng)CPU運用率系統(tǒng)的CPU占用率(%)顧客CPU運用率顧客模式下的CPU占用率(%)磁盤阻塞磁盤每秒阻塞的字節(jié)數(shù)2為什么進(jìn)行性能測試?目的是驗證軟件系統(tǒng)與否能夠達(dá)成顧客提出的性能指標(biāo),同時發(fā)現(xiàn)軟件系統(tǒng)中存在的性能瓶頸,優(yōu)化軟件,最后起到優(yōu)化系統(tǒng)的目的。2.1性能測試的目的(1).評定系統(tǒng)的能力:測試中得到的負(fù)荷和響應(yīng)時間數(shù)據(jù)能夠被用于驗證所計劃的模型的能力,并協(xié)助作出決策。(2).識別體系中的弱點:受控的負(fù)荷能夠被增加到一種極端的水平,并突破它,從而修復(fù)體系的瓶頸或單薄的地方。(3).系統(tǒng)調(diào)優(yōu):重復(fù)運行測試,驗證調(diào)節(jié)系統(tǒng)的活動得到了預(yù)期的成果,從而改善性能。(4).檢測軟件中的問題:長時間的測試執(zhí)行可造成程序發(fā)生由于內(nèi)存泄露引發(fā)的失敗,揭示程序中的隱含的問題或沖突。(5).驗證穩(wěn)定性(resilience)可靠性(reliability):在一種生產(chǎn)負(fù)荷下執(zhí)行測試一定的時間是評定系統(tǒng)穩(wěn)定性和可靠性與否滿足規(guī)定的唯一辦法。2.2性能測試的類型性能測試類型涉及負(fù)載測試,強(qiáng)度測試,容量測試等負(fù)載測試:Loadtesting(負(fù)載測試),通過測試系統(tǒng)在資源超負(fù)荷狀況下的體現(xiàn),以發(fā)現(xiàn)設(shè)計上的錯誤或驗證系統(tǒng)的負(fù)載能力。在這種測試中,將使測試對象承當(dāng)不同的工作量,以評測和評定測試對象在不同工作量條件下的性能行為,以及持續(xù)正常運行的能力。負(fù)載測試的目的是擬定并確保系統(tǒng)在超出最大預(yù)期工作量的狀況下仍能正常運行。另外,負(fù)載測試還要評定性能特性,例如,響應(yīng)時間、事務(wù)解決速率和其它與時間有關(guān)的方面。強(qiáng)度測試:強(qiáng)度測試檢查程序?qū)Ξ惓顩r的抵抗能力,是檢查系統(tǒng)在極限狀態(tài)下運行的時候性能下降的幅度與否在允許的范疇內(nèi)。強(qiáng)度測試總是迫使系統(tǒng)在異常的資源配備下運行。例如,①當(dāng)中斷的正常頻率為每秒一至兩個時,運行每秒產(chǎn)生十個中斷的測試用例;②定量地增加數(shù)據(jù)輸入率,檢查輸入子功效的反映能力;③運行需要最大存儲空間(或其它資源)的測試用例;④運行可能造成虛存操作系統(tǒng)崩潰或磁盤數(shù)據(jù)激烈抖動的測試用例,等等。容量測試:通過性能測試,如果找到了系統(tǒng)的極限或苛刻的環(huán)境中系統(tǒng)的性能體現(xiàn),在一定的程度上,就完畢了負(fù)載測試和容量測試。容量還能夠看作系統(tǒng)性能指標(biāo)中一種特定環(huán)境下的一種特定性能指標(biāo),即設(shè)定的界限或極限值。容量測試的目的是通過測試預(yù)先分析出反映軟件系統(tǒng)應(yīng)用特性的某項指標(biāo)的極限值(如最大并發(fā)顧客數(shù)、數(shù)據(jù)庫統(tǒng)計數(shù)等),系統(tǒng)在其極限狀態(tài)下沒有出現(xiàn)任何軟件故障或還能保持重要功效正常運行。容量測試還將擬定測試對象在給定時間內(nèi)能夠持續(xù)解決的最大負(fù)載或工作量。軟件容量的測試能讓軟件開發(fā)商或顧客理解該軟件系統(tǒng)的承載能力或提供服務(wù)的能力,如某個電子商務(wù)網(wǎng)站所能承受的、同時進(jìn)行交易或結(jié)算的在線顧客數(shù)。懂得了系統(tǒng)的實際容量,如是不能滿足設(shè)計規(guī)定,就應(yīng)當(dāng)謀求新的技術(shù)解決方案,以提高系統(tǒng)的容量。有了對軟件負(fù)載的精確預(yù)測,不僅能對軟件系統(tǒng)在實際使用中的性能狀況充滿信心,同時也能夠協(xié)助顧客經(jīng)濟(jì)地規(guī)劃應(yīng)用系統(tǒng),優(yōu)化系統(tǒng)的布署。觀察指標(biāo):性能測試重要是通過自動化的測試工具模擬多個正常、峰值以及異常負(fù)載條件來對系統(tǒng)的各項性能指標(biāo)進(jìn)行測試。負(fù)載測試和壓力測試都屬于性能測試,兩者能夠結(jié)合進(jìn)行。通過負(fù)載測試,擬定在多個工作負(fù)載下系統(tǒng)的性能,目的是測試當(dāng)負(fù)載逐步增加時,系統(tǒng)各項性能指標(biāo)的變化狀況。壓力測試是通過擬定一種系統(tǒng)的瓶頸或者不能接受的性能點,來獲得系統(tǒng)能提供的最大服務(wù)級別的測試。在實際中作中我們經(jīng)常會對兩種類型軟件進(jìn)行測試:bs和cs,這兩方面的性能指標(biāo)普通需要哪些內(nèi)容呢?BS構(gòu)造程序普通會關(guān)注的通用指標(biāo)以下(簡):Web服務(wù)器指標(biāo):*AvgRps:平均每秒鐘響應(yīng)次數(shù)=總請求時間/秒數(shù);*Avgtimetolastbyteperterstion(mstes):平均每秒業(yè)務(wù)角本的迭代次數(shù),有人會把這兩者混淆;*SuccessfulRounds:成功的請求;*FailedRounds:失敗的請求;*SuccessfulHits:成功的點擊次數(shù);*FailedHits:失敗的點擊次數(shù);*HitsPerSecond:每秒點擊次數(shù);*SuccessfulHitsPerSecond:每秒成功的點擊次數(shù);*FailedHitsPerSecond:每秒失敗的點擊次數(shù);*AttemptedConnections:嘗試鏈接數(shù);CS構(gòu)造程序,由于普通軟件后臺普通為數(shù)據(jù)庫,因此我們更重視數(shù)據(jù)庫的測試指標(biāo):*User0Connections:顧客連接數(shù),也就是數(shù)據(jù)庫的連接數(shù)量;*Numberofdeadlocks:數(shù)據(jù)庫死鎖;*ButterCachehit:數(shù)據(jù)庫Cache的命中狀況固然,在實際中我們還會察看多顧客測試狀況下的內(nèi)存,CPU,系統(tǒng)資源調(diào)用狀況。這些指標(biāo)其實是引申出來性能測試中的一種:競爭測試。什么是競爭測試,軟件競爭使用多個資源(數(shù)據(jù)紀(jì)錄,內(nèi)存等),看他與其它有關(guān)系統(tǒng)對資源的爭奪能力。我們懂得軟件架構(gòu)在實際測試中制約著測試方略和工具的選擇。如何選擇性能測試方略是我們在實際工作中需要理解的。普通軟件能夠按照系統(tǒng)架構(gòu)分成幾個類型:c/sclient/Server客戶端/服務(wù)器架構(gòu)基于客戶端/服務(wù)器的三層架構(gòu)基于客戶端/服務(wù)器的分布式架構(gòu)b/s基于瀏覽器/Web服務(wù)器的三層架構(gòu)基于中間件應(yīng)用服務(wù)器的三層架構(gòu)基于Web服務(wù)器和中間件的多層架構(gòu)3性能測試的環(huán)節(jié)在每種不同的系統(tǒng)架構(gòu)的實施中,開發(fā)人員可能選擇不同的實現(xiàn)方式,造成實際狀況紛繁復(fù)雜。我們不可能對每種技術(shù)都具體解說,這里只是介紹一種辦法提供應(yīng)你如何選擇測試方略,從而協(xié)助分析軟件不同部分的性能指標(biāo),進(jìn)而分析出整體架構(gòu)的性能指標(biāo)和性能瓶頸。由于工程和項目的不同,所選用的度量,評定辦法也有不同之處。但是仍然有某些通用的環(huán)節(jié)協(xié)助我們完畢一種性能測試項目。環(huán)節(jié)以下(1).制訂目的和分析系統(tǒng)(2).選擇測試度量的辦法(3).學(xué)習(xí)的有關(guān)技術(shù)和工具(4).制訂評定原則(5).設(shè)計測試用例(6).運行測試用例(7).分析測試成果3.1制訂目的和分析系統(tǒng)每一種性能測試計劃中第一步都會制訂目的和分析系統(tǒng)構(gòu)成。只有明確目的和理解系統(tǒng)構(gòu)成才會澄清測試范疇,懂得在測試中要掌握什么樣的技術(shù)。目的:1.?dāng)M定客戶需求和盼望2.實際業(yè)務(wù)需求3.系統(tǒng)需求系統(tǒng)構(gòu)成系統(tǒng)構(gòu)成這里包含幾方面含義:系統(tǒng)類別,系統(tǒng)構(gòu)成,系統(tǒng)功效等。理解這些內(nèi)容的本質(zhì)其實是協(xié)助我們明確測試的范疇,選者適宜的測試辦法來進(jìn)行測試。系統(tǒng)類別:分清系統(tǒng)類別是我們掌握什么樣的技術(shù)的前提,掌握對應(yīng)技術(shù)做性能測試才可能成功。例如:系統(tǒng)類別是bs構(gòu)造,需要掌握http合同,java,html等技術(shù)?;蛘呤莄s構(gòu)造,可能要理解操作系統(tǒng),winsock,com等。因此甄別系統(tǒng)類別對于我們來說很重要。系統(tǒng)構(gòu)成:硬件設(shè)立,操作系統(tǒng)設(shè)立是性能測試的制約條件,普通性能測試都是運用測試工具模仿大量的實際顧客操作,系統(tǒng)在超負(fù)荷情形下運作。不同的系統(tǒng)構(gòu)成性能測試就會得到不同的成果。系統(tǒng)功效:系統(tǒng)功效指系統(tǒng)提供的不同子系統(tǒng),辦公管理系統(tǒng)中的公文子系統(tǒng),會議子系統(tǒng)等,系統(tǒng)功效是性能測試中要模擬的環(huán)節(jié),理解這些是必要的。3.2選擇測試度量的辦法通過第一步,將會對系統(tǒng)有蘇醒的認(rèn)識。接下來我們將把精力放在軟件度量上,收集系統(tǒng)有關(guān)的數(shù)據(jù)。度量的有關(guān)方面:*制訂規(guī)范*制訂有關(guān)流程,角色,職責(zé)*制訂改善方略*制訂成果對比原則3.3學(xué)習(xí)的有關(guān)技術(shù)和工具性能測試是通過工具,模擬大量顧客操作,對系統(tǒng)增加負(fù)載。因此需要掌握一定的工具知識才干進(jìn)行性能測試。大家都懂得性能測試工具普通通過winsock,http等合同紀(jì)錄顧客操作。而合同選擇是基于軟件的系統(tǒng)架構(gòu)實現(xiàn)(web普通選擇http合同,cs選擇winsock合同),不同的性能測試工具,腳本語言也不同,例如rationalrobot中vu腳本用類c語言實現(xiàn)。開展性能測試需要對多個性能測試工具進(jìn)行評定,由于每一種性能測試工具都有本身的特點,只有通過工具評定,才干選擇符合現(xiàn)有軟件架構(gòu)的性能測試工具。擬定測試工具后,需要組織測試人員進(jìn)行工具的學(xué)習(xí),培訓(xùn)有關(guān)技術(shù)。3.4制訂評定原則任何測試的目的都是確保軟件符合預(yù)先規(guī)定的目的和規(guī)定。性能測試也不例外。因此必須制訂一套原則。普通性能測試有四種模型技術(shù)可用于評定:*線性投射:用大量的過去的,擴(kuò)展的或者將來可能發(fā)生的數(shù)據(jù)構(gòu)成散布圖,運用這個圖表不停和系統(tǒng)的現(xiàn)在狀況對比。*分析模型:用排隊論公式和算法預(yù)測響應(yīng)時間,運用描述工作量的數(shù)據(jù)和系統(tǒng)本質(zhì)關(guān)聯(lián)起來*模仿:模仿實際顧客的使用辦法測試你的系統(tǒng)*基準(zhǔn):定義測試和你最初的測試作為原則,運用它和全部后來進(jìn)行的測試成果進(jìn)行對比3.5設(shè)計測試用例設(shè)計測試用例是在理解軟件業(yè)務(wù)流程的基礎(chǔ)上。設(shè)計測試用例的原則是受最小的影響提供最多的測試信息,設(shè)計測試用例的目的是一次盡量的包含多個測試要素。這些測試用例必須是測試工具能夠?qū)崿F(xiàn)的,不同的測試場景將測試不同的功效。由于性能測試不同于平時的測試用例,盡量把性能測試用例設(shè)計的復(fù)雜,才有可能發(fā)現(xiàn)軟件的性能瓶頸。3.6運行測試用例通過性能測試工具運行測試用例。同一環(huán)境下作的性能測試得到的測試成果是不精確的,因此在運行這些測試用例的時候,需要用不同的測試環(huán)境,不同的機(jī)器配備上運行。3.7分析測試成果運行測試用例后,收集有關(guān)信息,進(jìn)行數(shù)據(jù)統(tǒng)計分析,找到性能瓶頸。通過排除誤差和其它因素,讓測試成果體現(xiàn)靠近真實狀況。不同的體系構(gòu)造分析測試成果的辦法也不同,bs構(gòu)造我們會分析網(wǎng)絡(luò)帶寬,流量對顧客操作響應(yīng)的影響,而cs構(gòu)造我們可能更關(guān)心系統(tǒng)整體配備會對顧客操作的影響。4性能測試辦法對于公司應(yīng)用程序,有許多進(jìn)行性能測試的辦法,其中某些辦法實施起來要比其它辦法困難。所要進(jìn)行的性能測試的類型取決于想要達(dá)成的成果。例如,對于可再現(xiàn)性,基準(zhǔn)測試是最佳的辦法。而要從現(xiàn)在顧客負(fù)載的角度測試系統(tǒng)的上限,則應(yīng)當(dāng)使用容量規(guī)劃測試。本文將介紹幾個設(shè)立和運行性能測試的辦法,并討論這些辦法的區(qū)別。如果不進(jìn)行合理的規(guī)劃,對J2EE應(yīng)用程序進(jìn)行性能測試將會是一項令人望而生畏且有些混亂的任務(wù)。由于對于任何的軟件開發(fā)流程,都必須收集需求、理解業(yè)務(wù)需要,并在進(jìn)行實際測試之前設(shè)計出正式的進(jìn)度表。性能測試的需求由業(yè)務(wù)需要驅(qū)動,并由一組用例闡明。這些用例能夠基于歷史數(shù)據(jù)(例如,服務(wù)器一周的負(fù)載模式)或預(yù)測的近似值。搞清晰需要測試的內(nèi)容之后,就需要懂得如何進(jìn)行測試了。在開發(fā)階段前期,應(yīng)當(dāng)使用基準(zhǔn)測試來擬定應(yīng)用程序中與否出現(xiàn)性能倒退?;鶞?zhǔn)測試能夠在一種相對短的時間內(nèi)收集可重復(fù)的成果。進(jìn)行基準(zhǔn)測試的最佳辦法是,每次測試變化一種且只變化一種參數(shù)。例如,如果想懂得增加JVM內(nèi)存與否會影響應(yīng)用程序的性能,就逐次遞增JVM內(nèi)存(例如,從1024MB增至1224MB,然后是1524MB,最后是2024MB),在每個階段收集成果和環(huán)境數(shù)據(jù),統(tǒng)計信息,然后轉(zhuǎn)到下一階段。這樣在分析測試成果時就有跡可循。下一小節(jié)我將介紹什么是基準(zhǔn)測試,以及運行基準(zhǔn)測試的最佳參數(shù)。開發(fā)階段后期,在應(yīng)用程序中的bug已經(jīng)被解決,應(yīng)用程序達(dá)成一種穩(wěn)定狀態(tài)之后,能夠運行更為復(fù)雜的測試,擬定系統(tǒng)在不同的負(fù)載模式下的體現(xiàn)。這些測試被稱為容量規(guī)劃測試、滲入測試(soaktest)、峰谷測試(peak-resttest),它們旨在通過測試應(yīng)用程序的可靠性、強(qiáng)健性和可伸縮性來測試靠近于現(xiàn)實世界的場景。對于下面的描述應(yīng)當(dāng)從抽象的意義上理解,由于每個應(yīng)用程序的使用模式都是不同的。例如,容量規(guī)劃測試普通都使用較緩慢的ramp-up(下文有定義),但是如果應(yīng)用程序在一天之中的某個時段中有快速突發(fā)的流量,那么自然應(yīng)當(dāng)修改測試以反映這種狀況。但是,要記住,由于更改了測試參數(shù)(例如ramp-up周期或顧客的考慮時間(think-time)),測試的成果必定也會變化。一種不錯的辦法是,運行一系列的基準(zhǔn)測試,確立一種已知的可控環(huán)境,然后再對變化進(jìn)行比較。4.1基準(zhǔn)測試基準(zhǔn)測試的核心是要獲得一致的、可再現(xiàn)的成果??稍佻F(xiàn)的成果有兩個好處:減少重新運行測試的次數(shù);對測試的產(chǎn)品和產(chǎn)生的數(shù)字更為確信。使用的性能測試工具可能會對測試成果產(chǎn)生很大影響。假定測試的兩個指標(biāo)是服務(wù)器的響應(yīng)時間和吞吐量,它們會受到服務(wù)器上的負(fù)載的影響。服務(wù)器上的負(fù)載受兩個因素影響:同時與服務(wù)器通信的連接(或虛擬顧客)的數(shù)目,以及每個虛擬顧客請求之間的考慮時間的長短。很明顯,與服務(wù)器通信的顧客越多,負(fù)載就越大。同樣,請求之間的考慮時間越短,負(fù)載也越大。這兩個因素的不同組合會產(chǎn)生不同的服務(wù)器負(fù)載等級。記住,隨著服務(wù)器上負(fù)載的增加,吞吐量會不停攀升,直到達(dá)成一種點。注意,吞吐量以穩(wěn)定的速度增加,然后在某一種點上穩(wěn)定下來。在某一點上,執(zhí)行隊列開始增加,由于服務(wù)器上全部的線程都已投入使用,傳入的請求不再被立刻解決,而是放入隊列中,當(dāng)線程空閑時再解決。注意,最初的一段時間,執(zhí)行隊列的長度為零,然后就開始以穩(wěn)定的速度增加。這是由于系統(tǒng)中的負(fù)載在穩(wěn)定增加,即使最初系統(tǒng)有足夠的空閑線程去解決增加的負(fù)載,最后它還是不能承受,而必須將其排入隊列。當(dāng)系統(tǒng)達(dá)成飽和點,服務(wù)器吞吐量保持穩(wěn)定后,就達(dá)成了給定條件下的系統(tǒng)上限。但是,隨著服務(wù)器負(fù)載的繼續(xù)增加,系統(tǒng)的響應(yīng)時間也隨之延長,即使吞吐量保持穩(wěn)定。注意,在執(zhí)行隊列開始增加的同時,響應(yīng)時間也開始以遞增的速度增加。這是由于請求不能被及時解決。為了獲得真正可再現(xiàn)的成果,應(yīng)當(dāng)將系統(tǒng)置于相似的高負(fù)載下。為此,與服務(wù)器通信的虛擬顧客應(yīng)當(dāng)將請求之間的考慮時間設(shè)為零。這樣服務(wù)器會立刻超載,并開始構(gòu)建執(zhí)行隊列。如果請求(虛擬顧客)數(shù)保持一致,基準(zhǔn)測試的成果應(yīng)當(dāng)會非常精確,完全能夠再現(xiàn)。您可能要問的一種問題是:“如何度量成果?”對于一次給定的測試,應(yīng)當(dāng)取響應(yīng)時間和吞吐量的平均值。精確地獲得這些值的唯一辦法是一次加載全部的顧客,然后在預(yù)定的時間段內(nèi)持續(xù)運行。這稱為“flat”測試。與此相對應(yīng)的是“ramp-up”測試。4.2ramp-up測試ramp-up測試中的顧客是交錯上升的(每幾秒增加某些新顧客)。ramp-up測試不能產(chǎn)生精確和可重現(xiàn)的平均值,這是由于由于顧客的增加是每次一部分,系統(tǒng)的負(fù)載在不停地變化。因此,flat運行是獲得基準(zhǔn)測試數(shù)據(jù)的抱負(fù)模式。這不是在貶低ramp-up測試的價值。事實上,ramp-up測試對找出后來要運行的flat測試的范疇非常有用。ramp-up測試的優(yōu)點是,能夠看出隨著系統(tǒng)負(fù)載的變化,測量值是如何變化的。然后能夠據(jù)此選擇后來要運行的flat測試的范疇。Flat測試的問題是系統(tǒng)會碰到“波動”效果。注意波動的出現(xiàn),吞吐量不再是平滑的。這在系統(tǒng)的各個方面都有所體現(xiàn),涉及CPU的使用量。注意,每隔一段時間就會出現(xiàn)一種波形。CPU使用量不再是平滑的,而是有了像吞吐量圖那樣的尖峰。另外,執(zhí)行隊列也承受著不穩(wěn)定的負(fù)載,因此能夠看到,隨著系統(tǒng)負(fù)載的增加和減少,執(zhí)行隊列也在增加和縮減。注意,每隔一段時間就會出現(xiàn)一種波形。執(zhí)行隊列曲線與上面的CPU使用量圖非常相似。最后,系統(tǒng)中事務(wù)的響應(yīng)時間也遵照著這個波動模式。注意,每隔一段時間就會出現(xiàn)一種波形。事務(wù)的響應(yīng)時間也與上面的圖類似,只但是其效果隨著時間的推移逐步削弱。當(dāng)測試中全部的顧客都同時執(zhí)行幾乎相似的操作時,就會發(fā)生這種現(xiàn)象。這將會產(chǎn)生非常不可靠和不精確的成果,因此必須采用某些方法避免這種狀況的出現(xiàn)。有兩種辦法能夠從這種類型的成果中獲得精確的測量值。如果測試能夠運行相稱長的時間(有時是幾個小時,取決于顧客的操作持續(xù)的時間),最后由于隨機(jī)事件的本性使然,服務(wù)器的吞吐量會被“拉平”?;蛘?,能夠只選用波形中兩個平息點之間的測量值。該辦法的缺點是能夠捕獲數(shù)據(jù)的時間非常短。4.3性能規(guī)劃測試對于性能規(guī)劃類型的測試來說,其目的是找出,在特定的環(huán)境下,給定應(yīng)用程序的性能能夠達(dá)成何種程度。此時可重現(xiàn)性就不如在基準(zhǔn)測試中那么重要了,由于測試中普通都會有隨機(jī)因子。引入隨機(jī)因子的目的是為了盡量模擬含有真實顧客負(fù)載的現(xiàn)實世界應(yīng)用程序。普通,具體的目的是找出系統(tǒng)在特定的服務(wù)器響應(yīng)時間下支持的現(xiàn)在顧客的最大數(shù)。例如,您可能想懂得:如果要以5秒或更少的響應(yīng)時間支持8,000個現(xiàn)在顧客,需要多少個服務(wù)器?要回答這個問題,需要懂得系統(tǒng)的更多信息。要擬定系統(tǒng)的容量,需要考慮幾個因素。普通,服務(wù)器的顧客總數(shù)非常大(以十萬計),但是事實上,這個數(shù)字并不能闡明什么。真正需要懂得的是,這些顧客中有多少是并發(fā)與服務(wù)器通信的。另首先要懂得的是,每個顧客的“考慮時間”即請求間時間是多少。這非常重要,由于考慮時間越短,系統(tǒng)所能支持的并發(fā)顧客越少。例如,如果顧客的考慮時間是1秒,那么系統(tǒng)可能只能支持?jǐn)?shù)百個這樣的并發(fā)顧客。但是,如果顧客的考慮時間是30秒,那么系統(tǒng)則可能支持?jǐn)?shù)萬個這樣的并發(fā)顧客(假定硬件和應(yīng)用程序都是相似的)。在現(xiàn)實世界中,普通難以擬定顧客確實切考慮時間。還要注意,在現(xiàn)實世界中,顧客不會精確地按照間隔時間發(fā)出請求。于是就引入了隨機(jī)性。如果懂得普通顧客的考慮時間是5秒,誤差為20%,那么在設(shè)計負(fù)載測試時,就要確保請求間的時間為5×(1+/-20%)秒。另外,能夠運用“調(diào)步”的理念向負(fù)載場景中引入更多的隨機(jī)性。它是這樣的:在一種虛擬顧客完畢一整套的請求后,該顧客暫停一種設(shè)定的時間段,或者一種小的隨機(jī)時間段(例如,2×(1+/-25%)秒),然后再繼續(xù)執(zhí)行下一套請求。將這兩種隨機(jī)化辦法運用到測試中,能夠提供更靠近于現(xiàn)實世界的場景?,F(xiàn)在該進(jìn)行實際的容量規(guī)劃測試了。接下來的問題是:如何加載顧客以模擬負(fù)載狀態(tài)?最佳的辦法是模擬高峰時間顧客與服務(wù)器通信的狀況。這種顧客負(fù)載狀態(tài)是在一段時間內(nèi)逐步達(dá)成的嗎?如果是,應(yīng)當(dāng)使用ramp-up類型的測試,每隔幾秒增加x個顧客?;蛘撸款櫩褪窃谝环N非常短的時間內(nèi)同時與系統(tǒng)通信?如果是這樣,就應(yīng)當(dāng)使用flat類型的測試,將全部的顧客同時加載到服務(wù)器。兩種不同類型的測試會產(chǎn)生沒有可比性的不同測試。例如,如果進(jìn)行ramp-up類型的測試,系統(tǒng)能夠以4秒或更短的響應(yīng)時間支持5,000個顧客。而執(zhí)行flat測試,您會發(fā)現(xiàn),對于5,000個顧客,系統(tǒng)的平均響應(yīng)時間要不不大于4秒。這是由于ramp-up測試固有的不精確性使其不能顯示系統(tǒng)能夠支持的并發(fā)顧客的精確數(shù)字。以門戶應(yīng)用程序為例,隨著門戶規(guī)模的擴(kuò)大和集群規(guī)模的擴(kuò)大,這種不擬定性就會隨之顯現(xiàn)。這不是說不應(yīng)當(dāng)使用ramp-up測試。對于系統(tǒng)負(fù)載在一段比較長的時間內(nèi)緩慢增加的狀況,ramp-up測試效果還是不錯的。這是由于系統(tǒng)能夠隨著時間不停調(diào)節(jié)。如果使用快速ramp-up測試,系統(tǒng)就會滯后,從而報告一種較相似顧客負(fù)載的flat測試低的響應(yīng)時間。那么,什么是擬定容量的最佳辦法?結(jié)合兩種負(fù)載類型的優(yōu)點,并運行一系列的測試,就會產(chǎn)生最佳的成果。例如,首先使用ramp-up測試擬定系統(tǒng)能夠支持的顧客范疇。擬定了范疇之后,以該范疇內(nèi)不同的并發(fā)顧客負(fù)載進(jìn)行一系列的flat測試,更精確地擬定系統(tǒng)的容量。4.4滲入測試滲入測試是一種比較簡樸的性能測試。滲入測試所需時間較長,它使用固定數(shù)目的并發(fā)顧客測試系統(tǒng)的總體強(qiáng)健性。這些測試將會通過內(nèi)存泄漏、增加的垃圾收集(GC)或系統(tǒng)的其它問題,顯示因長時間運行而出現(xiàn)的任何性能減少。測試運行的時間越久,您對系統(tǒng)就越理解。運行兩次測試是一種好主意——一次使用較低的顧客負(fù)載(要在系統(tǒng)容量之下,方便不會出現(xiàn)執(zhí)行隊列),一次使用較高的負(fù)載(方便出現(xiàn)主動的執(zhí)行隊列)。測試應(yīng)當(dāng)運行幾天的時間,方便真正理解應(yīng)用程序的長久健康狀況。要確保測試的應(yīng)用程序盡量靠近現(xiàn)實世界的狀況,顧客場景也要逼真(虛擬顧客通過應(yīng)用程序?qū)Ш降姆绞揭c現(xiàn)實世界一致),從而測試應(yīng)用程序的全部特性。確保運行了全部必需的監(jiān)控工具,方便精確地監(jiān)測并跟蹤問題。4.5峰谷測試峰谷測試兼有容量規(guī)劃ramp-up類型測試和滲入測試的特性。其目的是擬定從高負(fù)載(例如系統(tǒng)高峰時間的負(fù)載)恢復(fù)、轉(zhuǎn)為幾乎空閑、然后再攀升到高負(fù)載、再減少的能力。實現(xiàn)這種測試的最佳辦法就是,進(jìn)行一系列的快速ramp-up測試,繼之以一段時間的平穩(wěn)狀態(tài)(取決于業(yè)務(wù)需求),然后急劇減少負(fù)載,此時能夠令系統(tǒng)平息一下,然后再進(jìn)行快速的ramp-up;重復(fù)重復(fù)這個過程。這樣能夠擬定下列事項:第二次高峰與否重現(xiàn)第一次的峰值?其后的每次高峰是等于還是不不大于第一次的峰值?在測試過程中,系統(tǒng)與否顯示了內(nèi)存或GC性能減少的有關(guān)跡象?測試運行(不停地重復(fù)“峰值/空閑”周期)的時間越長,您對系統(tǒng)的長久健康狀況就越理解。5慣用性能測試工具現(xiàn)在市場上的性能測試的工具種類諸多,能夠簡樸的劃分為下列幾個:負(fù)載壓力測試工具、資源監(jiān)控工具、故障定位工具以及調(diào)優(yōu)工具。5.1主流負(fù)載性能測試工具負(fù)載性能測試工具的原理普通是通過錄制、回放腳本、模擬多顧客同時訪問被測試系統(tǒng),制造負(fù)載,產(chǎn)生并統(tǒng)計多個性能指標(biāo),生成分析成果,從而完畢性能測試的任務(wù)。QALoad:Compuware公司的QALoad是客戶/服務(wù)器系統(tǒng)、公司資源配備(ERP)和電子商務(wù)應(yīng)用的自動化負(fù)載測試工具。QALoad是QACenter性能版的一部分,它通過可重復(fù)的、真實的測試能夠徹底地度量應(yīng)用的可擴(kuò)展性和性能。QACenter聚集完整的跨公司的自動測試產(chǎn)品,專為提高軟件質(zhì)量而設(shè)計。QACenter能夠在整個開發(fā)生命周期、跨越多個平臺、自動執(zhí)行測試任務(wù)。(無下載源)優(yōu)點:輕量級性能試工具,簡樸易用。缺點:中文論壇極少,支持的插件太少。SilkPerformer:一種在工業(yè)領(lǐng)域最高級的公司級負(fù)載測試工具。它能夠模仿成千上萬的顧客在多合同和多計算的環(huán)境下工作。不管公司電子商務(wù)應(yīng)用的規(guī)模大小及其復(fù)雜性,通過SilkPerformer,均能夠在布署前預(yù)測它的性能??梢暤念櫩突缑?、實時的性能監(jiān)控和強(qiáng)大的管理報告能夠協(xié)助我們快速的解決問題,例如加緊產(chǎn)品投入市場的時間,通過最小的測試周期確保系統(tǒng)的可靠性,優(yōu)化性能和確保應(yīng)用的可擴(kuò)充性。(無下載源)LoadRunner:一種較高規(guī)模適應(yīng)性的,自動負(fù)載測試工具,它能預(yù)測系統(tǒng)行為,優(yōu)化性能。LoadRunner強(qiáng)調(diào)的是整個公司的系統(tǒng),它通過模擬實際顧客的操作行為和實施實時性能監(jiān)測,來協(xié)助您更快確實認(rèn)和查找問題。另外,LoadRunner能支持最寬范的合同和技術(shù),為您的特殊環(huán)境,量身定做地提供解決方案。LoadRunner是一種預(yù)測系統(tǒng)行為和性能的負(fù)載測試工具,通過模擬上千萬顧客實施并發(fā)負(fù)載及實時性能監(jiān)測的方式來確認(rèn)和查找問題,LoadRunner能夠?qū)φ麄€公司架構(gòu)進(jìn)行測試,LoadRunner合用于多個體系架構(gòu),能支持廣范的合同和技術(shù)(如Web、Ftp、Database等),能預(yù)測系統(tǒng)行為并優(yōu)化系統(tǒng)性能。它通過模擬實際顧客的操作行為和實施實時性能監(jiān)測,來協(xié)助您更快的查找和發(fā)現(xiàn)問題。Loadrunner是一種強(qiáng)大有力的壓力測試工具,它的腳本能夠錄制生成,自動關(guān)聯(lián)。測試場景面對指標(biāo),實現(xiàn)了多方監(jiān)控。并且測試成果采用圖表顯示,能夠自由拆分組合。通過Loadrunner的測試成果圖表對比,你能夠?qū)ふ页鱿到y(tǒng)瓶頸的因素,普通來說能夠按照服務(wù)器硬件、網(wǎng)絡(luò)、應(yīng)用程序、操作系統(tǒng)、中間件的次序進(jìn)行分析。特點:1、創(chuàng)立真實的負(fù)載用LoadRunner的Controller,能快速組織起多顧客的測試方案,并提供一種互動的環(huán)境,在其中既能建立持續(xù)且循環(huán)的負(fù)載,又能管理和驅(qū)動負(fù)載測試方案。同時,能夠運用日程計劃服務(wù)來定義顧客什么時候訪問系統(tǒng)以產(chǎn)生負(fù)載。這樣,就能使測試過程自動化。2、實時監(jiān)測器LoadRunner內(nèi)含的實時監(jiān)測器,在負(fù)載測試過程的任何時候,都能夠觀察到應(yīng)用系統(tǒng)的運行性能。這些性能檢測器實時顯示交易性能數(shù)據(jù)(如響應(yīng)時間)和其它系統(tǒng)組件涉及ApplicationServer,WebServer,網(wǎng)路設(shè)備和數(shù)據(jù)庫的實時性能。3、分析成果定位問題測試完畢,LoadRunner收集匯總?cè)康臏y試數(shù)據(jù),并提供高級的分析和報告工具,方便快速查找性能問題并追溯原由。通過分析,能很快的查找到出錯的位置和因素并做出對應(yīng)的調(diào)節(jié)。4、LoadRunner能夠推動成千上萬的虛擬顧客執(zhí)行不同的業(yè)務(wù)流程以模擬已布署的應(yīng)用程序?qū)⒚鎸Φ纳a(chǎn)條件。能夠在推出之前發(fā)現(xiàn)隱藏在產(chǎn)品中的性能和伸縮性瓶頸,盡量減少產(chǎn)品停機(jī)時間和造成性能低下,并滿足服務(wù)水平和正常運行時間的需求。5、LoadRunner幾乎支持40個合同多于其它任何供應(yīng)商。它涉及Web、J2EE、.NET、XML、ERP/CRM、無線、Citrix和客戶端服務(wù)器應(yīng)用程序。6、LoadRunner的非侵入性的、實時的性能監(jiān)控為測試中系統(tǒng)的全部部分提供的具體指標(biāo)。這涉及Web服務(wù)器、應(yīng)用程序服務(wù)器、數(shù)據(jù)庫、ERP和CRM系統(tǒng)、防火墻、負(fù)載平衡等。LoadRunner允許擬定可能檢測不到的硬件限制和軟件配備問題。7、LoadRunner是唯一能夠跟蹤負(fù)載中的單個應(yīng)用程序組件、為其計時并排除其故障的性能測試解決方案。顧客能夠進(jìn)一步發(fā)掘最后顧客的低速交易、有瓶頸的辦法或可能造成低速的SQL語句。數(shù)據(jù)細(xì)微層次確保每個負(fù)載測試為開發(fā)提供可操作的成果,從而減少優(yōu)化J2EE和Siebel布署所需的時間和成本。優(yōu)點:公司級工具,簡樸易用,中英文網(wǎng)上論壇諸多,非常符合BS/CS架構(gòu)系統(tǒng)測試,國內(nèi)使用最多的性能測試工具之一。缺點:諸多支持插件(如delphi)需要另外購置,對于復(fù)雜的性能測試規(guī)定測試員必須含有C語言開發(fā)經(jīng)驗,需要適宜的培訓(xùn)。價格昂貴。對于數(shù)據(jù)庫性能測試,LoadRunner很困難。WebLoad:是RadView公司推出的一種性能測試和分析工具,它讓web應(yīng)用程序開發(fā)者自動執(zhí)行壓力測試;webload通過模擬真實顧客的操作,生成壓力負(fù)載來測試web的性能。顧客創(chuàng)立的是基于javascript的測試腳本,稱為議程agenda,用它來模擬客戶的行為,通過執(zhí)行該腳原來衡量web應(yīng)用程序在真實環(huán)境下的性能。webload提供巡航控制器cruisecontrol的功效,運用巡航控制器,能夠預(yù)定義web應(yīng)用程序應(yīng)當(dāng)滿足的性能指標(biāo),然后測試系統(tǒng)與否滿足這些需求指標(biāo);cruisecontrol能夠自動把負(fù)載加到web應(yīng)用程序,并將在此負(fù)荷下能夠訪問程序的客戶數(shù)量生成報告。webload能夠在測試會話執(zhí)行期間對監(jiān)測的系統(tǒng)性能生成實時的報告,這些測試成果通過一種易讀的圖形界面顯示出來,并能夠?qū)С龅絜xcel和其它文獻(xiàn)里。這兩個軟件的功效即使強(qiáng)大,并且能夠自動生成測試報告,但其終究是一種工具,如果你想真正的定位服務(wù)器性能的好壞和性能的瓶頸所在,需要使用工具的人對于測試軟件的方方面面都要有理解,例如軟件體系構(gòu)架,網(wǎng)絡(luò)拓?fù)洌?wù)器硬件等知識。優(yōu)點:非常符合網(wǎng)站的性能測試。缺點:中文論壇極少。OpenSTA:開源項目,功效強(qiáng)大,自定義功效設(shè)立完備,但設(shè)立通過Script來完畢。必須學(xué)習(xí)Script編寫。OpenSTA是專用于B/S構(gòu)造的、免費的性能測試工具。它的優(yōu)點除了免費、源代碼開放的優(yōu)點外,還能對錄制的測試腳本進(jìn)行,按指定的語法進(jìn)行編輯。在錄制完測試腳本后,能夠?qū)y試腳本進(jìn)行編輯,方便進(jìn)行特定的性能指標(biāo)分析。其較為豐富的圖形化測試成果大大提高了測試報告的可閱讀性。OpenSTA基于CORBA的構(gòu)造體系,它通過虛擬一種proxy,使用其專用的腳本控制語言,統(tǒng)計通過proxy的一切HTTP/Straffic。通過分析OpenSTA的性能指標(biāo)收集器收集的各項性能指標(biāo),以及HTTP數(shù)據(jù),對系統(tǒng)的性能進(jìn)行分析。優(yōu)點:OpenSTA以最簡樸的方式讓大家對性能測試的原理有較深的理解,其較為豐富的圖形化測試成果大大提高了測試報告的可閱讀性。壓力測試引擎含有可擴(kuò)充性,能夠完畢打規(guī)模的壓力測試。提供腳本語言支持。缺點:1、腳本語言過于復(fù)雜,自定義腳本相稱困難2、僅支持HTTP1.0/1.1/HTTPS(SSL)合同。3、沒有嵌入虛擬IP、廣域網(wǎng)/局域網(wǎng)仿真功效,不支持集合點功效。4、場景設(shè)計方面太過于簡樸,對于構(gòu)建某些復(fù)雜的場景比較麻煩5、沒有嵌入模擬真實顧客不同網(wǎng)絡(luò)速度的功效。6、OpenSTA不能跨平臺──它是一種只能執(zhí)行在Windows平臺上的負(fù)載引擎,不能收集Linux性能數(shù)據(jù)。7、使用Repository管理測試腳本、配備等過于簡樸,保存腳本居然不能自己選擇途徑。8、Results成果報告的圖表太簡陋,功效太少,報告導(dǎo)出功效太簡陋。9、OpenSTA在過去的兩年中,都沒退出新版本,這個項目已經(jīng)死掉了。JMeter:是一款在國外非常流行和受歡迎的開源性能測試工具,像LoadRunner同樣,它也提供了一種運用本地ProxyServer(代理服務(wù)器)來錄制生成測試腳本的功效,但是這個功效并不好用。優(yōu)點:輕量級性能測試工具,ApacheJMeter是一種100%的純Java桌面應(yīng)用,用于壓力測試和性能測量。它最初被設(shè)計用于Web應(yīng)用測試但后來擴(kuò)展到其它測試,源碼開放。缺點:中文論壇極少,需要二次開發(fā),錄制腳本不好用。WAS(WebApplicationStress):是Microsoft公司下的一款免費產(chǎn)品。WAS允許你以不同的方式創(chuàng)立測試腳本:你能夠通過使用瀏覽器走一遍站點來錄制腳本,能夠從服務(wù)器的日志文獻(xiàn)導(dǎo)入URL,或者從一種網(wǎng)絡(luò)內(nèi)容文獻(xiàn)夾選擇一種文獻(xiàn)。固然,你也能夠手工地輸入URL來創(chuàng)立一種新的測試腳本。優(yōu)點:1、簡樸性
不像其它的工具,你能夠使用任何數(shù)量的客戶端運行測試腳本,全部都有一種中央主客戶端來控制。在每一種測試開始前,主客戶機(jī)透明地執(zhí)行下列任務(wù):
*與其它全部的客戶機(jī)通訊。
*把測試數(shù)據(jù)分發(fā)給全部的客戶端。
*在全部客戶端同時初始化測試。
*從全部的客戶端收集測試成果和報告。
這個特性非常重要,特別對于要測試一種需要使用諸多客戶端的服務(wù)器群的最大吞吐量時非常有用。2、高可用性
WAS是被設(shè)計用于模擬Web瀏覽器發(fā)送請求到任何采用了HTTP1.0或1.1原則的服務(wù)器,而不考慮服務(wù)器運行的平臺。除了它的易用性外,WAS尚有諸多其它的有用的特性,涉及:
*對于需要簽名登錄的網(wǎng)站,它允許創(chuàng)立顧客帳號。
*允許為每個顧客存儲cookies和ActiveServerPages(ASP)的session信息。
*支持隨機(jī)的或次序的數(shù)據(jù)集,以用在特定的名字-值對。
*支持帶寬調(diào)節(jié)和隨機(jī)延遲(“思考的時間”)以更真實地模擬顯示情形。
*支持SecureSocketsLayer(SSL)合同。
*允許URL分組和對每組的點擊率的闡明。
*提供一種對象模型,能夠通過MicrosoftVisualBasic?ScriptingEdition(VBScript)解決或者通過定制編程來達(dá)成啟動,結(jié)束和配備測試腳本的效果。缺點:
1、以前面所發(fā)請求返回的成果為基礎(chǔ),修改URL參數(shù)的能力。
2、運行或模仿客戶端邏輯的能力。
3、為所分派的測試指定一種擬定數(shù)量的測試周期的能力。
4、對擁有不同IP地址或域名的多個服務(wù)器的同時測試能力。5、WAS只支持WindowsNT4.0SP4或者更高及Windows,對于其它系統(tǒng),不能獲取PerfCounters。6、WAS測試成果報告不能圖形化顯示。成果報告可分析性低。主流負(fù)載性能工具的比較圖以下:屬性LoadRunnerQALoadWebLoad出品公司HP(Mercury)CompuwareRadview價格昂貴較貴普通安裝配備的復(fù)雜性簡樸簡樸普通操作性較復(fù)雜簡樸簡樸支持測試對象多個中間件/數(shù)據(jù)庫/應(yīng)用服務(wù)器的性能監(jiān)控/公司架構(gòu)(j2ee和.net)的測試客戶/服務(wù)器系統(tǒng)、公司資源配備(ERP)和電子商務(wù)應(yīng)用WebApplication支持平臺windows,unix或linuxHP-UX,IBMAIX,SunSolaris,Linux,NT/2kUnixWindows支持?jǐn)?shù)據(jù)庫DB2,SQLserver,
Orcale,SybaseADO,DB2,Oracle,Sybase,
SQLserver,OdbcADO,DB2,Oracle,Sybase,
SQLserver,Odbc支持合同web,http(s),soap,streaming,
wap,winsock,xmlhttp,ssl,soap,xml,
streaming,mediaxml,java,ejb,
activex,wap,http,snmp,
real/m$streaming腳本語言類似C++C/C++和VC++Javascript自動數(shù)據(jù)生成YYY腳本調(diào)試YYY報表定制功效YYY功效點創(chuàng)立虛擬顧客,創(chuàng)立真實的負(fù)載,定位性能問題,分析成果以精擬定位問題所在,重復(fù)測試確保系統(tǒng)公布的高性能等預(yù)測系統(tǒng)性能、通過重復(fù)測試尋找瓶頸問題、從控制中心管理全局負(fù)載測試、快速創(chuàng)立仿真的測試、驗證應(yīng)用的可擴(kuò)展性。強(qiáng)大的專業(yè)網(wǎng)站性能測試,虛擬多顧客虛擬顧客上限數(shù)量成千上萬成百上千理論上無限,但是受機(jī)器的限制,同時運行太多影響成果的精確性公司網(wǎng)址Http://可下載5.2資源監(jiān)控工具資源監(jiān)控作為系統(tǒng)壓力測試過程中的一種重要環(huán)節(jié),在有關(guān)的測試工具中基本上都有諸多的集成。只是不同的工具之間,監(jiān)控的中間件、數(shù)據(jù)庫、主機(jī)平臺的能力以及方式各有差別。而這些監(jiān)控工具更大程度上都依賴于被監(jiān)控平臺本身的數(shù)據(jù)采集能力,現(xiàn)在的絕大多數(shù)的監(jiān)控工具基本上是直接從中間件、數(shù)據(jù)庫以及主機(jī)本身提供的性能數(shù)據(jù)采集接口獲取性能指標(biāo)。首先,不同的應(yīng)用平臺有本身的監(jiān)控命令以及控制界面。例如UNIX主機(jī)顧客能夠直接使用topas,vmstat,iostat理解系統(tǒng)本身的健康工作狀況。另外,weblogic以及websphere平臺都有本身的監(jiān)控臺,在上面能夠理解到現(xiàn)在的JVM的大小、數(shù)據(jù)庫連接池的使用狀況以及現(xiàn)在連接的客戶端數(shù)量以及請求狀況等等。只是這些監(jiān)控方式的使用對測試人員有一定的技術(shù)儲藏規(guī)定,需要自己純熟掌握以上監(jiān)控方式的使用。第三方的監(jiān)控工具對應(yīng)的對某些系統(tǒng)平臺的監(jiān)控進(jìn)行了集成。例如Loadrunner對現(xiàn)在慣用的某些業(yè)務(wù)系統(tǒng)平臺環(huán)境都提供了對應(yīng)的監(jiān)控入口,從而能夠在并發(fā)測試的同時,對業(yè)務(wù)系統(tǒng)所處的測試環(huán)境進(jìn)行監(jiān)控,更加好的分析測試數(shù)據(jù)。但Loadrunner工具其提供的監(jiān)控方式還不是很直觀,某些更直觀的測試工具能在監(jiān)控的同時提供有關(guān)的報警信息,類似的監(jiān)控產(chǎn)品如QUEST公司提供的一整套監(jiān)控解決方案涉及了主機(jī)的監(jiān)控、中間件平臺的監(jiān)控以及數(shù)據(jù)庫平臺的監(jiān)控。QUEST系列監(jiān)控產(chǎn)品提供了直觀的圖形化界面,能讓測試者盡快進(jìn)入監(jiān)控的角色。性能測試的監(jiān)控指標(biāo)重要涉及下列幾個部分: 1、服務(wù)器:Linux應(yīng)用服務(wù)器 具體涉及CPU、Memory、Load、I/O、Disk等。 2、數(shù)據(jù)庫:1.Mysql
2.Oracle具體涉及緩存命中、索引、單條SQL性能、數(shù)據(jù)庫線程數(shù)、數(shù)據(jù)池連接數(shù)等。 3、中間件:1.Jboss
2.Apache具體涉及線程數(shù)、連接數(shù)、日志輸出等。 4、網(wǎng)絡(luò)具體涉及防火墻、網(wǎng)卡、網(wǎng)線、吞吐量、吞吐率等。 5、應(yīng)用服務(wù)具體涉及JVM內(nèi)存使用和回收、JAVA內(nèi)存使用、FullGC頻率、JAVA類裝入和卸載、日志、線程運行狀態(tài)(阻塞、等待、正常運行)等。 6、監(jiān)控工具(LoadRunner)具體涉及顧客執(zhí)行狀況、場景狀態(tài)、事務(wù)響應(yīng)時間、TPS、Load、CPU分析圖表等。 7、測試機(jī)資源具體涉及CPU、Memory、網(wǎng)絡(luò)、日志輸出、磁盤空間、負(fù)載生成器評定等5.3故障定位工具以及調(diào)優(yōu)工具技術(shù)的不停發(fā)展以及測試需求的不停提高,故障定位工具應(yīng)運而生,它能更精細(xì)的對負(fù)載壓力測試中暴露的問題進(jìn)行故障本源分析。在現(xiàn)在的主流測試工具廠商中,都對應(yīng)地提供了對應(yīng)的產(chǎn)品支持。特別是現(xiàn)在.NET以及J2EE架構(gòu)的流行,測試工具廠商紛紛在這些領(lǐng)域提供了有關(guān)的技術(shù)產(chǎn)品,例如Loadrunner模塊中添加的診療以及調(diào)優(yōu)模塊、
Quest公司的PerformaSure、Compuware的Vantage套件以及CA公司收購的Wily的Introscope工具等等,都在更深層次上對業(yè)務(wù)流的調(diào)用進(jìn)行追蹤。這些工具在中間件平臺上引入探針技術(shù),能捕獲后臺業(yè)務(wù)內(nèi)部的調(diào)用關(guān)系,發(fā)現(xiàn)問題所在,為應(yīng)用系統(tǒng)的調(diào)優(yōu)提供直接的參考指南。在數(shù)據(jù)庫產(chǎn)品的故障定位分析上,Oracle本身提供了強(qiáng)大的診療模塊,同時,Quest公司的數(shù)據(jù)庫產(chǎn)品也在數(shù)據(jù)庫設(shè)計、開發(fā)以及上線運行維護(hù)都提供了全套的產(chǎn)品支持。6服務(wù)器與終端連接性能測試點6.1服務(wù)器性能瓶頸測試點終端顧客訪問服務(wù)器。找到在同一場景下,服務(wù)器允許終端顧客訪問數(shù)量的瓶頸。在測試場景中,需檢測的系統(tǒng)資源項,涉及以下:內(nèi)存分析內(nèi)存分析用于判斷系統(tǒng)有無內(nèi)存瓶頸,與否需要通過增加內(nèi)存等手段提高系統(tǒng)性能體現(xiàn)。內(nèi)存分析需要使用的計數(shù)器:Memory類別和PhysicalDisk類別的計數(shù)器。內(nèi)存分析的重要辦法和環(huán)節(jié):(1)首先查看Memory\AvailableMbytes指標(biāo)如果該指標(biāo)的數(shù)據(jù)比較小,系統(tǒng)可能出現(xiàn)了內(nèi)存方面的問題。(2)注意Pages/sec、PagesRead/sec和PageFaults/sec的值操作系統(tǒng)會運用磁盤較好的方式提高系統(tǒng)可用內(nèi)存量或者提高內(nèi)存的使用效率。這三個指標(biāo)直接反映了操作系統(tǒng)進(jìn)行磁盤交換的頻度。如果Pages/sec的計數(shù)持續(xù)高于幾百,可能有內(nèi)存問題。但Pages/sec值不一定就表明有內(nèi)存問題,可能是運行使用內(nèi)存映射文獻(xiàn)的程序所致。PageFaults/
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版承包工地食堂餐廚垃圾處理合同模板3篇
- 2024蔬菜加工產(chǎn)品銷售合作協(xié)議3篇
- 2024年股權(quán)轉(zhuǎn)讓合同標(biāo)的及屬性詳細(xì)描述
- 2024年版物業(yè)托管服務(wù)協(xié)議版B版
- 二零二五版離婚協(xié)議書起草與審核合同2篇
- 2024版房屋贈與合同協(xié)議書大全
- 天津中德應(yīng)用技術(shù)大學(xué)《教育技術(shù)與傳播》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五版家政服務(wù)+家庭健康促進(jìn)合同3篇
- 太原幼兒師范高等??茖W(xué)校《西醫(yī)外科學(xué)醫(yī)學(xué)免疫學(xué)與病原生物學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年特殊用途變壓器安裝與性能測試合同2篇
- 《浸沒式液冷冷卻液選型要求》
- 迪士尼樂園總體規(guī)劃
- 2024年江蘇省蘇州市中考數(shù)學(xué)試卷含答案
- 2024年世界職業(yè)院校技能大賽高職組“市政管線(道)數(shù)字化施工組”賽項考試題庫
- 介紹蝴蝶蘭課件
- 大學(xué)計算機(jī)基礎(chǔ)(第2版) 課件 第1章 計算機(jī)概述
- 數(shù)字化年終述職報告
- 2024年職工普法教育宣講培訓(xùn)課件
- 安保服務(wù)評分標(biāo)準(zhǔn)
- T-SDLPA 0001-2024 研究型病房建設(shè)和配置標(biāo)準(zhǔn)
- (人教PEP2024版)英語一年級上冊Unit 1 教學(xué)課件(新教材)
評論
0/150
提交評論