国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

JMeter斷言之JSON斷言

這篇具有很好參考價(jià)值的文章主要介紹了JMeter斷言之JSON斷言。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

JMeter斷言之JSON斷言,自動(dòng)化測(cè)試,軟件測(cè)試,測(cè)試工程師,jmeter,json,python,測(cè)試工具,postman,自動(dòng)化測(cè)試,軟件測(cè)試

JSON斷言

若服務(wù)器返回的Response Body為JSON格式的數(shù)據(jù),使用JSON斷言來(lái)判斷測(cè)試結(jié)果是較好的選擇。

首先需要根據(jù)JSON Path從返回的JSON數(shù)據(jù)中提取需要判斷的實(shí)際結(jié)果,再設(shè)置預(yù)期結(jié)果,兩者進(jìn)行比較得出斷言結(jié)果。

下面首先介紹JSON與JSON Path相關(guān)的基礎(chǔ)知識(shí)。

一、JSON與JSONPath

▲ 什么是JSON

● JSON(JavaScript Object Notation,JavaScript對(duì)象表示法)是一種輕量級(jí)的數(shù)據(jù)交換格式。

● JSON容易理解,便于閱讀和編寫(xiě);同時(shí)計(jì)算機(jī)也易于解析和生成,所以JSON有廣泛的應(yīng)用。

JSON基于如下兩種結(jié)構(gòu):

1.名稱(chēng)/值對(duì)的集合

在各種語(yǔ)言中,這可以作為對(duì)象(object)、記錄(record)、結(jié)構(gòu)(struct)、字典(dictionary)、哈希表(hash table)、鍵控列表(keyed list)或關(guān)聯(lián)數(shù)組(associative array)來(lái)實(shí)現(xiàn)。

2.值的有序列表

在大多數(shù)語(yǔ)言中,這是以數(shù)組(array)、向量(vector)、列表(list)或序列(sequence)的形式實(shí)現(xiàn)的。

JSON用于描述文本數(shù)據(jù)結(jié)構(gòu),有如下形式:

1.對(duì)象(object)

對(duì)象是一組無(wú)序的名稱(chēng)/值對(duì)。對(duì)象以{(左大括號(hào))開(kāi)始,以}(右大括號(hào))結(jié)束。每個(gè)名稱(chēng)后面跟著:冒號(hào),名稱(chēng)/值對(duì)之間用逗號(hào)分隔。

比如:

{"name":"zhangsan","sex":1,"age":25}

2.數(shù)組(Array)

數(shù)組是值的有序集合。數(shù)組以[(左中括號(hào))開(kāi)始,以](右中括號(hào))結(jié)束。值之間用逗號(hào)分隔。

比如:

{
"man":[{"name":"zhangsan","sex":1,"age":21},
{"name":"lisi","sex":0,"age":18},
{"name":"wangwu","sex":0,"age":25}]
}

3.值(value)

值可以是字符串、數(shù)字、true/false、null、對(duì)象或數(shù)組。

4.字符串(string)

字符串是由零個(gè)或多個(gè)Unicode字符組成的序列,用雙引號(hào)括起來(lái),使用反斜杠轉(zhuǎn)義。

字符表示為單個(gè)字符串。字符串非常類(lèi)似于C或Java中的字符串。

5.數(shù)字(number)

一系列0-9的數(shù)字組合,可以為負(fù)數(shù)或者小數(shù)。還可以用e或者E表示為指數(shù)形式;數(shù)字非常類(lèi)似于C或Java數(shù)字,但只是不使用八進(jìn)制和十六進(jìn)制格式。

6.空白符(whitespace)

可以在任意成對(duì)的語(yǔ)法符號(hào)之間插入空白符(包括空格、換行符、回車(chē)符、橫向制表符)。

現(xiàn)在我也找了很多測(cè)試的朋友,做了一個(gè)分享技術(shù)的交流群,共享了很多我們收集的技術(shù)文檔和視頻教程。
如果你不想再體驗(yàn)自學(xué)時(shí)找不到資源,沒(méi)人解答問(wèn)題,堅(jiān)持幾天便放棄的感受
可以加入我們一起交流。而且還有很多在自動(dòng)化,性能,安全,測(cè)試開(kāi)發(fā)等等方面有一定建樹(shù)的技術(shù)大牛
分享他們的經(jīng)驗(yàn),還會(huì)分享很多直播講座和技術(shù)沙龍
可以免費(fèi)學(xué)習(xí)!劃重點(diǎn)!開(kāi)源的?。?!
qq群號(hào):110685036

JMeter斷言之JSON斷言,自動(dòng)化測(cè)試,軟件測(cè)試,測(cè)試工程師,jmeter,json,python,測(cè)試工具,postman,自動(dòng)化測(cè)試,軟件測(cè)試

▲ 什么是JSONPath

我們經(jīng)常使用XPath來(lái)分析、轉(zhuǎn)換以及有選擇地從XML文檔中提取數(shù)據(jù)。與XPath類(lèi)似,JOSNPath可以方便從JSON結(jié)構(gòu)中發(fā)現(xiàn)和提取數(shù)據(jù)。

JSONPath中的“根成員對(duì)象”總是被稱(chēng)為$,無(wú)論它是對(duì)象還是數(shù)組。JSONPath表達(dá)式有“dot–notation”(.號(hào))和“bracket–notation”([]號(hào))兩種不同的表示風(fēng)格。

例如,

$.store.book[0].title or
$['store']['book'][0]['title']

▲ JSONPath語(yǔ)法元素

JMeter斷言之JSON斷言,自動(dòng)化測(cè)試,軟件測(cè)試,測(cè)試工程師,jmeter,json,python,測(cè)試工具,postman,自動(dòng)化測(cè)試,軟件測(cè)試

▲ JSONPath實(shí)例

{ "store": {
"book": [
{ "category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{ "category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
},
{ "category": "fiction",
"author": "Herman Melville",
"title": "Moby Dick",
"isbn": "0-553-21311-3",
"price": 8.99
},
{ "category": "fiction",
"author": "J. R. R. Tolkien",
"title": "The Lord of the Rings",
"isbn": "0-395-19395-8",
"price": 22.99
}
],
"bicycle": {
"color": "red",
"price": 19.95
}
}
}

JMeter斷言之JSON斷言,自動(dòng)化測(cè)試,軟件測(cè)試,測(cè)試工程師,jmeter,json,python,測(cè)試工具,postman,自動(dòng)化測(cè)試,軟件測(cè)試

二、JSON 斷言

JSON斷言可以對(duì)服務(wù)器返回的JSON文檔進(jìn)行驗(yàn)證。

JSON斷言有兩種使用模式:

1.根據(jù)JSONPath能否在JSON文檔中找到路徑;

2.根據(jù)JSONPath提取值并對(duì)值進(jìn)行驗(yàn)證。

● 若文檔格式為非JSON則斷言失敗;

● 若找不到路徑斷言失敗;

● 若提取值與預(yù)期值不一致斷言失敗。

▲ 配置項(xiàng)

Assert JSON Path exists:

用于斷言的JSON元素的路徑(JSONPath)。

1.Additionally assert value

是否額外驗(yàn)證根據(jù)JSONPath提取的值。

● 不勾選,驗(yàn)證JSONPath能否在JSON文檔中找到路徑;

● 勾選,驗(yàn)證根據(jù)JSONPath提取值是否預(yù)期。

2.Match as regular expression

預(yù)期值是否可以使用正則表達(dá)式。

● 不勾選,預(yù)期值不能使用正則表達(dá)式表示;

● 勾選,預(yù)期值可以使用正則表達(dá)式表示。

Expected Value:

預(yù)期值。

1.Expect null

● 若驗(yàn)證提取的值為null,則勾選此項(xiàng)。

這里有兩個(gè)地方需要額外注意:

a.驗(yàn)證null值,還是需要勾選“Additionally assert value”,否則驗(yàn)證的是JSONPath能否找到路徑;

b.預(yù)期值不填表示空字符,與null不等價(jià)。

2.Invert assertion(will fail if above conditions met)

● 若勾選,表示對(duì)斷言結(jié)果取反。

注意:

除了null外,還有一種特殊的值,就是空數(shù)組,預(yù)期值不能不填,需要設(shè)置為:[]

三、應(yīng)用案例

這里仍以前面介紹過(guò)的查詢(xún)被購(gòu)買(mǎi)商品的總金額接口為例來(lái)講述JSON斷言的用法。

該接口返回的響應(yīng)數(shù)據(jù)為JSON,故可以使用JSON斷言。

▲ 操作步驟

1.對(duì)預(yù)期結(jié)果要驗(yàn)證的項(xiàng)進(jìn)行參數(shù)化

這里驗(yàn)證err_msg,result

將預(yù)期結(jié)果寫(xiě)入csv文件中

比如:

case_name,goods_id,goods_attr,goods_num,error_msg,rslt
case1,9,226,3,,¥6630元
case2,,226,1,沒(méi)有找到指定的商品或者沒(méi)有找到指定的商品屬性。,
case3,9,,1,,¥2298元
case4,9,226,,¥2308元

2.添加JSON Assertion并進(jìn)行配置

JSON斷言每次只能斷言一個(gè)參數(shù),因此這里需要添加多個(gè)JSON斷言。

假設(shè)對(duì)錯(cuò)誤消息與商品金額這個(gè)兩個(gè)返回參數(shù)值做斷言。

{
"err_msg": "沒(méi)有找到指定的商品或者沒(méi)有找到指定的商品屬性。",
"result": "",
"qty": 1,
"err_no": 1
}
$.err_msg --> 沒(méi)有找到指定的商品或者沒(méi)有找到指定的商品屬性。
$.qty --> 1

▲ JSON斷言配置

1. 斷言錯(cuò)誤消息

JMeter斷言之JSON斷言,自動(dòng)化測(cè)試,軟件測(cè)試,測(cè)試工程師,jmeter,json,python,測(cè)試工具,postman,自動(dòng)化測(cè)試,軟件測(cè)試

2. 斷言商品金額:

JMeter斷言之JSON斷言,自動(dòng)化測(cè)試,軟件測(cè)試,測(cè)試工程師,jmeter,json,python,測(cè)試工具,postman,自動(dòng)化測(cè)試,軟件測(cè)試

END今天的分享就到此結(jié)束了,對(duì)你有所幫助的話留下小心心哈!?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-737179.html

到了這里,關(guān)于JMeter斷言之JSON斷言的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 如何寫(xiě)接口自動(dòng)化測(cè)試斷言?

    如何寫(xiě)接口自動(dòng)化測(cè)試斷言?

    ?? 視頻學(xué)習(xí):文末有免費(fèi)的配套視頻可觀看 ??? 關(guān)注公眾號(hào):互聯(lián)網(wǎng)雜貨鋪,回復(fù)1? ,免費(fèi)獲取軟件測(cè)試全套資料,資料在手,薪資嘎嘎漲 在接口測(cè)試中,斷言是一項(xiàng)非常重要的操作,它是用來(lái)校驗(yàn)接口返回結(jié)果是否符合預(yù)期的一種手段。一般來(lái)說(shuō),接口測(cè)試斷言大致可

    2024年01月20日
    瀏覽(25)
  • 【軟件測(cè)試/自動(dòng)化測(cè)試】WebDriver+Selenium實(shí)現(xiàn)瀏覽器自動(dòng)化

    【軟件測(cè)試/自動(dòng)化測(cè)試】WebDriver+Selenium實(shí)現(xiàn)瀏覽器自動(dòng)化

    前言 使用場(chǎng)景 原理 環(huán)境準(zhǔn)備 ?開(kāi)發(fā) First Script WebDriver API 瀏覽器 元素 總結(jié) Selenium是一款可以自動(dòng)化操作瀏覽器的開(kāi)源項(xiàng)目,最初的目的是瀏覽器功能的自動(dòng)化測(cè)試,但是隨著項(xiàng)目的發(fā)展,人們根據(jù)它的特性也用來(lái)做一些更多的有意思的功能而不僅僅是UI的自動(dòng)化測(cè)試工具。

    2024年02月08日
    瀏覽(64)
  • 自動(dòng)化測(cè)試 ——自動(dòng)卸載軟件

    自動(dòng)化測(cè)試 ——自動(dòng)卸載軟件

    在平常的測(cè)試工作中,經(jīng)常要安裝軟件,卸載軟件, 即繁瑣又累。 安裝和卸載完全可以做成自動(dòng)化。 安裝軟件我們可以通過(guò)自動(dòng)化框架,自動(dòng)點(diǎn)擊Next,來(lái)自動(dòng)安裝。 卸載軟件我們可以通過(guò)msiexec命令行工具自動(dòng)化卸載軟件 平常我們手動(dòng)卸載軟件都是到控制面板中的\\\"添加/刪除

    2024年02月08日
    瀏覽(27)
  • 軟件測(cè)試 -- 自動(dòng)化測(cè)試(Selenium)

    ????????在這里記錄一下? 自動(dòng)化測(cè)試 -- Selenium 的一些基礎(chǔ)知識(shí)點(diǎn),只記錄方法。 Selenium 瀏覽器操作 Selenium 元素定位(包含 Web 表單) findElement 和 findElements ????????findElement 和 findElements 都可以用于定位元素,它們都需要傳入一個(gè) By 類(lèi)型,但是他們的返回值不同,區(qū)

    2024年04月22日
    瀏覽(56)
  • 【軟件測(cè)試】自動(dòng)化測(cè)試selenium

    【軟件測(cè)試】自動(dòng)化測(cè)試selenium

    目錄 一、什么是自動(dòng)化測(cè)試 二、Selenium介紹 1、Selenium是什么 2、Selenium的原理 三、了解Selenium的常用API 1、webDriver API?? 1.1、元素定位 1.1.1、CSS選擇器 1.1.2、Xpath元素定位 1.1.3、面試題 ?1.2、操作測(cè)試對(duì)象 1.3、添加等待? 1.4、打印信息 ?1.5、瀏覽器的操作 1.6、鍵盤(pán)事件 1.7、鼠

    2024年01月17日
    瀏覽(27)
  • 自動(dòng)化測(cè)試中如何判斷測(cè)試是否通過(guò)?詳解 Pytest 測(cè)試框架的斷言用法

    目錄 前言: 01 — Python 原生的 assert 02 — Pytest 的 assert 優(yōu)點(diǎn) 03 — Pytest 斷言的用法 4.1 斷言字符串 4.2 斷言函數(shù)或者接口返回值 4.3 斷言集合類(lèi)型 04 — Pytest 斷言 Excepiton 05 — 為斷言添加自定義功能 06 — 禁止 Pytest 的 assert 特性 07 — 總結(jié) 在自動(dòng)化測(cè)試中,判斷測(cè)試是否通過(guò)是

    2024年02月16日
    瀏覽(26)
  • 軟件測(cè)試 自動(dòng)化測(cè)試selenium篇(一)

    軟件測(cè)試 自動(dòng)化測(cè)試selenium篇(一)

    目錄 一、什么是自動(dòng)化測(cè)試 ?單元測(cè)試 ?接口自動(dòng)化 ?UI自動(dòng)化 二、如何實(shí)施自動(dòng)化測(cè)試 ?自動(dòng)化測(cè)試需要了解的技能 三、selenium介紹 webdriver的工作原理: ?四、Selenium+Java環(huán)境搭建 ? ? ? ? ? ? ? ? ? ?驗(yàn)證環(huán)境是否搭建成功 創(chuàng)建java項(xiàng)目,添加pom文件中添加依賴(lài) 常見(jiàn)問(wèn)題

    2024年02月07日
    瀏覽(37)
  • 軟件測(cè)試 自動(dòng)化測(cè)試selenium API

    軟件測(cè)試 自動(dòng)化測(cè)試selenium API

    1.1.1 CSS 選擇器定位元素 CSS 選擇器 就是一個(gè)語(yǔ)法 瀏覽器 (ctrl + f)可以進(jìn)行選擇 類(lèi)選擇器:.class值(.s_ipt) id 選擇器:#id值(#kw) 父類(lèi)選擇器 子類(lèi)選擇器:父類(lèi)選擇器表達(dá)式 子類(lèi)選擇器表達(dá)式 標(biāo)簽選擇器:標(biāo)簽名(form) 1.1.2 XPath 定位元素 XPath 是一種在XML 文檔中定位元

    2024年04月28日
    瀏覽(34)
  • 【軟件測(cè)試】python+selenium自動(dòng)化測(cè)試

    【軟件測(cè)試】python+selenium自動(dòng)化測(cè)試

    一、什么是自動(dòng)化測(cè)試 自動(dòng)化測(cè)試指軟件測(cè)試的自動(dòng)化,在預(yù)設(shè)狀態(tài)下運(yùn)行應(yīng)用程序或者系統(tǒng),預(yù)設(shè)條件包括正常和異常,最 后評(píng)估運(yùn)行結(jié)果。將人為驅(qū)動(dòng)的測(cè)試行為轉(zhuǎn)化為機(jī)器執(zhí)行的過(guò)程。 單元測(cè)試 java的單元測(cè)試框架是Junit,在這里不再贅述。 接口自動(dòng)化 接口測(cè)試就是

    2023年04月09日
    瀏覽(34)
  • 【軟件測(cè)試】基于博客系統(tǒng)的自動(dòng)化測(cè)試

    【軟件測(cè)試】基于博客系統(tǒng)的自動(dòng)化測(cè)試

    目錄 1.我的博客系統(tǒng)鏈接 2.使用selenium對(duì)博客系統(tǒng)進(jìn)行自動(dòng)化測(cè)試 1.引入依賴(lài) 2.創(chuàng)建公共類(lèi) 3.創(chuàng)建測(cè)試套件類(lèi) 4.測(cè)試登陸界面 5. 測(cè)試博客列表頁(yè) 6.測(cè)試寫(xiě)博客頁(yè)面 7.測(cè)試刪除博客 8.最終運(yùn)行結(jié)果 用戶(hù)登錄 創(chuàng)建一個(gè)maven項(xiàng)目,在pop.xml中引入以下依賴(lài) 因?yàn)閷?duì)每一個(gè)頁(yè)面進(jìn)行測(cè)試

    2024年02月15日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包