jmeter使用

JMeter

一酿箭、 性能測試

1缴川、 性能測試是什么

基于協(xié)議模擬用戶發(fā)出請求厕诡,對服務(wù)器形成一定負(fù)載,來測試服務(wù)器的性能指標(biāo)是否滿足要求

性能指標(biāo)關(guān)注點(diǎn):時間性能削解、空間性能

性能測試與頁面無關(guān)

性能測試定義:指通過自動化的測試工具模擬多種正常、峰值以及異常負(fù)載條件來對系統(tǒng)的各項性能指標(biāo)進(jìn)行測試沟娱。

2氛驮、性能測試工具

二. Jmeter簡介

1、 我們?yōu)槭裁词褂肑meter

開源济似,免費(fèi)矫废,基于Java編寫,可集成到其他系統(tǒng)可拓展各個功能插件

支持接口測試砰蠢,壓力(負(fù)載和壓力)測試等多種功能蓖扑,支持錄制回放,

入門簡單相較于自己編寫框架活其他開源工具台舱,有較為完善的UI界面律杠,便于接口調(diào)試

多平臺支持,可在Linux竞惋,Windows柜去,Mac上運(yùn)行

支持多協(xié)議

2、Jmeter的作用

接口測試 可使用postman/jmeter

性能測試 可使用jmeter

數(shù)據(jù)庫測試

3. Jmeter怎么用

Windows下Jmeter下載安裝

登錄 http://jmeter.apache.org/download_jmeter.cgi 拆宛,根據(jù)自己平臺嗓奢,下載對應(yīng)文件

4、安裝JAVA環(huán)境

安裝JDK浑厚,配置環(huán)境變量(具體步驟不做介紹)

將下載Jmeter文件解壓股耽,打開/bin/jmeter.bat

5根盒、 Jmeter的目錄結(jié)構(gòu)

/bin 目錄(常用文件介紹)

examples:目錄下包含Jmeter使用實(shí)例

ApacheJMeter.jar:JMeter源碼包

jmeter.bat:windows下啟動文件

jmeter.sh:Linux下啟動文件

jmeter.log:Jmeter運(yùn)行日志文件

jmeter.properties:Jmeter配置文件

jmeter-server.bat:windows下啟動負(fù)載生成器服務(wù)文件

jmeter-server:Linux下啟動負(fù)載生成器文件

/docs目錄——Jmeter幫助文檔

/extras目錄——提供了對Ant的支持文件,可也用于持續(xù)集成

/lib目錄——存放Jmeter依賴的jar包物蝙,同時安裝插件也放于此目錄

/licenses目錄——軟件許可文件炎滞,不用管

/printable_docs目錄——Jmeter用戶手冊

三. Jmeter的使用

1、 線程組是什么

進(jìn)程: 一個正在執(zhí)行的程序?qū)?yīng)一個進(jìn)程

線程: 一個進(jìn)程有多個執(zhí)行線程

線程組: 按照線程性質(zhì)對線程分組

三者關(guān)系: 一個進(jìn)程有多個線程組茬末,一個線程組有多個線程

測試計劃—線程組—線程組屬性中的線程數(shù)

并發(fā)執(zhí)行:多個線程同時執(zhí)行厂榛,特點(diǎn):執(zhí)行結(jié)束的順序與開始的順序不一致

順序執(zhí)行:按照線程的啟動順序挨個執(zhí)行

默認(rèn)情況下,線程組中的線程是并發(fā)執(zhí)行

每一個線程都要執(zhí)行組內(nèi)的http請求

設(shè)置線程組順序執(zhí)行:勾選測試計劃中的(獨(dú)立運(yùn)行每個線程組)

線程組用來模擬用戶的并發(fā)訪問

創(chuàng)建線程組

1丽惭、線程組主要包含三個參數(shù):線程數(shù)击奶、準(zhǔn)備時長(Ramp-Up Period(in seconds))、循環(huán)次數(shù)责掏。

2柜砾、線程數(shù):虛擬用戶數(shù)。一個虛擬用戶占用一個線程换衬。設(shè)置多少虛擬用戶數(shù)在這里也就是設(shè)置多少個線程數(shù)痰驱。

3、準(zhǔn)備時長(秒):設(shè)置的虛擬用戶數(shù)需要多長時間全部啟動瞳浦。如果線程數(shù)為20 担映,準(zhǔn)備時長為10 ,那么需要10秒鐘啟動20個線程叫潦。也就是每秒鐘啟動2個線程蝇完。

4、循環(huán)次數(shù):每個線程發(fā)送請求的次數(shù)矗蕊。如果線程數(shù)為20 短蜕,循環(huán)次數(shù)為100 ,那么每個線程發(fā)送100次請求傻咖∨竽В總請求數(shù)為20*100=2000 。如果勾選了“永遠(yuǎn)”卿操,那么所有線程會一直發(fā)送請求警检,一到選擇停止運(yùn)行腳本。

5 害淤、調(diào)度器:設(shè)置線程組啟動的開始時間和結(jié)束時間(配置調(diào)度器時解滓,需要勾選循環(huán)次數(shù)為永遠(yuǎn))

6、持續(xù)時間(秒):測試持續(xù)時間筝家,會覆蓋結(jié)束時間

7洼裤、啟動延遲(秒):測試延遲啟動時間,會覆蓋啟動時間

8、啟動時間:測試啟動時間腮鞍,啟動延遲會覆蓋它值骇。當(dāng)啟動時間已過,手動只需測試時當(dāng)前時間也會覆蓋它移国。

9吱瘩、 結(jié)束時間:測試結(jié)束時間,持續(xù)時間會覆蓋它迹缀。

2使碾、 創(chuàng)建http請求

3、 指定請求域名祝懂,請求路徑

一個HTTP請求有著許多的配置參數(shù)票摇,下面將詳細(xì)介紹:

名稱:本屬性用于標(biāo)識一個取樣器,建議使用一個有意義的名稱砚蓬。

注釋:對于測試沒有任何作用矢门,僅用戶記錄用戶可讀的注釋信息。

服務(wù)器名稱或IP :HTTP請求發(fā)送的目標(biāo)服務(wù)器名稱或IP地址灰蛙。

端口號:目標(biāo)服務(wù)器的端口號祟剔。

方法:發(fā)送HTTP請求的方法,可用方法包括GET摩梧、POST物延、HEAD、PUT仅父、OPTIONS教届、TRACE、DELETE等驾霜。

Content encoding :內(nèi)容的編碼方式,默認(rèn)值為iso8859

路徑:目標(biāo)URL路徑(不包括服務(wù)器地址和端口)

4买置、 設(shè)置對應(yīng)的查看內(nèi)容

5粪糙、 查看表格信息

Sample:每個請求的序號

Start Time:每個請求開始時間

Thread Name:每個線程的名稱

Label:Http請求名稱

Sample Time:每個請求所花時間,單位毫秒

Status:請求狀態(tài)忿项,如果為勾則表示成功蓉冈,如果為叉表示失敗。

Bytes:請求的字節(jié)數(shù)

樣本數(shù)目:也就是上面所說的請求個數(shù)轩触,成功的情況下等于你設(shè)定的并發(fā)數(shù)目乘以循環(huán)次數(shù)

平均:每個線程請求的平均時間

最新樣本:表示服務(wù)器響應(yīng)最后一個請求的時間

偏離:服務(wù)器響應(yīng)時間變化寞酿、離散程度測量值的大小,或者脱柱,換句話說伐弹,就是數(shù)據(jù)的分布。

6榨为、 查看結(jié)果樹

通過察看結(jié)果樹惨好,我們可以看到每個請求的結(jié)果煌茴,其中紅色的是出錯的請求,綠色的為通過日川。

Thread Name:線程組名稱

Sample Start: 啟動開始時間

Load time:加載時長

Latency:等待時長

Size in bytes:發(fā)送的數(shù)據(jù)總大小

Headers size in bytes:發(fā)送數(shù)據(jù)的其余部分大小

Sample Count:發(fā)送統(tǒng)計

Error Count:交互錯誤統(tǒng)計

Response code:返回碼

Response message:返回信息

Response headers:返回的頭部信息

7蔓腐、 聚合報告參數(shù)說明

lable:對應(yīng)每一個http請求,顯示的是http請求的Name龄句,如百度http請求name為baidu

#Samples:表示這一次的測試中一共發(fā)出了多少請求回论,如上圖所示,sougou和baidu的http請求每個都發(fā)出30個請求

Average:平均響應(yīng)時間分歇,指的是所有的請求的平均響應(yīng)時間傀蓉,如上圖的30個請求的總的響應(yīng)時間除以30得出的平均響應(yīng)時間,默認(rèn)的情況下是單個請求的平均響應(yīng)時間卿樱,但當(dāng)使用了“事務(wù)控制器”時僚害,則以事物為單位顯示平均響應(yīng)時間

Median:中位數(shù),也就是50%用戶的響應(yīng)時間

90%Line:90%用戶的響應(yīng)時間

Min:最小響應(yīng)時間

Max:最大的響應(yīng)時間

Error%:本次測試中出現(xiàn)錯誤的請求的數(shù)量/請求的總數(shù)繁调,如上圖所示萨蚕,本次的測試中,sougou的http請求66.6%的請求出錯蹄胰,而baidu的請求則沒有出錯的請求

Throughput:吞吐量岳遥,默認(rèn)情況下表示每秒完成的請求數(shù),如上圖所示裕寨,每秒完成的請求數(shù)分別為6.6個每秒浩蓉,6.2個每秒

Recived KB/Sec:每秒從服務(wù)器端接收到的數(shù)據(jù)量,以kb為計算的單位

8宾袜、 圖形結(jié)果

樣本數(shù)目:總共發(fā)送到服務(wù)器的請求數(shù)捻艳。

最新樣本:代表時間的數(shù)字,是服務(wù)器響應(yīng)最后一個請求的時間庆猫。

吞吐量:服務(wù)器每分鐘處理的請求數(shù)认轨。

平均值:總運(yùn)行時間除以發(fā)送到服務(wù)器的請求數(shù)。

中間值:有一半的服務(wù)器響應(yīng)時間低于該值而另一半高于該值月培。

偏離:表示服務(wù)器響應(yīng)時間變化嘁字、離散程度測量值的大小。

四杉畜、 Jmeter主要組件介紹

1纪蜒、測試計劃是使用 JMeter 進(jìn)行測試的起點(diǎn),它是其它 JMeter 測試元件的容器此叠。

2纯续、線程組:代表一定數(shù)量的并發(fā)用戶,它可以用來模擬并發(fā)用戶發(fā)送請求。實(shí)際的請求內(nèi)容在Sampler中定義杆烁,它被線程組包含牙丽。可以在“測試計劃->添加->線程組”來建立它兔魂,然后在線程組面板里有幾個輸入欄:線程數(shù)烤芦、Ramp-Up Period(in seconds)、循環(huán)次數(shù)析校,其中Ramp-Up Period(in seconds)表示在這時間內(nèi)創(chuàng)建完所有的線程构罗。如有8個線程,Ramp-Up = 200秒智玻,那么線程的啟動時間間隔為200/8=25秒遂唧,這樣的好處是:一開始不會對服務(wù)器有太大的負(fù)載。線程組是為模擬并發(fā)負(fù)載而設(shè)計吊奢。

3盖彭、取樣器(Sampler):模擬各種請求。所有實(shí)際的測試任務(wù)都由取樣器承擔(dān)页滚,存在很多種請求召边。如:HTTP 、ftp請求等等裹驰。

4隧熙、監(jiān)聽器:負(fù)責(zé)收集測試結(jié)果,同時也被告知了結(jié)果顯示的方式幻林。功能是對取樣器的請求結(jié)果顯示贞盯、統(tǒng)計一些數(shù)據(jù)(吞吐量、KB/S……)等沪饺。

5躏敢、邏輯控制器:允許自定義JMeter發(fā)送請求的行為邏輯,它與Sampler結(jié)合使用可以模擬復(fù)雜的請求序列整葡。

6件余、斷言:用于來判斷請求響應(yīng)的結(jié)果是否如用戶所期望,是否正確掘宪。它可以用來隔離問題域,即在確保功能正確的前提下執(zhí)行壓力測試攘烛。這個限制對于有效的測試是非常有用的魏滚。

7、定時器:負(fù)責(zé)定義請求(線程)之間的延遲間隔坟漱,模擬對服務(wù)器的連續(xù)請求鼠次。

8、配置元件維護(hù)Sampler需要的配置信息,并根據(jù)實(shí)際的需要會修改請求的內(nèi)容腥寇。

9成翩、前置處理器和后置處理器負(fù)責(zé)在生成請求之前和之后完成工作。前置處理器常常用來修改請求的設(shè)置赦役,后置處理器則常常用來處理響應(yīng)的數(shù)據(jù)麻敌。

1、測試計劃

1掂摔、測試計劃就是一個完整的場景

2术羔、“獨(dú)立運(yùn)行每個線程組” :勾選以后所有的線程組都是順序執(zhí)行的了。一般不勾選乙漓,讓所有 的線程組并發(fā)啟動级历。

3、“函數(shù)測試模式” :勾選后會有詳細(xì)的請求記錄叭披,消耗資源寥殖,影響客戶端性能。一般不勾選涩蜘。

4嚼贡、用戶定義的變量:全局變量,測試計劃上可以添加用戶定義的變量皱坛。一般添加一些系統(tǒng)常用的配置编曼。如果測試過程中想切換環(huán)境,切換配置剩辟,一般不建議在測試計劃上添加變量

2掐场、 線程組

(1)thread group(線程組)

這個就是我們通常添加運(yùn)行的線程。通俗的講一個線程組贩猎,可以看做一個虛擬用戶組熊户,線程組中的每個線程都可以理解為一個虛擬用戶。

(2)setup thread group

一種特殊類型的ThreadGroup的吭服,可用于執(zhí)行預(yù)測試操作嚷堡。這些線程的行為完全像一個正常的線程組元件。不同的是艇棕,這些類型的線程執(zhí)行測試前進(jìn)行定期線程組的執(zhí)行蝌戒;類似LoadRunner的init,測試開始時進(jìn)行初始化的工作沼琉。

(3)teardown thread group

一種特殊類型的ThreadGroup的北苟,可用于執(zhí)行測試后動作。這些線程的行為完全像一個正常的線程組元件打瘪。不同的是友鼻,這些類型的線程執(zhí)行測試結(jié)束后執(zhí)行定期的線程組傻昙;類似LoadRunnner的end,測試結(jié)束時進(jìn)行回收工作彩扔。

3妆档、 取樣器(Http請求)

關(guān)于http請求的的屬性參數(shù)說明:

1)名稱:用于標(biāo)識一個sample。建議使用一個有意義的名稱

2)注釋:對于測試沒任何影響虫碉,僅用來記錄用戶可讀的注釋信息

3)服務(wù)器名稱或IP:http請求發(fā)送的目標(biāo)服務(wù)器名稱或者IP地址贾惦,比如http://www.baidu.com

4)端口號:目標(biāo)服務(wù)器的端口號,默認(rèn)值為80蔗衡,可不填

5)協(xié)議:向目標(biāo)服務(wù)器發(fā)送http請求時的協(xié)議纤虽,http/https,大小寫不敏感绞惦,默認(rèn)http

6)方法:發(fā)送http請求的方法

7)Content encoding:內(nèi)容的編碼方式(Content-Type=application/json;charset=utf-8)

8)路徑:目標(biāo)的URL路徑(不包括服務(wù)器地址和端口)

9)自動重定向:如果選中該項逼纸,發(fā)出的http請求得到響應(yīng)是301/302,jmeter會重定向到新的界面

10)Use keep Alive:jmeter 和目標(biāo)服務(wù)器之間使用 Keep-Alive方式進(jìn)行HTTP通信(默認(rèn)選中)

11)Use multipart/from-data for HTTP POST :當(dāng)發(fā)送HTTP POST 請求時济蝉,使用

12)Parameters杰刽、Body Data以及Files Upload的區(qū)別:

parameter是指函數(shù)定義中參數(shù),而argument指的是函數(shù)調(diào)用時的實(shí)際參數(shù)

簡略描述為:parameter=形參(formal parameter)王滤, argument=實(shí)參(actual parameter)

在不很嚴(yán)格的情況下贺嫂,現(xiàn)在二者可以混用,一般用argument雁乡,而parameter則比較少用

While defining method, variables passed in the method are called parameters.

當(dāng)定義方法時第喳,傳遞到方法中的變量稱為參數(shù).

While using those methods, values passed to those variables are called arguments.

當(dāng)調(diào)用方法時,傳給變量的值稱為引數(shù).(有時argument被翻譯為“引數(shù)“)

Body Data指的是實(shí)體數(shù)據(jù)踱稍,就是請求報文里面主體實(shí)體的內(nèi)容曲饱,一般我們向服務(wù)器發(fā)送請求,攜帶的實(shí)體主體參數(shù)珠月,可以寫入這里

Files Upload指的是:從HTML文件獲取所有有內(nèi)含的資源:被選中時扩淀,發(fā)出HTTP請求并獲得響應(yīng)的HTML文件內(nèi)容后還對該HTML

進(jìn)行Parse 并獲取HTML中包含的所有資源(圖片、flash等):(默認(rèn)不選中)

如果用戶只希望獲取特定資源啤挎,可以在下方的Embedded URLs must match 文本框中填入需要下載的特定資源表達(dá)式驻谆,只有能匹配指定正則表達(dá)式的URL指向資源會被下載

4、 監(jiān)聽器

監(jiān)聽器(Listener)負(fù)責(zé)收集測試結(jié)果庆聘,同時也被告知了結(jié)果顯示的方式胜臊。我們常用的包括:聚合報告、查看結(jié)果樹伙判、用表格查看結(jié)果象对,都支持將結(jié)果數(shù)據(jù)寫入文件。其他的添加上去看看就行澳腹。聚合報告前面我們介紹過织盼,后面是查看結(jié)果樹和用表格查看結(jié)果的截圖。

5酱塔、 邏輯控制器

6、 循環(huán)控制器、事務(wù)控制器

1)循環(huán)控制器

2)事務(wù)控制器

作用: 事務(wù)控制器會生產(chǎn)一個額外的采樣器脚曾,用來統(tǒng)計該控制器子結(jié)點(diǎn)的所有時間闽瓢。

在線程組下創(chuàng)建事務(wù)控制器

參數(shù):

Generate parent sample:(選中這個參數(shù)結(jié)果展示如下圖紅框,否則顯示為下圖藍(lán)框)

Include duration of timer and pre-post processors in generated sample:選中這一項會統(tǒng)計定時器(timer)的時間蕊玷,否則只統(tǒng)計采樣器(sample)的時間

生成聚合報告

勾選 Generate parent sample

聚合報告中只有一項事務(wù)報告

7邮利、 斷言—檢查點(diǎn)

斷言(Assertions)可以用來判斷請求響應(yīng)的結(jié)果是否如用戶所期望的。它可以用來隔離問題域垃帅,即在確保功能正確的前提下執(zhí)行壓力測試延届。這個限制對于有效的測試是非常有用的。

8贸诚、 前置處理器和后置處理器

前置處理器(Pre Processors)和后置處理器(Post Processors)負(fù)責(zé)在生成請求之前和之后完成工作方庭。前置處理器常常用來修改請求的設(shè)置,后置處理器則常常用來處理響應(yīng)的數(shù)據(jù)酱固。我們主要在動態(tài)關(guān)聯(lián)中用到后置處理器的正則表達(dá)式提取器械念。

9、 定時器

定時器(Timer)負(fù)責(zé)定義請求之間的延遲間隔

五运悲、 Jmeter組件參數(shù)化

1龄减、使組件參數(shù)化的原因

動態(tài)的獲取并設(shè)置數(shù)據(jù)

執(zhí)行批量操作,批量添加批量刪除班眯,人工效率太低

運(yùn)用程序代替人工獲取并設(shè)置數(shù)據(jù)希停,安全高效

2、參數(shù)化實(shí)現(xiàn)之用戶自定義變量

通過這個功能鳖敷,能實(shí)現(xiàn)多接口共享數(shù)據(jù)脖苏,修改一條即可修改全部

例:如果多個接口都有相同的變量

可以使用用戶自定義變量

3、 參數(shù)化實(shí)現(xiàn)之CSV Data Set Config

通過這個組件可以動態(tài)獲取并設(shè)置數(shù)據(jù)定踱,實(shí)現(xiàn)批量添加操作

Filename:所需數(shù)據(jù)文件的路徑棍潘。如和腳本同一路徑,可直接填寫文件名

File encoding:編碼和文件保持一致即可崖媚,默認(rèn)為ANSI亦歉。如有中文,建議為UTF-8

Variable Names:引用變量時的變量名畅哑,對應(yīng)數(shù)據(jù)文件中的每一列肴楷,以逗號分隔。Delimiter:在.txt荠呐、.dat文件中赛蔫,可以用逗號(,)或者Tab鍵(\t)來區(qū)分列與列

Allow quote data:選項選為“true”的時候?qū)θ亲址奶幚沓霈F(xiàn)亂碼

Recycle on EOF:到數(shù)據(jù)文件結(jié)尾時是否循環(huán)讀取砂客。設(shè)置為True時,線程數(shù)過多呵恢,數(shù)據(jù)文件讀取到最后一行時鞠值,會再次從第一行開始讀取。設(shè)置為False渗钉,到達(dá)文件結(jié)尾時如繼續(xù)讀取彤恶,則值會默認(rèn)為,可通過設(shè)置jmeter屬性csvdataset.eofstring來改變該值鳄橘。

Stop thread on EOF:Recycle on EOF設(shè)置為False声离,Stop thread on EOF設(shè)置為True,則讀取數(shù)據(jù)文件最后一行后瘫怜,停止測試术徊,不管還有多少線程組未執(zhí)行。

Sharing mode:共享模式鲸湃。默認(rèn)在所有線程組中使用弧关,可選擇每個線程組單獨(dú)打開

4、使用Jmeter函數(shù)助手(文件中不要出現(xiàn)中文)

1唤锉、點(diǎn)擊 選項–>函數(shù)助手 調(diào)出函數(shù)助手對話框

2世囊、選擇 _CSVRead 函數(shù)(下圖第一個框)

3、函數(shù)參數(shù):

1)第一個參數(shù):填寫文件路徑窿祥。

2)第二個參數(shù):文件列號是從0開始的株憾,第一列0、第二列1晒衩、第三列2嗤瞎、依次類推,然后點(diǎn)擊【生成】按鈕,則會自動生成我們需要的參數(shù)化函數(shù)听系。

3) 復(fù)制生成的參數(shù)化函數(shù)贝奇, copy過程需要使用的地方即可。

4) _Random函數(shù)是從某數(shù)據(jù)段隨機(jī)讀取數(shù)據(jù)替換參數(shù)靠胜,當(dāng)需要添加多條數(shù)據(jù)記錄且某些字段需要唯一性時使用掉瞳。

5、Jmeter正則表達(dá)式提取

運(yùn)用Jmeter正則提取器浪漠,可以從請求的響應(yīng)結(jié)果中取到需要的內(nèi)容陕习,從而實(shí)現(xiàn)關(guān)聯(lián)。關(guān)聯(lián)是請求與請求之間存在數(shù)據(jù)依賴關(guān)系址愿,需要從上一個請求獲取下一個請求需要回傳回去的數(shù)據(jù)

位置1:名稱及注釋

正則表達(dá)式(regular expression)描述了一種字符串匹配的模式(pattern)该镣,可以用來檢查一個串是否含有某種子串、將匹配的子串替換或者從某個串中取出符合某個條件的子串等响谓。

字符 描述

* 匹配前面的子表達(dá)式零次或多次损合。例如省艳,zo* 能匹配 “z” 以及 “zoo”。* 等價于{0,}嫁审。

+ 匹配前面的子表達(dá)式一次或多次拍埠。例如,‘zo+’ 能匹配 “zo” 以及 “zoo”土居,但不能匹配 “z”。+ 等價于 {1,}嬉探。

? 匹配前面的子表達(dá)式零次或一次擦耀。例如,“do(es)?” 可以匹配 “do” 涩堤、 “does” 中的 “does” 眷蜓、 “doxy” 中的 “do” 。? 等價于 {0,1}胎围。

( ) 標(biāo)記一個子表達(dá)式的開始和結(jié)束位置吁系。子表達(dá)式可以獲取供以后使用。

. 匹配除換行符 \n 之外的任何單字符白魂。要匹配 . 汽纤,請使用 . 。

構(gòu)造正則表達(dá)式的方法和創(chuàng)建數(shù)學(xué)表達(dá)式的方法一樣福荸。也就是用多種元字符與運(yùn)算符可以將小的表達(dá)式結(jié)合在一起來創(chuàng)建更大的表達(dá)式蕴坪。正則表達(dá)式的組件可以是單個的字符、字符集合敬锐、字符范圍背传、字符間的選擇或者所有這些組件的任意組合。

位置2:正則表達(dá)式提取的相關(guān)設(shè)置

說明:

(1)引用名稱:下一個請求要引用的參數(shù)名稱台夺,如填寫title径玖,則可用${title}引用它。

(2)正則表達(dá)式:

():括起來的部分就是要提取的颤介。

.:匹配任何字符串梳星。

+:一次或多次。

?:不要太貪婪滚朵,在找到第一個匹配項后停止丰泊。

(3)模板:用KaTeX parse error: Can't use function '$' in math mode at position 28: …式中有多個正則表達(dá)式,則可以是$?23$等等始绍,表示解析到的第幾個值給title瞳购。如:1 11表示解析到的第1個值

(4)匹配數(shù)字:0代表隨機(jī)取值,1代表全部取值亏推,通常情況下填0

(5)缺省值:如果參數(shù)沒有取得到值学赛,那默認(rèn)給一個值讓它取年堆。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市盏浇,隨后出現(xiàn)的幾起案子变丧,更是在濱河造成了極大的恐慌,老刑警劉巖绢掰,帶你破解...
    沈念sama閱讀 217,509評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件痒蓬,死亡現(xiàn)場離奇詭異,居然都是意外死亡滴劲,警方通過查閱死者的電腦和手機(jī)攻晒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來班挖,“玉大人鲁捏,你說我怎么就攤上這事∠糗剑” “怎么了给梅?”我有些...
    開封第一講書人閱讀 163,875評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長双揪。 經(jīng)常有香客問我动羽,道長,這世上最難降的妖魔是什么渔期? 我笑而不...
    開封第一講書人閱讀 58,441評論 1 293
  • 正文 為了忘掉前任曹质,我火速辦了婚禮,結(jié)果婚禮上擎场,老公的妹妹穿的比我還像新娘羽德。我一直安慰自己,他們只是感情好迅办,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評論 6 392
  • 文/花漫 我一把揭開白布宅静。 她就那樣靜靜地躺著,像睡著了一般站欺。 火紅的嫁衣襯著肌膚如雪姨夹。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,365評論 1 302
  • 那天矾策,我揣著相機(jī)與錄音磷账,去河邊找鬼。 笑死贾虽,一個胖子當(dāng)著我的面吹牛逃糟,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,190評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼绰咽,長吁一口氣:“原來是場噩夢啊……” “哼菇肃!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起取募,我...
    開封第一講書人閱讀 39,062評論 0 276
  • 序言:老撾萬榮一對情侶失蹤琐谤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后玩敏,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體斗忌,經(jīng)...
    沈念sama閱讀 45,500評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評論 3 335
  • 正文 我和宋清朗相戀三年旺聚,在試婚紗的時候發(fā)現(xiàn)自己被綠了织阳。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,834評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡翻屈,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出妻坝,到底是詐尸還是另有隱情伸眶,我是刑警寧澤,帶...
    沈念sama閱讀 35,559評論 5 345
  • 正文 年R本政府宣布刽宪,位于F島的核電站厘贼,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏圣拄。R本人自食惡果不足惜嘴秸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望庇谆。 院中可真熱鬧岳掐,春花似錦、人聲如沸饭耳。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽寞肖。三九已至纲酗,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間新蟆,已是汗流浹背觅赊。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留琼稻,地道東北人吮螺。 一個月前我還...
    沈念sama閱讀 47,958評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親规脸。 傳聞我的和親對象是個殘疾皇子坯约,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評論 2 354

推薦閱讀更多精彩內(nèi)容

  • JMeter 一、 性能測試 1莫鸭、 性能測試是什么 基于協(xié)議模擬用戶發(fā)出請求闹丐,對服務(wù)器形成一定負(fù)載,來測試服務(wù)器的...
    在摘棉花閱讀 341評論 0 0
  • Jmeter簡介 jmeter基本概念 Apache JMeter是Apache組織開發(fā)的基于Java的壓力測試工...
    2640a8321f43閱讀 566評論 0 0
  • 隨著市場上推出越來越多的測試工具被因,大家使用起來也比較盲目卿拴,就我個人而言,使用過LoadRunner和Jmeter很...
    baiynistx閱讀 1,296評論 1 2
  • 測試計劃:是使用jmeter進(jìn)行測試的起點(diǎn)梨与,是其他測試元件的容器堕花,一個完整的測試計劃 包括一個或多個線程組,邏輯控...
    測試猴閱讀 3,100評論 0 4
  • 最近有小朋友經(jīng)常問關(guān)聯(lián)怎么做粥鞋,正好遇到一個好的小實(shí)例缘挽,寫下。 收益: 從一個小的測試實(shí)例中可以快速簡單的了解到j(luò)m...
    果果醬ya閱讀 1,960評論 2 6