LoadRunner培訓(xùn)課件_第1頁
LoadRunner培訓(xùn)課件_第2頁
LoadRunner培訓(xùn)課件_第3頁
LoadRunner培訓(xùn)課件_第4頁
LoadRunner培訓(xùn)課件_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、LoadRunner 性能測(cè)試培訓(xùn),學(xué)習(xí)目標(biāo),學(xué)習(xí)目標(biāo) 性能測(cè)試是什么 性能測(cè)試的類型 Load Runner基礎(chǔ) 性能測(cè)試的范疇 性能指標(biāo)介紹 性能測(cè)試過程 性能調(diào)優(yōu)介紹,性能測(cè)試是什么?,定義 性能測(cè)試是通過自動(dòng)化的測(cè)試工具模擬多種正常、峰值以及異常負(fù)載條件來對(duì)系統(tǒng)的各項(xiàng)性能指標(biāo)進(jìn)行測(cè)試。 負(fù)載測(cè)試和壓力測(cè)試都屬于性能測(cè)試,兩者可以結(jié)合進(jìn)行。通過負(fù)載測(cè)試,確定在各種工作負(fù)載下系統(tǒng)的性能,目標(biāo)是測(cè)試當(dāng)負(fù)載逐漸增加時(shí),系統(tǒng)各項(xiàng)性能指標(biāo)的變化情況。壓力測(cè)試是通過確定一個(gè)系統(tǒng)的瓶頸或者不能接收的性能點(diǎn),來獲得系統(tǒng)能提供的最大服務(wù)級(jí)別的測(cè)試。 在線用戶數(shù) 在線用戶數(shù)是指同時(shí)登錄應(yīng)用系統(tǒng)的用戶數(shù)量。

2、該數(shù)據(jù)可通過檢查系統(tǒng)應(yīng)用與數(shù)據(jù)庫連接取得。 對(duì)于已投產(chǎn)系統(tǒng),該數(shù)量一般通過系統(tǒng)跟蹤監(jiān)控獲取。 新投產(chǎn)系統(tǒng)通過經(jīng)驗(yàn)值估算。,性能測(cè)試是什么?,并發(fā)用戶數(shù) 并發(fā)主要是針對(duì)服務(wù)器而言,是否并發(fā)的關(guān)鍵是看用戶操作是否對(duì)服務(wù)器產(chǎn)生了影響。因此,并發(fā)用戶數(shù)量的正確理解為:在同一時(shí)刻與服務(wù)器進(jìn)行了交互的在線用戶數(shù)量,這種交互既可以是單向的傳輸數(shù)據(jù),也可以是雙向的傳送數(shù)據(jù)。 并發(fā)用戶數(shù)是指系統(tǒng)運(yùn)行期間同一時(shí)刻進(jìn)行業(yè)務(wù)操作的用戶數(shù)量。 該數(shù)量取決于用戶操作習(xí)慣、業(yè)務(wù)操作間隔和單筆交易的響應(yīng)時(shí)間。 使用頻率較低的應(yīng)用系統(tǒng)并發(fā)用戶數(shù)一般為在線用戶數(shù)的5%左右。 使用頻率較高的應(yīng)用系統(tǒng)并發(fā)用戶數(shù)一般為主線用戶數(shù)的10

3、%左右。 交易 交易分為業(yè)務(wù)層面和技術(shù)層面兩種定義。 業(yè)務(wù)層面交易是指完成一次完整的業(yè)務(wù)操作,如進(jìn)行一次查詢、轉(zhuǎn)賬。 技術(shù)層面交易是指進(jìn)行一次應(yīng)用程序至應(yīng)用程序、或者應(yīng)用程序至數(shù)據(jù)庫的系統(tǒng)操作。 一般的一筆業(yè)務(wù)交易由多筆技術(shù)交易組成。根據(jù)業(yè)務(wù)交易的復(fù)雜度和系統(tǒng)應(yīng)用架構(gòu)的不同,其比例大致為1:2 -1:10,性能測(cè)試類型,負(fù)載測(cè)試 壓力測(cè)試 疲勞強(qiáng)度測(cè)試 大數(shù)據(jù)量測(cè)試,性能測(cè)試類型,負(fù)載測(cè)試(Load Test) 通過逐步增加系統(tǒng)負(fù)載,測(cè)試系統(tǒng)性能的變化,并最終確定在滿足性能指標(biāo)的情況下,系統(tǒng)所能承受的最大負(fù)載量的測(cè)試。 壓力測(cè)試(Stress Test) 通過逐步增加系統(tǒng)負(fù)載,測(cè)試系統(tǒng)性能的變

4、化,并最終確定在什么負(fù)載條件下系統(tǒng)性能處于失效狀態(tài),并以此來獲得系統(tǒng)能夠提供的最大服務(wù)級(jí)別的測(cè)試。 壓力測(cè)試是一種特定類型的負(fù)載測(cè)試。,性能測(cè)試類型,疲勞強(qiáng)度測(cè)試 通常是采用系統(tǒng)穩(wěn)定運(yùn)行情況下能夠支持的最大并發(fā)用戶數(shù)或者日常運(yùn)行用戶數(shù),持續(xù)執(zhí)行一段時(shí)間業(yè)務(wù),通過綜合分析交易執(zhí)行指標(biāo)和資源監(jiān)控指標(biāo)來確定系統(tǒng)處理最大工作量強(qiáng)度性能的過程。 疲勞強(qiáng)度測(cè)試可以反映出系統(tǒng)的性能問題,例如內(nèi)存泄漏等。 大容量測(cè)試(Volume Test) 對(duì)特定存儲(chǔ)、傳輸、統(tǒng)計(jì)、查詢業(yè)務(wù)的測(cè)試。,LoadRunner基礎(chǔ),LoadRunner常用的版本有哪些? V7.8 V8.0 V8.1 V9.0 V9.1 V9.5

5、V11 LoadRunner是那個(gè)公司的產(chǎn)品? Mecury公司,現(xiàn)為HP收購 世界500強(qiáng)的企業(yè)中,有75%的企業(yè)使用其產(chǎn)品 Test Director 9.0版本稱為QC(Mercury Quality Center) Win Runner Load Runner Quick Test Professional (QTP) Loadrunner支持哪些常用的插件? .net 和JBuilder 兩種插件 Loadrunner常用的開發(fā)語言是什么? C,LoadRunner基礎(chǔ),Loadrunner常用組件 Virtual User Generator(Vugen) 創(chuàng)建腳本 Control

6、ler 設(shè)計(jì)和運(yùn)行場(chǎng)景 Analysis 分析場(chǎng)景 Tuning Console(LoadRunner8.0以上) 調(diào)優(yōu),LoadRunner基礎(chǔ),Loadrunner支持哪些常用協(xié)議? Web(HTTP/HTML) Sockets .net 協(xié)議 web services 常用數(shù)據(jù)庫協(xié)議(ODBC,ORACLE,SQLSERVER 等) 郵件(SMTP、pop3) 其它協(xié)議,思考問題:,為什么LR錄完之后VuGen里產(chǎn)生不了腳本? B/S結(jié)構(gòu)的一定選擇WEB(HTTP/HTML)? C/S結(jié)構(gòu)的一定是WinSocket協(xié)議? JAVA 開發(fā)的C/S選擇什么 協(xié)議,C開發(fā)的B/S如何選擇協(xié)議?

7、,LoadRunner協(xié)議選擇,如何選擇協(xié)議? 很多人使用loadrunner錄制腳本時(shí)都得不到理想的結(jié)果,出現(xiàn)這種情況大多是由于錄制腳本時(shí)選擇了不當(dāng)?shù)膮f(xié)議。那我們?cè)阡浿颇_本前如何選擇合適的通信協(xié)議呢?用單協(xié)議還是雙協(xié)議? LoadRunner屬于應(yīng)用在客戶端的測(cè)試工具,在客戶端模擬大量并發(fā)用戶去訪問服務(wù)器,從而達(dá)到給服務(wù)器施加壓力的目的。所以說LoadRunner模擬的就是客戶端,其腳本代表的是客戶端用戶所進(jìn)行的業(yè)務(wù)操作,即只要腳本能表示用戶的業(yè)務(wù)操作就可以。 1.LR支持多種協(xié)議,請(qǐng)大家一定要注意,這個(gè)地方協(xié)議指的是你的Client端通過什么協(xié)議訪問的Server,Client一般是面向最

8、終使用者的,Server是第一層Server端,因?yàn)楝F(xiàn)在的體系架構(gòu)中經(jīng)常Server層也分多個(gè)層次,什么應(yīng)用層,什么數(shù)據(jù)層等等,LR只管Client如何訪問第一層Server. 2.特別要注意某些應(yīng)用,例如一個(gè)Web系統(tǒng),這個(gè)系統(tǒng)是通過ActiveX控件來訪問后臺(tái)的,IE只是一個(gè)容器,而ActiveX控件訪問后臺(tái)是通過COM/DCOM協(xié)議的,這種情況就不能使用Web協(xié)議,否則你什么也錄制不到,所以,LR工程師一定要了解應(yīng)用程序的架構(gòu)和使用的技術(shù)。3. 象HTTPS,一般來講一定要選擇多協(xié)議,但在選擇具體協(xié)議的時(shí)候一定只選Web協(xié)議,這時(shí)候才能作那個(gè)端口映射。,LoadRunner協(xié)議選擇,通常

9、協(xié)議選擇 1.對(duì)于常見的B/S系統(tǒng),選擇Web(Http/Html) 2.測(cè)一個(gè)C/S系統(tǒng),根據(jù)C/S結(jié)構(gòu)所用到的后臺(tái)數(shù)據(jù)庫來選擇不同的協(xié)議,如果后臺(tái)數(shù)據(jù)庫是sybase,則采用sybaseCTlib協(xié)議,如果是SQL server,則使用MS SQL server的協(xié)議,至于oracle 數(shù)據(jù)庫系統(tǒng),當(dāng)然就使用Oracle 2-tier協(xié)議。 3.對(duì)于沒有數(shù)據(jù)庫的C/S()這些可以選擇Windwos Sockets協(xié)議。 4.至于其他的ERP,EJB(需要ejbdetector.jar),選擇相應(yīng)的協(xié)議即可. 5. 一般可以使用Java vuser協(xié)議錄制由java編寫的C/S模式的軟件,

10、,當(dāng)其他協(xié)議都沒有用時(shí),只能使用winsocket協(xié)議,LoadRunner基礎(chǔ),設(shè)置Recording Options 選項(xiàng)?(以單協(xié)議http/html為例) 菜單tools-Recording Options進(jìn)入錄制的設(shè)置窗體 Recording標(biāo)簽頁:選用哪種錄制方式 Browser標(biāo)簽頁:瀏覽器的選擇 Recording Proxy 標(biāo)簽頁:瀏覽器上的代理設(shè)置 Advanced 標(biāo)簽頁:可以設(shè)置錄制時(shí)的think time,支持的字符集標(biāo)準(zhǔn)等 Correlation標(biāo)簽頁:手工設(shè)置關(guān)聯(lián),通過關(guān)聯(lián)可在測(cè)試執(zhí)行過程中保存動(dòng)態(tài)值。使用這些設(shè)置可以配置 VuGen 在錄制過程中執(zhí)行的自動(dòng)關(guān)聯(lián)

11、的程度。,LoadRunner基礎(chǔ),HTML-Based scrpt 和URL-Based scrpt 錄制的區(qū)別? 基于瀏覽器的應(yīng)用程序推薦使用HTML-Based scrpt。 不是基于瀏覽器的應(yīng)用程序推薦使用URL-Based scrpt。 如果基于瀏覽器的應(yīng)用程序中包含了Java scrpt并且該腳本 向服務(wù)器產(chǎn)生了請(qǐng)求,比如DataGrid的分頁按鈕等,也要使用URL-Based scrpt方式錄制。 基于瀏覽器的應(yīng)用程序中使用了HTTPS安全協(xié)議,使用URL-Based scrpt方式錄制。 錄制過程中不要使用瀏覽器的“后退”功能,LoadRunner對(duì)其支持不太好。,LoadRu

12、nner基礎(chǔ),創(chuàng)建腳本操作步驟: 啟動(dòng)VuGen:選擇需要新建的協(xié)議腳本,可以創(chuàng)建單協(xié)議,或是多協(xié)議腳本 點(diǎn)擊Start Record按鈕,輸入程序地址,開始進(jìn)行錄制 使用VuGen進(jìn)行錄制:創(chuàng)建的每個(gè) Vuser 腳本都至少包含三部分:vuser_init、一個(gè)或多個(gè) Actions 及vuser_end。錄制期間,可以選擇腳本中 VuGen 要插入已錄制函數(shù)的部分。運(yùn)行多次迭代的Vuser 腳本時(shí),只有腳本的Actions部分重復(fù),而vuser_init和vuser_end部分將不重復(fù),LoadRunner基礎(chǔ),完善腳本 插入事務(wù) 插入集合點(diǎn) 模擬用戶思考時(shí)間 參數(shù)化輸入 插入Text/I

13、mag 檢查點(diǎn) Run-Time Setting選項(xiàng),LoadRunner基礎(chǔ),插入事務(wù)(Transaction) 事務(wù)為衡量服務(wù)器的性能,需要定義事務(wù)。 LoadRunner 運(yùn)行到該事務(wù)的開始點(diǎn)時(shí),LR就會(huì)開始計(jì)時(shí),直到運(yùn)行到該事務(wù)的結(jié)束點(diǎn),這個(gè)事務(wù)的運(yùn)行時(shí)間在結(jié)果中會(huì)有反映。 插入事務(wù)操作可以在錄制過程中進(jìn)行,也可以在錄制結(jié)束后進(jìn)行。LR 運(yùn)行在腳本中插入不限數(shù)量的事務(wù)。 在菜單中單擊InsertStart Transaction后,輸入事務(wù)名稱,也可在錄制過程中進(jìn)行,在需要定義事務(wù)的操作后面插入事務(wù)的“結(jié)束點(diǎn)”。默認(rèn)情況下,事務(wù)的名稱列出最近的一個(gè)事務(wù)名稱。一般情況下,事務(wù)名稱不用修改

14、。事務(wù)的狀態(tài)默認(rèn)情況下是LR_AUTO。一般情況下,我們也不需要修改狀態(tài)的,LoadRunner基礎(chǔ),插入集合點(diǎn)(Rendezvous) 集合點(diǎn):如果腳本中設(shè)置集合點(diǎn),可以達(dá)到絕對(duì)的并發(fā),但是集合點(diǎn)并不是并發(fā)用戶的代名詞,設(shè)置結(jié)合點(diǎn)和不設(shè)置結(jié)合點(diǎn),需要看你站在什么角度上來看待并發(fā),是整個(gè)服務(wù)器,還是提供服務(wù)的一個(gè)事務(wù); 插入集合點(diǎn)是為了衡量在加重負(fù)載的情況下服務(wù)器的性能情況。 在測(cè)試計(jì)劃中,可能會(huì)要求系統(tǒng)能夠承受1000 人甚至更多同時(shí)提交數(shù)據(jù),在LR 中可以通過在提交數(shù)據(jù)操作前面加入集合點(diǎn),當(dāng)虛擬用戶運(yùn)行到提交數(shù)據(jù)的集合點(diǎn)時(shí),LR 就會(huì)檢查同時(shí)有多少用戶運(yùn)行到集合點(diǎn),從而達(dá)到測(cè)試計(jì)劃中的需求

15、。 具體的操作方法如下:在需要插入集合點(diǎn)的前面,點(diǎn)擊菜單InsertRendezvous,也可在錄制時(shí)按插入集合點(diǎn)按鈕 注意:集合點(diǎn)經(jīng)常和事務(wù)結(jié)合起來使用。集合點(diǎn)只能插入到Action 部分,vuser_init和vuser_end 中不能插入集合點(diǎn)。,LoadRunner基礎(chǔ),模擬用戶思考時(shí)間 用戶在執(zhí)行兩個(gè)連續(xù)操作期間等待的時(shí)間稱為“思考時(shí)間”。 Vuser 使用lr_think_time 函數(shù)模擬用戶思考時(shí)間。錄制 Vuser 腳本時(shí),VuGen 將錄制實(shí)際的思考時(shí)間并將相應(yīng)的 lr_think_time 語句插入到 Vuser 腳本。 可以編輯已錄制的 lr_think_time 語句

16、,也可在 腳本中手動(dòng)添加更多l(xiāng)r_think_time 語句。 以秒為單位指定所需的思考時(shí)間,LoadRunner基礎(chǔ),參數(shù)化 如果用戶在錄制腳本過程中,填寫提交了一些數(shù)據(jù),這些操作都被記錄到了腳本中。當(dāng)多個(gè)虛擬用戶運(yùn)行腳本時(shí),都會(huì)提交相同的記錄,這樣不符合實(shí)際的運(yùn)行情況,而且有可能引起沖突。為了真實(shí)的模擬實(shí)際環(huán)境,需要各種各樣的輸入。 錄制業(yè)務(wù)流程時(shí),VuGen 生成一個(gè)包含可以用參數(shù)替換已錄制的值。這被稱為腳本參數(shù)化。 參數(shù)化包含以下兩項(xiàng)任務(wù): 在腳本中用參數(shù)取代常量值。 設(shè)置參數(shù)的屬性以及數(shù)據(jù)源。 注意:不是所有的函數(shù)都可以參數(shù)化的。也可以將參數(shù)化的內(nèi)容進(jìn)行還原,LoadRunner基礎(chǔ)

17、,創(chuàng)建參數(shù)化 選中需要參數(shù)化的內(nèi)容,點(diǎn)擊右鍵,選擇 Replace with a parameter 在“參數(shù)名”框中鍵入?yún)?shù)的名稱,或從列表中選擇一個(gè)現(xiàn)有的參數(shù)名。 在從“參數(shù)類型”列表中選擇參數(shù)類型。 點(diǎn)擊屬性,設(shè)置參數(shù)屬性 也可以點(diǎn)擊菜單:VuserParameter List,進(jìn)行添加參數(shù),設(shè)置相應(yīng)的屬性,LoadRunner基礎(chǔ),參數(shù)的類型介紹 數(shù)據(jù)文件:文件(現(xiàn)有文件或者用 VuGen 或 MS Query 創(chuàng)建的文件)中包含的數(shù)據(jù) 分配內(nèi)部數(shù)據(jù):Vuser 內(nèi)部生成的數(shù)據(jù)。這包括日期/ 時(shí)間、組名、迭代編號(hào)、負(fù)載生成器名、隨機(jī)編號(hào)、唯一編號(hào)和 Vuser ID 用戶定義的函數(shù):使

18、用外部 DLL 函數(shù)生成的數(shù)據(jù),LoadRunner基礎(chǔ),參數(shù)化設(shè)置屬性界面,LoadRunner基礎(chǔ),參數(shù)屬性設(shè)置 定義選取列:表示指定選取哪一列的值 定義“列分隔符:用來分隔表格中的列的字符 選取下一個(gè)值的方式:表示在 Vuser 腳本執(zhí)行期間如何選擇表格數(shù)據(jù)。選項(xiàng)包括:“順序”、“隨機(jī)”和“唯一”。 從“更新值的時(shí)間”列表中選擇更新選項(xiàng)。選項(xiàng)包括“每次迭代”、“每次出現(xiàn)”和“一次”。,參數(shù)選項(xiàng)說明,1.參數(shù)更新方法: 每次出現(xiàn):指示Vuser在每次參數(shù)出現(xiàn)時(shí)使用新值。當(dāng)使用同一個(gè)參數(shù)的幾個(gè)語句不相關(guān)時(shí),該方法非常有用。例如,對(duì)于隨機(jī)數(shù)據(jù),在該參數(shù)每次出現(xiàn)時(shí)都使用新值可能是非常有用的。每次

19、迭代:指示Vuser為每次腳本迭代使用新值。如果一個(gè)參數(shù)在腳本中出現(xiàn)了若干次,則Vuser為整個(gè)迭代中所有出現(xiàn)的該參數(shù)使用同一個(gè)值。當(dāng)使用同一個(gè)參數(shù)的幾個(gè)語句相對(duì)時(shí),該方法非常有用。一次:指示Vuser在方案運(yùn)行期間僅對(duì)參數(shù)值更新一次。Vuser為所有出現(xiàn)的該參數(shù)和所有迭代使用同一個(gè)參數(shù)值。當(dāng)使用日期和時(shí)間時(shí),該類型可能會(huì)非常有用。,參數(shù)選項(xiàng)說明,2.“文件”類型參數(shù)選擇分配方法順序: 順序地向Vuser分配參數(shù)值。當(dāng)正在運(yùn)行的Vuser訪問數(shù)據(jù)表格時(shí),它將會(huì)提取下一個(gè)可用的數(shù)據(jù)行。如果在“更新 值的時(shí)間”列表框中指定了“每次迭代”,則Vuser將為每一次迭代從數(shù)據(jù)表格中提取下一個(gè)值。如果在“

20、更新值的時(shí)間”列表框中指定了“每次出現(xiàn)”,則Vuser將為每一次參數(shù)的出現(xiàn)從數(shù)據(jù)表格中提取下一個(gè)值,即使它在同一次迭代中。如果在“更新值的時(shí)間”列表框中指定了“一次”,則第一次迭代中分配的值就會(huì)在每個(gè)Vuser接下來所有的迭代中使用。 隨機(jī):當(dāng)測(cè)試開始運(yùn)行時(shí),“隨機(jī)”方法為每個(gè)Vuser分配一個(gè)數(shù)據(jù)表格中的隨機(jī)值。如果在“更新值的時(shí)間”列表框中指定了“每次迭代”,則Vuser將會(huì)為每一次迭代從數(shù)據(jù)表格中提取一個(gè)新的隨機(jī)值。如果在“更新值的時(shí)間”列表框中指定了“每次出現(xiàn)”,則Vuser將為每一次參數(shù)的出現(xiàn)從數(shù)據(jù)表格中提取一個(gè)新的隨機(jī)值,即使它在同一次迭代中。如果在“更新值的時(shí)間”列表框中指定了“

21、一次”,則第一次迭代中分配的隨機(jī)值就會(huì)在該Vuser的所有迭代中使用。唯一:為每一個(gè)Vuser的參數(shù)分配一個(gè)唯一的屬性值。如果在“更新值的時(shí)間”列表框中指定了“每次迭代”,則Vuser將為每一次迭代從數(shù)據(jù)表格中提取下一個(gè)唯一值。如果在“更新值的時(shí)間”列表框中指定了“每次出現(xiàn)”,則Vuser將會(huì)為每一次參數(shù)的出現(xiàn)從數(shù)據(jù)表格中提取一個(gè)新的唯一的值,即使它在同一次迭代中。如果在“更新值的時(shí)間”列表框中指定了“一次”,則第一次迭代中分配的唯一值就會(huì)在每個(gè)Vuser的所有接下來的迭代中使用。,LoadRunner基礎(chǔ),從現(xiàn)有數(shù)據(jù)庫中導(dǎo)入數(shù)據(jù) 通過 LoadRunner,可以從數(shù)據(jù)庫中導(dǎo)入數(shù)據(jù)以用于參數(shù)化

22、。您可以用下列兩種方法中的一種導(dǎo)入數(shù)據(jù): 新建查詢 指定 SQL 語句 VuGen 提供一個(gè)指導(dǎo)您完成從數(shù)據(jù)庫中導(dǎo)入數(shù)據(jù)的過程的向?qū)?。在該向?qū)е?,您可以指定如何?dǎo)入數(shù)據(jù)(通過 MS Query 新建查詢或者指定 SQL 語句)。 導(dǎo)入數(shù)據(jù)之后,它被另存為一個(gè)擴(kuò)展名為.dat 的文件,并且存儲(chǔ)為常規(guī)參數(shù)文件。,LoadRunner基礎(chǔ),插入Text/Image 檢查點(diǎn) 在進(jìn)行壓力測(cè)試時(shí),為了檢查Web 服務(wù)器返回的網(wǎng)頁是否正確,這些檢查點(diǎn)驗(yàn)證網(wǎng)頁上是否存在指定的Text 或者Image,還可以測(cè)試在比較大的壓力測(cè)試環(huán)境中,被測(cè)的網(wǎng)站功能是否保持正確。 操作步驟: 1、可以將視圖切換到TreeVi

23、ew 視圖 2、在樹形菜單中選擇需要插入檢查點(diǎn)的一項(xiàng),然后點(diǎn)鼠標(biāo)右鍵,選擇將檢查點(diǎn)插到該操作執(zhí)行前(Insert Before)還是執(zhí)行后(Insert After)。 3、在彈出對(duì)話框中選擇web Checks 下面的Image Check 或是 Text Check 4、對(duì)需要檢查點(diǎn)設(shè)置相關(guān)的屬性,LoadRunner基礎(chǔ),Controller 可以使用LoadRunner Controller來管理和維護(hù)方案。 LoadRunner使您可以從一個(gè)單一的控制點(diǎn)簡(jiǎn)單有效地控制所有的Vuser。,LoadRunner基礎(chǔ),創(chuàng)建運(yùn)行場(chǎng)景 使用集合點(diǎn) 運(yùn)行方案 監(jiān)視方案,LoadRunner基礎(chǔ),

24、Controller窗體介紹 Controller 窗口包含兩個(gè)選項(xiàng)卡 選擇“視圖”“顯示輸出”,則 Controller 將打開“輸出”窗口,會(huì)顯示方案執(zhí)行期間生成的錯(cuò)誤、警告、通知、調(diào)試和批處理消息。 設(shè)計(jì)視圖該視圖顯示方案中的所有 Vuser 組/ 腳本的列表、負(fù)載生成器計(jì)算機(jī)以及分配給每個(gè)組/ 腳本的 Vuser 數(shù)。還顯示有關(guān)方案計(jì)劃或目標(biāo)方案)的基本信息。 運(yùn)行視圖顯示有關(guān)運(yùn)行的 Vuser 和 Vuser 組的信息以及聯(lián)機(jī)監(jiān)視器圖。,LoadRunner基礎(chǔ),創(chuàng)建運(yùn)行場(chǎng)景 創(chuàng)建手動(dòng)方案 創(chuàng)建面向目標(biāo)的方案,LoadRunner基礎(chǔ),計(jì)劃方案 計(jì)劃定義 按方案計(jì)劃:定義整個(gè)方案的設(shè)

25、置?!凹訅骸边x項(xiàng)卡、“持續(xù)時(shí)間”選項(xiàng)卡、 “減壓”選項(xiàng)卡。 按組計(jì)劃:定義各個(gè)組的設(shè)置。從左側(cè)的框中,選擇 要計(jì)劃的 Vuser 組?!伴_始時(shí)間”選項(xiàng)卡、“加壓”選項(xiàng)卡、“持續(xù)時(shí)間”選項(xiàng)卡、“減壓”選項(xiàng)卡。 注意:Vuser 組設(shè)置不適用于百分比模式。,LoadRunner基礎(chǔ),創(chuàng)建手動(dòng)方案 通過創(chuàng)建并指定腳本、負(fù)載生成器和每個(gè)組中包括的Vuser數(shù),可以生成手動(dòng)方案。也可通過“百分比模式”定義要在方案中使用的Vuser的總數(shù),并為每個(gè)腳本分配負(fù)載生成器和占總數(shù)一定百分比的Vuser。 運(yùn)行場(chǎng)景描述在測(cè)試活動(dòng)中發(fā)生的各種事件。一個(gè)運(yùn)行場(chǎng)景包括一個(gè)運(yùn)行虛擬用戶活動(dòng)的Load Generator機(jī)

26、器列表,一個(gè)測(cè)試腳本的列表以及大量的虛擬用戶和虛擬用戶組??梢赃x擇下列兩種方法之一來創(chuàng)建方案:“手動(dòng)方案”或“面向目標(biāo)的方案”。在面向目標(biāo)的方案中,可以定義通過測(cè)試要實(shí)現(xiàn)的目標(biāo), LoadRunner 將根據(jù)這些目標(biāo)自動(dòng)生成方案。,LoadRunner基礎(chǔ),“加壓”選項(xiàng)卡 點(diǎn)擊Edit Schedule按鈕,即可進(jìn)入Schedule 設(shè)置窗口。 點(diǎn)擊New新增一個(gè)方案名稱要確定方案開始的方式,請(qǐng)單擊“加壓”選項(xiàng)卡。選擇下列選項(xiàng)之一: 同時(shí)加載所有的vuser:同時(shí)啟動(dòng)方案中的所有 Vuser。 啟動(dòng)xx個(gè)vuser,每x(時(shí)W分W秒):同時(shí)開始運(yùn)行指定數(shù)目的Vuser,并在兩次Vuser加壓之

27、間等待指定的時(shí)間。,LoadRunner基礎(chǔ),“持續(xù)時(shí)間”選項(xiàng)卡 要設(shè)置方案的持續(xù)時(shí)間,請(qǐng)單擊“持續(xù)時(shí)間”選項(xiàng)卡。 運(yùn)行直到完成 在加壓完成之后運(yùn)行x(時(shí)W分W 秒):所有 Vuser 都已加壓之后,再運(yùn)行方案約一段指定的時(shí)間。 無限期運(yùn)行 注意:持續(xù)時(shí)間設(shè)置將覆蓋 Vuser 迭代設(shè)置。這意味著,如果將持續(xù)時(shí)間設(shè)為五分鐘,那么 Vuser 將繼續(xù)在五分鐘時(shí)間內(nèi)運(yùn)行盡可能多的迭代,即使運(yùn)行時(shí)設(shè)置僅指定一次迭代。,LoadRunner基礎(chǔ),“減壓”選項(xiàng)卡 要確定方案停止的方式,請(qǐng)單擊“減壓”選項(xiàng)卡。 同時(shí)停止所有的Vuser:同時(shí)停止方案中的所有 Vuser。 停止x個(gè)Vuser,每x(時(shí)W 分

28、W 秒):在指定的時(shí)間段內(nèi)停止一定數(shù)目的Vuser。,LoadRunner基礎(chǔ),設(shè)置延遲方案開始時(shí)間 對(duì)于手動(dòng)和面向目標(biāo)的方案,您都可以指示LoadRunner 在稍后的某個(gè)時(shí)間點(diǎn)開始運(yùn)行方案。您可以指定讓 LoadRunner 自發(fā)出Run命令以來等待的分鐘數(shù),也可以指定讓方案開始的特定時(shí)間。 點(diǎn)擊Secnaion Stat Time按鈕,進(jìn)入Scenario Start Time 窗口,LoadRunner基礎(chǔ),選擇“按組計(jì)劃 ”選項(xiàng) 創(chuàng)建 Vuser 組后,您可以通過設(shè)置以下內(nèi)容,計(jì)劃該組的腳本執(zhí)行: 方案開始后,該組開始運(yùn)行之前,它必須等待的時(shí)間量 在指定時(shí)間段內(nèi)運(yùn)行的 Vuser 的

29、數(shù)量 在指定時(shí)間段內(nèi)將停止的 Vuser 的數(shù)量 該組運(yùn)行的時(shí)間量 注意:Vuser組設(shè)置不適用于百分比模式。,LoadRunner基礎(chǔ),“開始時(shí)間”選項(xiàng)卡 選擇下列三個(gè)選項(xiàng)之一: 在方案開始時(shí)啟動(dòng)組 在方案開始后x時(shí)啟動(dòng):運(yùn)行該組之前等待指定的時(shí)間量。 組x完成時(shí)啟動(dòng):指定的組結(jié)束運(yùn)行后開始運(yùn)行該組。,LoadRunner基礎(chǔ),加壓”選項(xiàng)卡 選擇下列選項(xiàng)之一: 同時(shí)加載所有的Vuser: 啟動(dòng)x個(gè)Vuser,每x(時(shí)W分W秒):同時(shí)開始運(yùn)行指定數(shù)目的Vuser,并在兩次 Vuser 加壓之間等待指定的時(shí)間。 注意:方案運(yùn)行時(shí),您可以在方案中添加Vuser 組,然后啟用它們。在逐漸加壓模式下,

30、如果在方案中的所有Vuser都加壓之后添加Vuser 組,則新的組將立即開始加載,LoadRunner基礎(chǔ),“持續(xù)時(shí)間”選項(xiàng)卡 選擇下列選項(xiàng)之一: 運(yùn)行直到完成 在加壓完成之后運(yùn)行x(時(shí)W 分W 秒) 初始化時(shí)間很長(zhǎng)的 Vuser 在可能方案結(jié)束之前無法達(dá)到“正在運(yùn)行”狀態(tài)。要確保所有的 Vuser 都在方案中運(yùn)行,請(qǐng)選中“運(yùn)行之前初始化所有的 Vuser”復(fù)選框。,LoadRunner基礎(chǔ),“減壓”選項(xiàng)卡 注意:僅當(dāng)在“持續(xù)時(shí)間”選項(xiàng)卡中選中了第二個(gè)選項(xiàng)時(shí),才適用“減壓”選項(xiàng)卡設(shè)置。 選擇下列選項(xiàng)之一: 同時(shí)停止所有的Vuser:同時(shí)停止組中的所有 Vuser。 停止x個(gè)Vuser,每x (

31、時(shí)W 分W 秒):在指定的時(shí)間段內(nèi)停止一定數(shù)目的Vuser。,LoadRunner基礎(chǔ),創(chuàng)建面向目標(biāo)的方案 在面向目標(biāo)的方案中,您可以定義您希望實(shí)現(xiàn)的測(cè)試目標(biāo), LoadRunner 將根據(jù)定義的目標(biāo)自動(dòng)為您創(chuàng)建一個(gè)方案。 在一個(gè)面向目標(biāo)的方案中,您可以定義五種類型的目標(biāo):虛擬用戶數(shù)、每秒點(diǎn)擊次數(shù)(僅 Web Vuser)、每秒事務(wù)數(shù)、每分鐘頁面數(shù)(僅 Web Vuser)或方案的事務(wù)響應(yīng)時(shí)間。 使用“編輯方案目標(biāo)”對(duì)話框可以對(duì)方案目標(biāo)進(jìn)行定義。 注意:要定義每秒事務(wù)數(shù)或事務(wù)響應(yīng)時(shí)間目標(biāo)類型,腳本中必須包含事務(wù)。對(duì)于每種目標(biāo)類型,您可以定義腳本中希望測(cè)試的事務(wù),LoadRunner基礎(chǔ),目標(biāo)的

32、種類 每次場(chǎng)景運(yùn)行只能設(shè)置一個(gè)目標(biāo)。 Virtual Users Goal:虛擬用戶目標(biāo)類型,需要測(cè)試多少人可以同時(shí)運(yùn)行Web Pages per Minute 、 Hits per Second、Transactions per Second:每分鐘頁面數(shù)和每秒點(diǎn)擊次數(shù)、事務(wù)響應(yīng)時(shí)間,Controller試圖使用最少的虛擬用戶來達(dá)到定義的目標(biāo)。如果使用最少的用戶,不能達(dá)到目標(biāo),增加用戶數(shù),直到定義的最大值。 Transactions Response Time:如果想知道在多少用戶并發(fā)訪問網(wǎng)站時(shí),事務(wù)的響應(yīng)時(shí)間達(dá)到性能指標(biāo)說明書中規(guī)定響應(yīng)時(shí)間的最大值。,LoadRunner基礎(chǔ),“方案設(shè)置”

33、選項(xiàng)卡 在“方案設(shè)置”選項(xiàng)卡中,您可以設(shè)置方案在達(dá)到目標(biāo)后繼續(xù)運(yùn)行的時(shí)間長(zhǎng)度,以及方案無法達(dá)到目標(biāo)時(shí)是否繼續(xù)。 達(dá)到目標(biāo)后再運(yùn)行:設(shè)置方案在達(dá)目標(biāo)后繼續(xù)運(yùn)行的時(shí)間長(zhǎng)度。 如果無法達(dá)到目標(biāo):選擇下面兩個(gè)選項(xiàng)中的一個(gè): 停止方案并保存結(jié)果:若無法達(dá)到您定義的目標(biāo),指示Controller 停止方案并保存方案結(jié)果。 繼續(xù)運(yùn)行方案,無需達(dá)到目標(biāo):指示 Controller 繼續(xù)運(yùn)行方案,即使無法達(dá)到設(shè)定的目標(biāo)。,LoadRunner基礎(chǔ),“加載行為”選項(xiàng)卡 加壓:選擇下列選項(xiàng)之一: 自動(dòng):指示 Controller運(yùn)行一批中默認(rèn)數(shù)量的Vuser 在x時(shí)間后達(dá)到目標(biāo):選擇 Controller 達(dá)到目標(biāo)

34、之前,方案運(yùn)行的時(shí)間。 漸進(jìn)速度(不可用于“每秒事務(wù)數(shù)”和“事務(wù)響應(yīng)時(shí)間”目標(biāo)類型):選擇增長(zhǎng)速度, Controller 將按照該速度達(dá)到您的目標(biāo)(X 時(shí)間內(nèi)的 X 虛擬用戶數(shù)/ 點(diǎn)擊次數(shù)/ 頁面數(shù))。 注:以上的說明是以選擇的目標(biāo)為Virtual Users為基礎(chǔ)的。選擇不同的目標(biāo),內(nèi)容會(huì)稍微有一點(diǎn)不同。,LoadRunner基礎(chǔ),使用集合點(diǎn) 在方案運(yùn)行期間,可以通過使用集合點(diǎn)指示多個(gè)Vuser同時(shí)執(zhí)行任務(wù)。 集合點(diǎn)可以在服務(wù)器上創(chuàng)建密集的用戶負(fù)載,并使LoadRunner 能夠測(cè)量服務(wù)器在負(fù)載狀態(tài)下的性能。 通過創(chuàng)建集合點(diǎn),可以確保多個(gè) Vuser 同步操作。當(dāng) Vuser 到達(dá)某個(gè)集合

35、點(diǎn)時(shí),它就會(huì)被 Controller 滯留在該處。當(dāng)達(dá)到要求的 Vuser 數(shù)或者經(jīng)過一段指定的時(shí)間后, Controller 就會(huì)從集合中釋放 Vuser。,LoadRunner基礎(chǔ),集合點(diǎn)創(chuàng)建過程 1、選擇“方案” “集合”。將打開“集合信息”對(duì)話框。 2、從“集合”框中選擇集合,然后單擊“策略”按鈕。將打開“策略”對(duì)話框,選擇策略 3、單擊“確定”保存設(shè)置,LoadRunner基礎(chǔ),設(shè)置集合策略 設(shè)置集合策略可以決定 Vuser 如何處理集合點(diǎn)。 釋放策略:設(shè)置一次有幾個(gè)Vuser從集合中釋放 超時(shí):從集合中釋放Vuser之前,Controller要等待多長(zhǎng)時(shí)間。每個(gè) Vuser 到達(dá)集

36、合點(diǎn)之LoadRunner 都會(huì)等待一個(gè)最大超時(shí)間隔,這個(gè)超時(shí)間隔是為下一個(gè)到達(dá)的Vuser 設(shè)置的。 如果下一個(gè) Vuser 沒能在超時(shí)時(shí)間內(nèi)到達(dá), Controller就會(huì)合中釋放所有 Vuser。 每當(dāng)有新 Vuser 到達(dá),計(jì)時(shí)器就會(huì)重置為零。默認(rèn)的超時(shí)是三十秒。,LoadRunner基礎(chǔ),運(yùn)行方案 運(yùn)行方案時(shí),會(huì)為Vuser組分配負(fù)載生成器并執(zhí)行它們的Vuser腳本。在方案執(zhí)行期間,LoadRunner將: 記錄在Vuser腳本中定義的事務(wù)的持續(xù)時(shí)間 執(zhí)行包括在Vuser腳本中的集合 收集Vuser生成的錯(cuò)誤、警告和通知消息 在方案運(yùn)行時(shí),您可以監(jiān)視每個(gè) Vuser、查看由 Vuse

37、r生成的錯(cuò)誤、警告和通知消息以及停止 Vuser 組和各個(gè)Vuser??梢灾甘?LoadRunner 允許單個(gè)Vuser或組中的Vuser在停止前完成它們正在運(yùn)行的迭代、在停止前完成它們正在運(yùn)行的操作或者立即停止運(yùn)行。,LoadRunner基礎(chǔ),監(jiān)視方案 可以使用 LoadRunner 聯(lián)機(jī)運(yùn)行時(shí)、事務(wù)、Web 資源、系統(tǒng)資源、網(wǎng)絡(luò)延遲、防火墻服務(wù)器資源、Web 服務(wù)器資源、Web 應(yīng)用程序服務(wù)器資源、數(shù)據(jù)庫服務(wù)器資源、流媒體資源、ERP/CRM 服務(wù)器資源、Java 性能、應(yīng)用程序部署和中間件性能監(jiān)視器來監(jiān)視方案執(zhí)行。 LoadRunner 提供下列聯(lián)機(jī)監(jiān)視器:“運(yùn)行時(shí)”監(jiān)視器顯示參與方案的

38、 Vuser 的數(shù)目和狀態(tài),以及 Vuser 所生成的錯(cuò)誤數(shù)量和類型。此外還提供用戶定義的數(shù)據(jù)點(diǎn)圖,其中顯示 Vuser 腳本中的用戶定義點(diǎn)的實(shí)時(shí)值。,LoadRunner基礎(chǔ),聯(lián)機(jī)監(jiān)視 默認(rèn)情況下, LoadRunner 的“運(yùn)行”視圖中將顯示四個(gè)圖:“正在運(yùn)行的Vuser”、“事務(wù)響應(yīng)時(shí)間”、“每秒點(diǎn)擊次數(shù)”和“Windows 資源”。通過單擊圖樹視圖中的其他圖并將其拖至圖視圖區(qū)域,可以顯示這些圖?;蛘?,可以使用“打開新圖”對(duì)話框打開新的圖 操作步驟: 1、右鍵單擊圖并選擇“打開新圖”。將打開“打開新圖”對(duì)話框。 2、單擊左窗格中的“+”號(hào)以展開圖樹,并選擇圖??梢栽凇皥D描述”框中查看該圖

39、的描述。 3、單擊“打開圖”該圖將顯示在圖視圖區(qū)域中。,LoadRunner基礎(chǔ),合并圖 通過 LoadRunner 可以將同一方案中的兩個(gè)圖的結(jié)果合并到一個(gè)圖中。通過合并,可以一次比較幾個(gè)不同的度量。疊加共用同一X 軸的兩個(gè)圖的內(nèi)容時(shí),合并圖左側(cè)的 Y 軸顯示當(dāng)前圖的值。右側(cè)的 Y 軸顯示合并圖的值。 要疊加兩個(gè)圖,請(qǐng)執(zhí)行下列操作: 1、右鍵單擊要疊加的某個(gè)圖,然后選擇“疊加圖”。將打開“疊加圖”對(duì)話框。 2、選擇要與當(dāng)前圖疊加的圖。該下拉列表僅顯示與當(dāng)前圖共用同一 X 軸的活動(dòng)圖。 3、輸入疊加圖的標(biāo)題。 4、單擊“確定”該合并圖將顯示在圖視圖區(qū)域中。,LoadRunner基礎(chǔ),關(guān)于系統(tǒng)資

40、源監(jiān)視 影響事務(wù)響應(yīng)時(shí)間的一個(gè)主要因素是系統(tǒng)資源使用率。使用 LoadRunner 資源監(jiān)視器,可以在方案運(yùn)行期間監(jiān)視計(jì)算機(jī)上的 Windows、UNIX、SNMP、AntaraFlame Thrower 和 SiteScope 資源,并可以確定特定計(jì)算機(jī)上為何出現(xiàn)瓶頸. 下面以對(duì)Windows為例進(jìn)行舉例,LoadRunner基礎(chǔ),Windows資源性能 1、將Windows 資源圖拖進(jìn)“運(yùn)行”視圖中。 2、右鍵單擊該圖并選擇“添加度量” ,在對(duì)話框的“監(jiān)視的服務(wù)器計(jì)算機(jī)”部分,單擊“添加”以輸入要監(jiān)視計(jì)算機(jī)的服務(wù)器名或 IP 地址。選擇計(jì)算機(jī)運(yùn)行的平臺(tái),單擊“確定”。 3、在“Window

41、s 資源”對(duì)話框的“資源度量”部分中,選擇要監(jiān)視的度量。 4、如果要選擇其他度量,請(qǐng)單擊“添加”。將打開一個(gè)顯示可用度量和服務(wù)器屬性的對(duì)話框。單擊“添加”將選定的計(jì)數(shù)器放到資源列表中。向該列表中添加所有需要的資源,然后單擊“關(guān)閉”。 5、在“Windows 資源”對(duì)話框中,單擊“確定”以激活監(jiān)視器。,性能測(cè)試的范疇,軟件性能的范疇較廣,通常包括執(zhí)行效率、資源占用、穩(wěn)定性、安全性、兼容性、可擴(kuò)展性、可靠性等。 用戶視角的軟件性能 從用戶角度來說,軟件性能就是軟件對(duì)用戶操作的響應(yīng)時(shí)間。2-5-10原則。 產(chǎn)品開發(fā)人員視角的軟件性能 架構(gòu)設(shè)計(jì)是否合理; 數(shù)據(jù)庫設(shè)計(jì)是否合理; 代碼是否存在性能方面的問

42、題; 系統(tǒng)中是否有不合理的內(nèi)存使用方式。,性能測(cè)試的范疇,系統(tǒng)管理員視角的軟件性能 系統(tǒng)運(yùn)行時(shí)服務(wù)器的狀態(tài),如CPU利用情況、內(nèi)存使用情況等; 系統(tǒng)是否能夠?qū)崿F(xiàn)擴(kuò)展; 系統(tǒng)支持多少用戶訪問; 系統(tǒng)的穩(wěn)定性,是否支持7*24小時(shí)的業(yè)務(wù)訪問。,性能測(cè)試指標(biāo)介紹,并發(fā)用戶數(shù) 響應(yīng)時(shí)間 交易成功率 Throughput(吞吐量) TPS(每秒傳輸率)與HPS(每秒點(diǎn)擊率) 資源利用率,性能測(cè)試指標(biāo),并發(fā)用戶數(shù)(最佳、最大) 應(yīng)用系統(tǒng)可支持的并發(fā)用戶數(shù)通常反映系統(tǒng)的容量,即系統(tǒng)的處理能力情況。 響應(yīng)時(shí)間 響應(yīng)時(shí)間指的是從開發(fā)端發(fā)起一個(gè)請(qǐng)求開始,到客戶端接收到從服務(wù)器端返回的響應(yīng)結(jié)束,這個(gè)過程所耗費(fèi)的時(shí)間

43、。,性能測(cè)試指標(biāo),交易成功率 交易成功率指的是一段時(shí)間內(nèi)成功的交易數(shù)在總交易數(shù)中所占的比例,金融行業(yè)應(yīng)用系統(tǒng)一般要求在99%以上。 吞吐量 吞吐量是指單位時(shí)間內(nèi)系統(tǒng)處理的客戶請(qǐng)求的數(shù)量,直接體現(xiàn)應(yīng)用系統(tǒng)的性能承載能力。,性能測(cè)試指標(biāo),TPS與HPS TPS:Transaction per second-指應(yīng)用系統(tǒng)每秒鐘處理完成的交易數(shù)量 是估算應(yīng)用系統(tǒng)性能的重要依據(jù)。 一般而言,評(píng)價(jià)系統(tǒng)性能均以每秒完成的技術(shù)交易的數(shù)量來衡量。 系統(tǒng)整體處理能力取決于處理能力最低模塊的TPS值。 HPS:Hit per second 每秒點(diǎn)擊次數(shù) 指一秒鐘的時(shí)間內(nèi)用戶對(duì)web頁面的鏈接、提交按鈕等點(diǎn)擊總和。 HPS一般與TPS成正比關(guān)系,是B/S系統(tǒng)中非常重要的性能指標(biāo)之一。,性能測(cè)試指標(biāo),資源利用率 資源利用率是指系統(tǒng)在負(fù)載運(yùn)行期間,數(shù)據(jù)庫服務(wù)器、應(yīng)用服務(wù)器、web服務(wù)器的CPU、內(nèi)存、硬盤、外置存儲(chǔ),網(wǎng)絡(luò)帶寬的使用率。 據(jù)經(jīng)驗(yàn),低于20%的利用率為資源空閑,20%-60%的使用率為資源使用穩(wěn)定,60%-80%的使用率表示資源使用飽和,超過80%的資源

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論