在這個(gè)快速發(fā)展的時(shí)代,伴隨著移動(dòng)互聯(lián)、大數(shù)據(jù)、云計(jì)算、AI技術(shù)的發(fā)展,單一的產(chǎn)品和服務(wù)已經(jīng)不能滿足用戶多樣化需求,多場(chǎng)景的發(fā)展,敏捷模式的轉(zhuǎn)變,混合云、微服務(wù)架構(gòu)逐步流行,用戶訪問(wèn)的隨機(jī)性逐漸提升,隨之而來(lái)的復(fù)雜系統(tǒng)性能故障問(wèn)題發(fā)生的可能性也就越來(lái)越高。然而,面對(duì)系統(tǒng)性能問(wèn)題,多數(shù)IT專業(yè)人員缺乏強(qiáng)有力的手段保障應(yīng)用系統(tǒng)的持續(xù)穩(wěn)定運(yùn)行,無(wú)法定位瓶頸的根源,沒(méi)有處理性能問(wèn)題的統(tǒng)一處理流程和最佳實(shí)踐,很難對(duì)企業(yè)整體應(yīng)用性能進(jìn)行追蹤和預(yù)警,無(wú)法預(yù)判性能危機(jī)。
國(guó)內(nèi)市場(chǎng)上常用的國(guó)外的性能測(cè)試工具,協(xié)議支持豐富,使用較廣泛,并且大多數(shù)在國(guó)內(nèi)的網(wǎng)站上有破解版本,但因?yàn)槭菄?guó)外軟件,不符合信創(chuàng)要求,不能自主可控,不適配國(guó)產(chǎn)操作系統(tǒng),存在合規(guī)風(fēng)險(xiǎn),無(wú)法進(jìn)行產(chǎn)品升級(jí),存在升級(jí)隱患。而國(guó)內(nèi)的性能測(cè)試工具基本上都是基于國(guó)外開(kāi)源軟件二次開(kāi)發(fā),存在開(kāi)源許可證協(xié)議風(fēng)險(xiǎn)或安全漏洞風(fēng)險(xiǎn),大都只能支持web,且對(duì)操作者技術(shù)水平要求高,只能解決部分壓測(cè)問(wèn)題。
因此,一款高效易用的性能測(cè)試工具——AI性能一體化保障平臺(tái)XRunner應(yīng)運(yùn)而生。
1、概述
XRunner 是一款不基于開(kāi)源測(cè)試軟件二次開(kāi)發(fā)的國(guó)產(chǎn)自研產(chǎn)品。作為具有極高規(guī)模適應(yīng)性的企業(yè)級(jí)自動(dòng)負(fù)載測(cè)試工具,可以使用XRunner 更早、更準(zhǔn)確地進(jìn)行性能測(cè)試。XRunner不僅提供企業(yè)級(jí)的性能測(cè)試能力,而且還具備超大規(guī)模并發(fā)、全鏈路壓測(cè)、云網(wǎng)一體化性能定位等特色功能。
作為具有國(guó)際先進(jìn)水平的新一代國(guó)產(chǎn)化性能測(cè)試軟件套件產(chǎn)品,XRunner在AI自動(dòng)化、混合云、高性能測(cè)試算力等多項(xiàng)關(guān)鍵技術(shù)方面取得了重大突破,打破了發(fā)達(dá)國(guó)家在工業(yè)級(jí)測(cè)試軟件領(lǐng)域的壟斷,是首個(gè)全面支持信創(chuàng)環(huán)境的高水平性能一體化保障平臺(tái),其核心技術(shù)獲得了廣東省科技進(jìn)步二等獎(jiǎng)和十余項(xiàng)發(fā)明專利。
XRunner是廣州掌動(dòng)智能科技有限公司自主研發(fā)的一款國(guó)產(chǎn)性能保障企業(yè)版軟件,支持永久和訂閱兩種方式授權(quán)。
2、測(cè)試對(duì)象
XRunner的測(cè)試對(duì)象是整個(gè)應(yīng)用系統(tǒng),包括不限于HTTP/HTTPS請(qǐng)求、接口、中間件、數(shù)據(jù)庫(kù)、服務(wù)器。通過(guò)模擬實(shí)際用戶的操作行為并進(jìn)行實(shí)時(shí)性能監(jiān)測(cè),查找和發(fā)現(xiàn)應(yīng)用系統(tǒng)性能問(wèn)題。
3、主要功能
1.性能測(cè)試
(1)性能測(cè)試的國(guó)產(chǎn)化行業(yè)標(biāo)準(zhǔn)軟件
● 使用數(shù)以千計(jì)的虛擬用戶模擬真實(shí)用戶
● 從一個(gè)控制點(diǎn)對(duì)系統(tǒng)生成準(zhǔn)確的、可衡量和可重復(fù)的負(fù)載
● 定位系統(tǒng)中的性能瓶頸
(2)確保持續(xù)高并發(fā),可重復(fù)的流程
● 模擬生產(chǎn)環(huán)境工作負(fù)載
● 測(cè)試廣泛的應(yīng)用
● 識(shí)別性能瓶頸
● 診斷根源問(wèn)題
● 優(yōu)化部署性能
(3)架構(gòu)圖
XRunner涵蓋了腳本生成,場(chǎng)景設(shè)置,性能監(jiān)控,報(bào)告生成等全流程功能。
● 壓測(cè)管理器(XServer):負(fù)責(zé)性能測(cè)試的整體管理和調(diào)度。其主要功能包含:
1 項(xiàng)目管理:創(chuàng)建測(cè)試項(xiàng)目和測(cè)試人員,設(shè)定測(cè)試人員角色和權(quán)限,并在項(xiàng)目中添加/刪除成員。
2 用例管理:負(fù)責(zé)測(cè)試腳本的生成和調(diào)試,參數(shù)文件的維護(hù),外部擴(kuò)展包的管理。
3 任務(wù)管理:負(fù)責(zé)創(chuàng)建測(cè)試場(chǎng)景,制定測(cè)試策略,設(shè)置監(jiān)控對(duì)象,以及測(cè)試計(jì)劃運(yùn)行。
4 數(shù)據(jù)分析:利用收集到的監(jiān)控?cái)?shù)據(jù),進(jìn)行比較,聚合分析和分類展示,并生成最終測(cè)試報(bào)告。
● 負(fù)載生成器(Load Agent):負(fù)責(zé)產(chǎn)生虛擬用戶,運(yùn)行性能測(cè)試腳本并對(duì)被測(cè)系統(tǒng)進(jìn)行性能加壓。采取分布式架構(gòu),并發(fā)執(zhí)行用戶場(chǎng)景,并將統(tǒng)計(jì)指標(biāo)數(shù)據(jù)及日志返回到XServer。
● 監(jiān)控代理期(Monitor Agent):可以安裝在服務(wù)器系統(tǒng)里,也可以采用無(wú)代理安裝方式,監(jiān)控服務(wù)器系統(tǒng)指標(biāo)(cpu、內(nèi)存、I/O、吞吐量等指標(biāo)),實(shí)時(shí)將系統(tǒng)運(yùn)行指標(biāo)返回給XServer。
2.監(jiān)控/撥測(cè)
支持以下自動(dòng)化測(cè)試:
● HTTP接口監(jiān)控
定時(shí)輪訓(xùn)檢測(cè)被測(cè)系統(tǒng)的接口是否正常,支持告警。
● UI或協(xié)議腳本監(jiān)控
定時(shí)輪訓(xùn)檢測(cè)被測(cè)系統(tǒng)的業(yè)務(wù)(使用瀏覽器或其他協(xié)議)是否正常,支持告警。
● 移動(dòng)APP業(yè)務(wù)監(jiān)控
定時(shí)輪訓(xùn)檢測(cè)被測(cè)系統(tǒng)的業(yè)務(wù)(使用真實(shí)手機(jī)APP)是否正常,支持告警。
● ping監(jiān)控
通過(guò)ping定時(shí)輪訓(xùn)檢測(cè)被測(cè)系統(tǒng)是否正常。
3.代碼級(jí)根源分析精準(zhǔn)定位性能瓶頸
Pinpoint與XRunner集成實(shí)現(xiàn)以下功能:
● 系統(tǒng)架構(gòu)拓?fù)渥詣?dòng)發(fā)現(xiàn)
● 從最終用戶響應(yīng)時(shí)間到較慢的 方法和SQL查詢的交易可追蹤性
● 故障快速定位
● 各個(gè)調(diào)用環(huán)節(jié)的性能分析
● 數(shù)據(jù)分析
● 生成服務(wù)調(diào)用拓?fù)鋱D
4.支撐性能中心組建方案
XRunner是一個(gè)面向全球分布式團(tuán)隊(duì)的協(xié)作性能測(cè)試平臺(tái),能夠管理多個(gè)并發(fā)的性能測(cè)試項(xiàng)目,無(wú)論是在內(nèi)部部署還是在云中。 通過(guò)XRunner Pro.,地理上分散的測(cè)試團(tuán)隊(duì)跨大規(guī)模性能測(cè)試項(xiàng)目進(jìn)行協(xié)作,通過(guò)集中的web訪問(wèn)、資產(chǎn)共享、實(shí)時(shí)測(cè)試觀測(cè)和調(diào)度,以優(yōu)化資源利用率,節(jié)省時(shí)間。
4、性能測(cè)試技術(shù)特點(diǎn)
1.跨平臺(tái)能力
純JAVA實(shí)現(xiàn),能運(yùn)行在各種不同操作系統(tǒng),包括Windows,Linux,Mac,完全適配國(guó)內(nèi)信創(chuàng)環(huán)境。
2.仿真能力
仿真度就是性能測(cè)試工具模擬客戶端向服務(wù)端下發(fā)請(qǐng)求與客戶端的相似程度的能力,仿真度越高,測(cè)試獲得的結(jié)果越可信。 XRunner的協(xié)議仿真能力幾乎可以做到與真實(shí)瀏覽器相同。與業(yè)界同類產(chǎn)品相比,是仿真能力最高的產(chǎn)品。
3.同時(shí)支持協(xié)議模擬和客戶端模擬
協(xié)議模擬就是通過(guò)模擬客戶端與服務(wù)端的通信協(xié)議的交互行為,而客戶端模擬是性能測(cè)試工具間接的模擬客戶端向服務(wù)端下發(fā)請(qǐng)求協(xié)議,它是通過(guò)驅(qū)動(dòng)客戶端界面操作,由客戶端程序向服務(wù)端下發(fā)請(qǐng)求協(xié)議。XRunner是目前業(yè)界唯一一款同時(shí)支持兩種模擬方式的性能測(cè)試工具。
4.支持多種協(xié)議能力
XRunner支持的協(xié)議類型豐富,包括:HTTP/1 (WEB/HTML/API)、HTTP/2 (WEB/HTML/API)、WebService、WebSocket (RFC 6645)、SIP (IMS)、RTSP (VoD)、RTMP、Text (Socket)、Binary (Socket)、JDBC (Database)、FTP/SFTP、JMS、XML、XMPP、IGMP (BTV)、MLD (BTV)、JAVA。是協(xié)議支持最全面的國(guó)產(chǎn)性能測(cè)式工具。
5.自定義協(xié)議擴(kuò)展
通過(guò)JAVA api方便實(shí)現(xiàn)其他非標(biāo)協(xié)議的壓測(cè)腳本生成,對(duì)使用者全透明。
6.腳本錄制
腳本錄制支持四種模式(瀏覽器代理、pcap抓包文件導(dǎo)入、har文件導(dǎo)入、網(wǎng)卡實(shí)時(shí)抓包、手工創(chuàng)建),支持的瀏覽器不與具體的版本號(hào)綁定更加靈活。
7.腳本調(diào)試
腳本調(diào)試可以查看到每一步的響應(yīng)碼、時(shí)間以及回放與錄制時(shí)間內(nèi)容對(duì)比,回放完成后可以進(jìn)行自動(dòng)關(guān)聯(lián)分析、手工關(guān)聯(lián)以及頁(yè)面驗(yàn)證等多種手段保證腳本回放的正確性。
8.支持多種并發(fā)模型
支持三大模型:線程模型、速率/秒(Caps)、在線用戶數(shù)/秒,共19種并發(fā)模型設(shè)置,是業(yè)界支持并發(fā)模型最多的性能測(cè)試工具,適用于多種不同的場(chǎng)景。
9.支持高并發(fā)
性能測(cè)試:通過(guò)部署多臺(tái)執(zhí)行機(jī)滿足高并發(fā)性能測(cè)試的需求,可以支持百萬(wàn)和千萬(wàn)級(jí)別的性能壓力測(cè)試。相同的并發(fā)量,比業(yè)界知名的性能測(cè)試工具要節(jié)省資源,在100并發(fā)的場(chǎng)景下,性能指標(biāo)要優(yōu)10%。
10.資源監(jiān)控能力
XRunner支持監(jiān)控的性能指標(biāo)非常豐富,幾乎包含了客戶關(guān)心的所有性能指標(biāo)(支持監(jiān)控的性能指標(biāo)數(shù)量100+),并支持對(duì)虛擬用戶分析,包括請(qǐng)求響應(yīng)時(shí)間與事務(wù)時(shí)間、時(shí)間支持90% 80%、第一個(gè)Buffer時(shí)間、 TCP建立時(shí)間。可以幫助測(cè)試和開(kāi)發(fā)人員快速的找到被測(cè)試系統(tǒng)的問(wèn)題,通過(guò)這些指標(biāo)可以精確定位性能問(wèn)題,如:HTTP的首分片時(shí)間,可以很好的區(qū)分網(wǎng)絡(luò)問(wèn)題和服務(wù)端問(wèn)題。
5、核心優(yōu)勢(shì)
1.完全自主可控
非開(kāi)源產(chǎn)品改造,不是基于開(kāi)源產(chǎn)品換殼產(chǎn)品,全自主開(kāi)發(fā),自主可控。取得統(tǒng)信操作系統(tǒng)和麒麟操作系統(tǒng)的適配認(rèn)證;包括各類國(guó)產(chǎn)CPU架構(gòu)(龍芯、鯤鵬、飛騰、申威、兆芯、海光)的適配認(rèn)證。
2.全線國(guó)產(chǎn)化產(chǎn)品支持
對(duì)國(guó)產(chǎn)數(shù)據(jù)庫(kù)、中間件、操作系統(tǒng)進(jìn)行了針對(duì)性適配、一站式壓測(cè)以及性能基線獲取,支持主流網(wǎng)絡(luò)協(xié)議和開(kāi)發(fā)框架,專門的適配開(kāi)發(fā)人員和國(guó)產(chǎn)廠家協(xié)同開(kāi)發(fā),確保國(guó)產(chǎn)支持力度。
3.強(qiáng)大而靈活的參數(shù)化功能
具有廣泛的平臺(tái)支持和良好的編程支持能力,支持Windows、Linux、Unix等交行常見(jiàn)的主流平臺(tái);提供發(fā)送與接收接口,具有自定義實(shí)現(xiàn)接口代碼,對(duì)請(qǐng)求消息進(jìn)行處理(如加密、計(jì)算),對(duì)響應(yīng)消息進(jìn)行解析(如解密、提取參數(shù)、計(jì)算結(jié)果)。
4.易用性強(qiáng)
在有限的時(shí)間和環(huán)境內(nèi)完成性能測(cè)試工作,可以使正式的壓力測(cè)試工作縮短50%以上的時(shí)間。
5.實(shí)時(shí)的性能數(shù)據(jù)捕獲和呈現(xiàn)
具備功能豐富的服務(wù)器監(jiān)控功能,能夠監(jiān)測(cè)系統(tǒng)各層面的每一部件的性能,記錄整個(gè)系統(tǒng)所有性能數(shù)據(jù)。
6.方便快捷的性能數(shù)據(jù)分析和報(bào)告
集中收集所有在測(cè)試周期中產(chǎn)生的數(shù)據(jù),并具備數(shù)據(jù)分析功能,可以查看到錯(cuò)誤日志信息,各種指標(biāo)的源數(shù)據(jù),并自動(dòng)匯總成為概要報(bào)告,而在虛擬用戶行為分析上,可以統(tǒng)計(jì)輸出每個(gè)虛擬用戶匯總報(bào)告、過(guò)濾成功或失敗用戶定位問(wèn)題,每個(gè)URL響應(yīng)時(shí)間、成功率、失敗率的統(tǒng)計(jì)分析報(bào)告,支持輸出DNS、TCP、首個(gè)分片、完整時(shí)間事務(wù)的各種響應(yīng)時(shí)間,形成全面的診斷報(bào)告。
7.支持代碼級(jí)診斷
提供應(yīng)用性能和應(yīng)用層次根源之間的關(guān)聯(lián),特別針對(duì)J2EE的診斷分析可以鑒別一系列的問(wèn)題;通過(guò)實(shí)現(xiàn)監(jiān)控與代碼追蹤,以便性能測(cè)試出現(xiàn)問(wèn)題時(shí),快速定位到被測(cè)系統(tǒng)代碼BUG或性能比較慢的方法。
8.其他特點(diǎn)
腳本執(zhí)行廣泛的環(huán)境覆蓋、高效的壓測(cè)能力、靈活的數(shù)據(jù)驅(qū)動(dòng)能力、自動(dòng)化的動(dòng)態(tài)關(guān)聯(lián)功能、良好的腳本可擴(kuò)展性、分布式壓力加載模式、支持圖形界面級(jí)別錄制腳本和壓力回放、支持音頻視頻的壓力測(cè)試。
9.專項(xiàng)特色
● 視頻測(cè)試解決方案:
提供HLS/DASH/HSS多種HTTP視頻技術(shù)的自動(dòng)化測(cè)試與性能并發(fā)測(cè)試;提供RTMP、RTSP、SIP等視頻技術(shù)的自動(dòng)化與性能并發(fā)測(cè)試,助您快速保障視頻系統(tǒng)的高質(zhì)量商用。
● VoIP測(cè)試解決方案:
提供SIP、MSRP、H248多種通信協(xié)議的自動(dòng)化測(cè)試與性能并發(fā)測(cè)試;支持音視頻媒體流發(fā)送與指標(biāo)分析、IP欺騙的端到端測(cè)試能力,助您快速保障VoIP系統(tǒng)的高質(zhì)量商用。
6、運(yùn)行環(huán)境
跨平臺(tái)兼容適配,包括windows、linux、國(guó)產(chǎn)操作系統(tǒng)。取得統(tǒng)信操作系統(tǒng)和麒麟操作系統(tǒng)的適配認(rèn)證;包括各類國(guó)產(chǎn)CPU架構(gòu)(龍芯、鯤鵬、飛騰、申威、兆芯、海光)的適配認(rèn)證。