摘要: PTS(Performance Testing Service)是web化、卓越的SaaS性能測試平臺,具有強大的分佈式壓測能力,可模擬海量用戶的真實業務場景。PTS鉑金版的壓力發起來源是遍及全國上百個城市和各運營商的CDN節點,相比業界產品啓動更快速,來源更普遍,脈衝能力和流量掌控能力更強。web
PTS(Performance Testing Service)是web化、卓越的SaaS性能測試平臺,具有強大的分佈式壓測能力,可模擬海量用戶的真實業務場景。PTS鉑金版的壓力發起來源是遍及全國上百個城市和各運營商的CDN節點,相比業界產品啓動更快速,來源更普遍,脈衝能力和流量掌控能力更強。PTS鉑金版在功能上有強大的可視化編排能力,自然支持參數的傳遞,有一系列的可擴展指令,用於登錄態的共享、思考時間的模擬、流量集合的構造等等。分佈式
近期,PTS鉑金版發佈了壓測API層面的數據工廠功能,用戶再也不須要自行構造完整的請求體或者請求頭併疊加成全部的請求數據,而是基於單個例子,選中進行參數格式化便可,PTS給用戶提供了大量可擴展的函數,函數也能夠嵌套使用,同時用戶依舊能夠上傳本身的數據文件,結合PTS提供的函數功能進行數據的構造生成。函數
壓測API是目前鏈路的一個升級,主要是結合了數據工廠的能力,同時名稱上也更便於理解。API是一條由用戶行爲觸發的端上請求,以電商中登錄、查詢商品詳情、提交訂單等爲例,分別對應用戶一次行爲中的多個請求API。API是一次場景壓測中必不可少的元素,用來定義一個串聯鏈路中每一個階段URL的具體信息。壓測API包括如下信息元素:性能
基本配置:包括API名稱、協議類型、超時時間和 請求類型 等基礎配置;測試
API名稱:標識該API表示的含義,如獲取商品列表數據,要求少於 50 個字;3d
協議類型:目前支持 HTTP 和 HTTPS;orm
超時時間:請求發送出去以後該虛擬用戶等待應答響應的最長時間,單位爲毫秒,默認值 5000,即 5 秒;blog
請求類型:HTTP 請求的 method,能夠選擇 POST 或者 GET;資源
API入參定義(非必填):支持上傳文件和佔位符兩種定義,前者支持csv文件上傳一些必要的數據集,好比username和passwd,後者用於在串聯鏈路中與前面的出參關聯達到參數傳遞的目的;字符串
壓測URL定義:發送請求的 URL 地址,好比 http://域名/路徑 。也能夠包含參數的部分,如 http://域名/路徑?key1=value1&key2=value2 ,選中value的部分可點擊進行參數格式化設置,可將入參(有的話)、系統提供函數進行搭配生成想要的數據;
Body定義(非必填):若是請求類型爲POST,可在Body中選中某些value的部分進行參數格式化定義,同上;
Header定義(非必填):定義每條壓測請求中的Header信息,能夠手工輸入也能夠進行參數格式化設置;
API出參(斷言)定義(非必填):定義出參(可做爲鏈路後續的入參)及斷言(業務成功與否)條件,出參支持的形式有Body:JSON、Body:TEXT、Header:K/V 和 Cookie:K/V;
上述配置信息中,「基礎配置」及「壓測URL定義」是每一個API的必填項,其餘4項做爲知足不一樣API的選擇項。
那麼,有了數據工廠以後的一次壓測API的配置過程是怎樣的,下面進行下簡要介紹。登陸 PTS 控制檯,在控制檯左側菜單欄選擇壓測API,進入API列表頁。單擊頁面右上角新增壓測API按鈕,進入新增鏈路頁面。 輸入API名稱,選擇協議及請求類型,肯定超時時間:
部分時候,只須要對簡單的批量讀請求(好比打開 http://www.taobao.com )作壓測,僅使用相同的URL作批量請求便可,那麼直接在URL定義中填寫須要壓測的URL便可,POST請求的body部分同理;若是是不一樣請求參數不一樣的狀況下,能夠經過入參定義及參數格式化來實現。
入參定義能夠經過上傳參數文件及佔位符的方式,來定義入參變量。前者是用於上傳一些必要的數據,好比請求中須要的用戶名、ID等,然後者(佔位符)主要是用於佔位,而後在場景中設置和其餘API的出參關聯,實現參數傳遞的功能。關於文件上傳,文件格式必須爲csv,且大小不超過60MB。文件中每列表明不一樣的參數屬性,每行爲一個請求中多個參數的組合,每格只需填寫value便可,也能夠只有一列,若是請求中某些參數須要強關聯則構造在一個csv文件中並上傳,相應的兩個入參變量都定義起來。而文件上傳以後會自動讀取裏面的列並展現在下方的入參定義中,您只須要定義入參的變量名便可,不須要的再刪除。佔位符的入參須要手工增長和定義。
爲了適應更多複雜參數場景,參數的格式化能夠經過字符串、入參變量、系統函數來組合,還能夠繼續作一些加工,如MD五、時間戳等。URL/BODY/Header的參數格式化相似,用鼠標選中須要替換的參數value,點擊「點擊進行參數化」,在彈窗中填寫相應信息便可。
這樣以來構造不一樣請求參數的大量的壓測API變得很是簡單易上手,趕快購買一個鉑金版資源包用起來。固然,後續還會繼續提高壓測流量的構造能力,一大波新功能和新交互即將陸續推出,敬請期待。
閱讀更多幹貨好文,請關注掃描如下二維碼: