模版_性能測試計劃_第1頁
模版_性能測試計劃_第2頁
模版_性能測試計劃_第3頁
模版_性能測試計劃_第4頁
模版_性能測試計劃_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、網(wǎng)通壓力測試方案網(wǎng)通系統(tǒng)壓力測試方案微軟(中國)有限公司編建日期2002年4月9日編制人馮江、謝華芳版本控制版本日期作者備注v1.02002-4-9馮江、謝華芳目 錄一、概述41.1項目背景和測試目的41.2被測系統(tǒng)介紹41.3測試可接收條件5二、測試需求5三、測試方法53.1測試方法53.2測試案例93.3測試流程93.4數(shù)據(jù)文件準(zhǔn)備93.5測試腳本說明10四、測試環(huán)境104.1網(wǎng)絡(luò)拓?fù)鋱D104.2環(huán)境配置10五、測試實施115.1試資源與進度115.2 測試機構(gòu)和人員職責(zé)12六、試存儲管理規(guī)范136.1存儲內(nèi)容、地點、命名規(guī)則136.2存儲目錄結(jié)構(gòu)146.3備份14附錄1:Env_Chec

2、k_list15附錄2:測試工具原理16第20頁一、概述1.1 項目背景和測試目的為了保障網(wǎng)通即將建設(shè)的綜合營帳系統(tǒng)能夠順利實施,網(wǎng)通希望在項目正式實施前了解未來系統(tǒng)是否可以使用目前已經(jīng)選用的技術(shù)進行搭建,即了解項目技術(shù)的可行性。另外,網(wǎng)通還希望了解使用不同技術(shù)實現(xiàn)的差異。1.2 被測系統(tǒng)介紹本次被測系統(tǒng)是針對網(wǎng)通項目的一個前期實驗系統(tǒng)。系統(tǒng)邏輯結(jié)構(gòu)圖如下:圖1、系統(tǒng)邏輯結(jié)構(gòu)圖整個系統(tǒng)分為三個主要部分,主要功能包括:1. 系統(tǒng)A系統(tǒng)A是整個系統(tǒng)的數(shù)據(jù)入口,可以將客戶請求傳給Biztalk或者直接傳給系統(tǒng)B。系統(tǒng)A可以通過兩種方法接收客戶請求傳給系統(tǒng)。一種通過Tuexdo (A)接收用戶請求,另

3、一種可以直接通過WebLogic(A)接收用戶請求。2. BiztalkBiztalk是整個系統(tǒng)的中心,負(fù)責(zé)連接系統(tǒng)A和B,主要目的是同步處理系統(tǒng)消息。另外,由于測試需要,Biztalk本身可以接收用戶請求(Http)。3. 系統(tǒng) B可以看作系統(tǒng)的服務(wù)端。接收Biztalk的請求,并返回結(jié)果。1.3 測試可接收條件1、 每次測試交易成功率在90%以上2、 用戶每個請求的響應(yīng)時間低于2秒每次測試,以上條件必須同時滿足,方視為本次測試通過。二、測試需求本次測試的需求包括:1、 Biztalk系統(tǒng)的處理能力2、 整個系統(tǒng)能夠支持多少用戶同時訪問3、 不同技術(shù)間實現(xiàn)的差異三、測試方法3.1 測試方法測

4、試過程采用自動測試工具進行。目前暫時決定使用Mercury Interactive公司的測試產(chǎn)品:LoadRunner。1、 測試Biztalk系統(tǒng)的處理能力:圖2、測試Biztalk系統(tǒng)的處理能力模擬多個Web類型的虛擬用戶,同時向Biztalk系統(tǒng)發(fā)送HTTP請求,之后記錄每個虛擬用戶的響應(yīng)時間。2、 整個系統(tǒng)能夠支持多少用戶同時訪問方法一:模擬多個Web類型的虛擬用戶,同時向WebLogic(A)發(fā)送HTTP請求,之后記錄每個虛擬用戶的響應(yīng)時間。圖3、測試整個系統(tǒng)能夠支持多少用戶同時訪問(方法一)方法二:模擬多個Tuxedo類型的虛擬用戶(即模擬Tuxedo客戶端),同時向Tuxedo(

5、A)的服務(wù)發(fā)送Tuxedo請求,之后記錄每個虛擬用戶的響應(yīng)時間。圖4、測試整個系統(tǒng)能夠支持多少用戶同時訪問(方法二)3、不同技術(shù)間實現(xiàn)的差異方法一:模擬多個Tuxedo類型的虛擬用戶(即模擬Tuxedo客戶端),同時向Tuxedo(A)的服務(wù)發(fā)送Tuxedo請求,并且Tuxedo(A)發(fā)送的請求,不經(jīng)過Biztalk系統(tǒng),之后記錄每個虛擬用戶的響應(yīng)時間。圖5、測試不同技術(shù)間實現(xiàn)的差異(方法一)方法二:模擬多個Web類型的虛擬用戶,同時向WebLogic(A)的發(fā)送HTTP請求,并且WebLogic(A)發(fā)送的請求,不經(jīng)過Biztalk系統(tǒng),之后記錄每個虛擬用戶的響應(yīng)時間。圖6、測試不同技術(shù)間實

6、現(xiàn)的差異(方法二)3.2 測試案例測試目的虛擬用戶類型Case No.并發(fā)用戶數(shù)交易循環(huán)次數(shù)測試Biztalk系統(tǒng)的處理能力WEB001002003004整個系統(tǒng)能夠支持多少用戶同時訪問WEB005006007008TUXEDO009010011012不同技術(shù)間實現(xiàn)的差異WEB013014015016TUXEDO0170180190203.3測試流程正式測試過程如下:1、 確認(rèn)被測環(huán)境正常(Env_Check_list)2、 確認(rèn)測試環(huán)境設(shè)置(Env_Check_list)3、 開始測試4、 存儲測試結(jié)果5、 系統(tǒng)調(diào)試6、 應(yīng)用調(diào)試7、 環(huán)境維護3.4數(shù)據(jù)文件準(zhǔn)備數(shù)據(jù)文件名稱包含內(nèi)容說明數(shù)據(jù)量

7、3.5測試腳本說明腳本名稱描述(TranNo.:Tran名稱:解釋)參數(shù)說明(參數(shù):說明)數(shù)據(jù)(參數(shù):文件:方法)四、測試環(huán)境4.1網(wǎng)絡(luò)拓?fù)鋱D圖7、測試網(wǎng)絡(luò)拓?fù)鋱D4.2環(huán)境配置類型配置軟件被測系統(tǒng)服務(wù)器1服務(wù)器2服務(wù)器3測試系統(tǒng)測試機控制臺網(wǎng)絡(luò)五、測試實施5.1試資源與進度項目階段任務(wù)分解任務(wù)內(nèi)容完成標(biāo)準(zhǔn)責(zé)任人資源與時間項目啟動設(shè)立項目項目定義,規(guī)劃項目運作模式,編制項目計劃,組建項目班子與實施隊伍輸出項目計劃測試經(jīng)理0.5人天測試計劃和測試設(shè)計測試需求調(diào)研明確測試需求、測試目標(biāo)、界定測試范圍、任務(wù)和具體內(nèi)容雙方就測試需求達成共識測試人員微軟負(fù)責(zé)人0.5人天制定測試方案細(xì)化測試方案,定義測試范

8、圍,并定義各項測試活動和步驟,具體安排測試實施過程及測試進度輸出測試方案(初稿)測試經(jīng)理2人天測試方案評審對測試方案定義的功能、性能測試范圍、測試策略、測試組織實施過程、測試進度等進行評審輸出測試方案(討論稿),對測試方案中涉及的各項內(nèi)容達成共識微軟負(fù)責(zé)人測試經(jīng)理1人天測試準(zhǔn)備工作搭建應(yīng)用運行環(huán)境搭建應(yīng)用所需的環(huán)境,并建立測試數(shù)據(jù)庫應(yīng)用正常運行微軟負(fù)責(zé)人搭建測試運行環(huán)境搭建測試所需的環(huán)境,包括測試工具軟件、性能監(jiān)控軟件等各測試軟件正常運行測試人員1人天準(zhǔn)備測試數(shù)據(jù)準(zhǔn)備必要的功能及壓力測試所需的測試數(shù)據(jù)輸出測試數(shù)據(jù)準(zhǔn)備清單,并準(zhǔn)備好測試數(shù)據(jù)測試人員微軟開發(fā)人員1人天測試開發(fā)開發(fā)壓力測試腳本按照壓

9、力測試案例設(shè)計,開發(fā)測試腳本輸出可執(zhí)行的測試腳本測試人員1人天測試執(zhí)行預(yù)測試證明測試腳本可用,證明測試流程可用證明測試環(huán)境配置合理證明測試數(shù)據(jù)準(zhǔn)備充分按照預(yù)期可接收條件:運行2x2場景成功運行25x25場景成功微軟負(fù)責(zé)人微軟開發(fā)人員測試經(jīng)理1天系統(tǒng)調(diào)優(yōu)使系統(tǒng)運行在最佳狀態(tài)運行500或1000并發(fā)用戶場景,測試經(jīng)理和項目經(jīng)理直到認(rèn)為測試停止微軟負(fù)責(zé)人微軟開發(fā)人員測試經(jīng)理2天極限測試測試系統(tǒng)究竟能夠承受的業(yè)務(wù)量按照預(yù)期可接收條件,系統(tǒng)已經(jīng)不能承受測試人員1天壓力測試評估按照測試評估策略對性能進行評估,并對系統(tǒng)性能進行分析輸出性能測試評估報告測試評估總結(jié)總結(jié)輸出項目報告、相關(guān)文檔歸檔,安排后續(xù)工作輸

10、出項目報告測試人員5.2 測試機構(gòu)和人員職責(zé)角色任務(wù)網(wǎng)通項目經(jīng)理測試策略制定,管理協(xié)調(diào)測試項目經(jīng)理:測試組織、管理協(xié)調(diào)測試組測試執(zhí)行并協(xié)助進行結(jié)果分析開發(fā)專家業(yè)務(wù)指導(dǎo),調(diào)優(yōu)指導(dǎo)測試專家測試工具支持,測試方案審核系統(tǒng)專家系統(tǒng)恢復(fù)、系統(tǒng)問題顧問網(wǎng)通項目經(jīng)理測試項目經(jīng)理測試組開發(fā)專家專家組測試專家系統(tǒng)專家圖8、測試組織結(jié)構(gòu)圖六、試存儲管理規(guī)范6.1存儲內(nèi)容、地點、命名規(guī)則l 存儲內(nèi)容:a) 測試腳本b) 測試場景c) 測試結(jié)果d) 相關(guān)文檔e) 數(shù)據(jù)文件l 存儲地點:運行控制臺的主機硬盤上,存儲結(jié)構(gòu)見下面圖9。l 命名規(guī)則:a) 測試腳本LTscr_App_SubApp_version說明:LTsc

11、r:Load Test ScriptApp:業(yè)務(wù)名稱SubApp:子業(yè)務(wù)名稱( 可選)Version:腳本的版本號b) 測試場景LTsce_App_SubApp_ConCurrUser_Iteration說明:LTsce:Load Test ScenarioApp:業(yè)務(wù)名稱SubApp:子業(yè)務(wù)名稱( 可選)ConCurrUser:并發(fā)用戶數(shù)Iteration:每個用戶循環(huán)次數(shù)c) 測試結(jié)果LTres_ App_SubApp_ConCurrUser_Iteration _time說明:LTres:Load Test ResultApp:業(yè)務(wù)名稱SubApp:子業(yè)務(wù)名稱( 可選)ConCurrUs

12、er:并發(fā)用戶數(shù)Iteration:每個用戶循環(huán)次數(shù)Time:第幾次測試DF_LoadTest Script ScenarioPre_TestTestResultDate( MM_DD_YYYY) DocumentDataFile6.2存儲目錄結(jié)構(gòu)圖9、測試存儲結(jié)構(gòu)圖說明:Script:存儲測試腳本Scenario:存儲測試場景Result:存儲測試結(jié)果Document:存儲相關(guān)文檔DataFile:存儲數(shù)據(jù)文件6.3備份測試結(jié)果每天在測試結(jié)束后備份一次,將“D:LoadTest”目錄,全部備份到磁帶機或“AnyPCC: LoadTest_bak”附錄1:Env_Check_list 日期:2

13、002年_月_日_時_分 測試結(jié)果名稱:_檢查內(nèi)容如下:檢查項檢查人結(jié)論備注被測試系統(tǒng):Web Server清除Cache 和臨時文件Web Server重新啟動Application Server 清除Cache和臨時文件Application Server重新啟動DB Server清除新生成的記錄和臨時文件DB Server 重新啟動確認(rèn)應(yīng)用可以正常運行測試系統(tǒng):測試機清除臨時文件測試機重新啟動控制臺機器清除臨時文件控制臺機器重新啟動測試機LoadRunner RCL已經(jīng)啟動確認(rèn)測試機臨時空間大于1G Iteration次數(shù)設(shè)置正確不寫log確認(rèn)Proxy設(shè)置Simulate browse

14、r Cache enableDownload non-HTML resources enableSimulate a new user each iteration enable參數(shù)方法正確DNS Cache enableKeep-Alive enableConcurent connections = 4測試監(jiān)督簽字:_附錄2:測試工具原理Mercury Interactive 公司的客戶機/服務(wù)器系統(tǒng)的壓力測試工具LoadRunner,其工作原理為:通過一個中心控制點,在一個或幾個主機上同時模擬成百上千的實際用戶的操作,從而生成一致的、可測量的及可重復(fù)的系統(tǒng)負(fù)載,并記錄特定交易操作的響應(yīng)時間

15、。概要地說:首先錄制應(yīng)用程序的操作過程,測試工具會自動生成可執(zhí)行的腳本,該腳本運行起來,從服務(wù)器端看,就如同一個實際的用戶在進行操作,我們稱為虛擬用戶。然后,通過中心控制點(Controller)設(shè)置測試場景,控制許多個虛擬用戶在多臺Agent機器上同時運行,監(jiān)控運行狀態(tài),收集響應(yīng)時間等性能數(shù)據(jù)。l 使用虛擬用戶(Vuser)替代實際用戶每個模擬的用戶即為一個虛擬用戶,其實就是一個運行的測試腳本。LoadRunner在PC上主要有兩種Vuser:非圖形用戶界面的虛擬用戶(Non-GUI Vuser)和圖形用戶界面虛擬用戶(GUI Vuser)。Non-GUI Vuser是直接通過API調(diào)用和W

16、eb/Application/DB服務(wù)器進行交互的,它的腳本是直接向服務(wù)器提交請求的類C語言程序。多個Non-GUI Vuser可運行于一臺主機上。Vuser可通過Virtual User Generator來錄制生成,在錄制腳本中可以標(biāo)明某一活動(transaction)的開始和結(jié)束點,用于具體度量這一活動的響應(yīng)時間及性能,還可以在某一操作之前定義集結(jié)點(rendezvous),用于測試這一操作的多用戶并發(fā)。GUI Vuser模擬實際用戶運行應(yīng)用程序進行操作的情況,它的腳本記錄了客戶機上所有的界面操作。GUI Vuser可通過Mercury Interactive 公司的功能測試工具WinR

17、unner來錄制生成。由于本次壓力測試的目的是檢驗服務(wù)器對壓力的承載能力,因此建議通過在一臺主機上運行多個Non-GUI Vuser來模擬多用戶的活動進行壓力測試。l 測試腳本的參數(shù)化測試腳本反映的是錄制時輸入的數(shù)據(jù)的情況。但由于錄制操作可能引起原輸入數(shù)據(jù)狀態(tài)的變化,因此要修改測試腳本中的輸入數(shù)據(jù)及與其相關(guān)的數(shù)據(jù);而且為了更準(zhǔn)確地模擬真實系統(tǒng)的運作,輸入的數(shù)據(jù)及與其相關(guān)的數(shù)據(jù)就必須參數(shù)化,并且為該參數(shù)建立一個包含所有數(shù)據(jù)的參數(shù)文件。這樣當(dāng)模擬多用戶進行壓力測試時,就可控制每個虛擬用戶使用參數(shù)文件中的不同數(shù)據(jù)。通過中心控制點(Controller)管理虛擬用戶在中心控制點,定制測試場景,即將要在

18、測試會話中發(fā)生的事件。定制包括模擬的用戶個數(shù)、模擬用戶所在的主機、模擬用戶的動作等。在中心控制點控制場景的運行,管理所有虛擬用戶的活動,監(jiān)控虛擬用戶的狀態(tài),也可以無人照料地運行。場景執(zhí)行完后,可通過Controller的性能分析圖形和報表對結(jié)果數(shù)據(jù)進行分析。代理程序必須安裝在參與測試的每一臺主機上,當(dāng)場景開始運行,代理程序負(fù)責(zé)Controller與主機之間的通訊。l 使用自動生成的圖表和報表分析測試結(jié)果在每個測試場景運行完后,Controller自動收集服務(wù)器、網(wǎng)絡(luò)及客戶端的性能數(shù)據(jù),并以圖形和報表的形式顯示。其中包括服務(wù)器響應(yīng)Vuser以及transaction 提交的請求和任務(wù)的時間;在運

19、行期間的基于活動Vuser數(shù)目的transaction性能時間;服務(wù)器磁盤I/O、CPU使用情況,網(wǎng)絡(luò)延遲等數(shù)據(jù)。測試方法及步驟1、建立虛擬用戶(生成測試腳本)在LoadRunner的Virtual User Generator中錄制測試腳本,建立虛擬用戶,一般一個業(yè)務(wù)操作錄制成一個測試腳本,步驟如下:1) 根據(jù)應(yīng)用軟件的體系結(jié)構(gòu)、中間件、數(shù)據(jù)庫或客戶端與服務(wù)器之間的協(xié)議,選擇對應(yīng)的虛擬用戶類型,如:WEB、Oracle、Tuxedo、WinSocket等等;2) 指定要錄制的可執(zhí)行程序,開始錄制;3) 在Vuser init section 中記錄登錄應(yīng)用系統(tǒng)的過程;4) 在 Actions

20、 section中記錄功能操作過程,適當(dāng)加入事務(wù)(transaction)的開始與結(jié)束點(事務(wù)也可在腳本生成后,直接在腳本中加入)。當(dāng)需要記錄壓力測試過程中某一操作的響應(yīng)時間時,則在執(zhí)行這一操作前定義事務(wù)的開始點,并給這一事務(wù)命名,在操作結(jié)束后定義該事務(wù)的結(jié)束點;5) 在Vuser end section中記錄退出系統(tǒng)的過程;6) 回放測試腳本,檢驗測試腳本執(zhí)行的正確性(有可能要恢復(fù)錄制以前的數(shù)據(jù)狀態(tài),或進行必要的參數(shù)化)。2、 試腳本的參數(shù)化測試腳本反映的是錄制時輸入的數(shù)據(jù)的情況,但為了更準(zhǔn)確地模擬真實系統(tǒng)的運作,如模擬不同用戶的登錄,不同用戶查詢股票行情,不同用戶在做不同的股票交易等情況,

21、有些輸入的數(shù)據(jù)必須參數(shù)化,并且為該參數(shù)建立一個包含所有可能的數(shù)據(jù)的參數(shù)文件。這樣當(dāng)模擬多用戶進行壓力測試時,就可控制每個虛擬用戶使用參數(shù)文件中的不同數(shù)據(jù)。 參數(shù)的選擇、參數(shù)文件的定制具體根據(jù)應(yīng)用軟件的實際情況而定,但要保證錄制的腳本能夠順利地執(zhí)行回放,且完成相應(yīng)的業(yè)務(wù)功能。3、 定制壓力測試場景在LoadRunner的Controller中,定制壓力測試場景,也就是模擬一個多用戶并發(fā)的情況,包括:運行虛擬用戶的測試主機、在測試機上運行的虛擬用戶數(shù)、虛擬用戶運行的測試腳本、每個虛擬用戶的循環(huán)次數(shù)等等。1) 虛擬用戶并發(fā)數(shù):定義執(zhí)行某一測試腳本的虛擬用戶并發(fā)數(shù),則虛擬用戶并發(fā)總數(shù)為各腳本虛擬用戶并

22、發(fā)數(shù)之和;由于在運行測試腳本時,忽略了Think Time,因此一個虛擬用戶的操作是非常連貫的,其強度遠遠大于一個實際用戶的操作強度;另外,為了測試引起系統(tǒng)性能急劇下降的拐點和引起系統(tǒng)崩潰的崩潰點,并發(fā)的虛擬用戶數(shù)需逐漸增加,每次增加的數(shù)量可視測試的具體情況而定。2) 測試主機:選擇運行某一測試腳本的測試主機。3) 虛擬用戶執(zhí)行的腳本:選擇虛擬用戶執(zhí)行的測試腳本,即完成某一業(yè)務(wù)功能的測試腳本。4) Iteration Count:虛擬用戶運行測試腳本Actions section部分的循環(huán)次數(shù),增加循環(huán)次數(shù)是為了保證在某一稍長的時間段內(nèi)有一個穩(wěn)定的負(fù)載,這樣統(tǒng)計的結(jié)果才比較準(zhǔn)確。需要注意的是,

23、每臺測試機上所支持的虛擬用戶數(shù),與測試機的配置和錄制的應(yīng)用程序的大小有關(guān)。每臺測試機上運行的虛擬用戶數(shù)不能太多,因為如果太多的話,性能瓶頸將會出現(xiàn)在客戶端,那么測出的結(jié)果將毫無意義。4、 運行壓力測試場景在LoadRunner的Controller中,運行壓力測試場景,就可以控制測試機上的所有虛擬用戶并發(fā)進行相應(yīng)的操作。步驟為:1) 啟動測試機的Remote Command Launcher;2) 在Controller中使測試機處于“連接”狀態(tài);3) 在Controller中,對所有虛擬用戶發(fā)出初始化(initialize)命令,測試主機的RCL啟動Agent,并將虛擬用戶初始化,執(zhí)行測試腳

24、本中Vuser init section部分,使之登錄系統(tǒng);4) 在Controller中,對所有虛擬用戶發(fā)出運行(run)命令,通過測試主機的Agent運行各虛擬用戶,執(zhí)行測試腳本中的Actions section部分,在Controller端監(jiān)控虛擬用戶的狀態(tài)及執(zhí)行結(jié)果;5) 每個虛擬用戶按指定的循環(huán)次數(shù)執(zhí)行測試腳本中的Actions section部分,然后執(zhí)行Vuser end section部分,退出應(yīng)用系統(tǒng);6) 當(dāng)每一個虛擬用戶運行完成后,整個測試場景運行結(jié)束。在壓力測試場景執(zhí)行過程中,Controller會自動收集服務(wù)器、網(wǎng)絡(luò)及客戶端的性能數(shù)據(jù),以及各事務(wù)的響應(yīng)時間等。5、 監(jiān)控系統(tǒng)性能在測試場景運行過程中,我們需要監(jiān)控:1) 監(jiān)控運行虛擬用戶的客戶端的資源使用情況,使用Windows的性能監(jiān)視器監(jiān)控客戶端的CPU、Memory等資源使用情況,以防止性能瓶頸出現(xiàn)在客戶端;另外,可以在進行壓力測試的同時,在另外的客

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論