JMeter基礎(chǔ)系列(十) JMeter關(guān)聯(lián)之JSON提取器Json Extractor

10.1 JSON提取器「JSON Extractor」

若響應(yīng)數(shù)據(jù)格式為JSON,也可以用JSON提取器來提取需要關(guān)聯(lián)的數(shù)據(jù)。
image.png

配置項(xiàng)

Apply to

與正在表達(dá)式提取器中用法相同,不再贅述。

Names of created variables

將JSONPath提取的內(nèi)容保存到指定變量,多個(gè)變量之間用“;”分隔(注意不是用,號(hào))。

JSON Path expressions

用于提取響應(yīng)數(shù)據(jù)的JSONPath表達(dá)式,
多個(gè)JSONPath表達(dá)式之間用“;”分隔(注意不是用,號(hào))。

Match No.(0 for Random)

若JSONPath有多個(gè)匹配項(xiàng),可以選擇提取哪個(gè)匹配項(xiàng)。
0表示隨機(jī)(默認(rèn)值)
-1表示提取所有匹配項(xiàng),各匹配項(xiàng)可用var_1,var_2,var_3,... ,var_n表示(var為保存提取內(nèi)容的變量名)
i(i=1,2,3,...)表示第i個(gè)匹配項(xiàng),若i大于匹配總數(shù),在設(shè)置了缺省值的情況下返回缺省值,否則返回空。

Compute concatenation var (suffix _ALL)

勾選此選項(xiàng),若JSONPath返回多個(gè)匹配項(xiàng),
則將各匹配項(xiàng)連接起來保存在var_ALL的變量中,其中var為保存提取內(nèi)容的變量名。

Default Values

若JSONPath沒有返回任何結(jié)果,則顯示設(shè)置的缺省值。
注意缺省值可以不設(shè)置,一旦設(shè)置,需要為每個(gè)變量設(shè)置缺省值,
多個(gè)缺省值之間用“;”分隔(注意不是用,號(hào))。

10.2 應(yīng)用案例

沿用上面的例子。

其實(shí)上例中第二步驟:設(shè)置查詢條件(比如按商品品牌)搜索商品,響應(yīng)數(shù)據(jù)為JSON,也可以使用JSON提取器提取數(shù)據(jù)。

下面是搜索商品返回的JSON數(shù)據(jù):

{
    "error": 0,
    "message": "",
    "content": "<!-- $Id: goods_list.htm 17126 2010-04-23 10:30:26Z liuhui $ -->\r\n\r\n<table cellpadding= ... <\/table>\r\n\r\n",
    "filter": {
        "cat_id": 0,
        "intro_type": "",
        "is_promote": 0,
        "stock_warning": 0,
        "brand_id": 0,
        "keyword": "",
        "suppliers_id": "",
        "is_on_sale": "",
        "sort_by": "goods_id",
        "sort_order": "DESC",
        "extension_code": "",
        "is_delete": 0,
        "real_goods": 1,
        "record_count": "20",
        "page_size": 15,
        "page": 1,
        "page_count": 2,
        "start": 0
    },
    "page_count": 2
}

現(xiàn)在要從響應(yīng)數(shù)據(jù)中提取錯(cuò)誤代碼,錯(cuò)誤消息,返回內(nèi)容三部分?jǐn)?shù)據(jù),JSON提取器設(shè)置如下:


image.png
image
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容