19天后置正則表達(dá)式提取器&配置原件CSV&cookie&token

正則表達(dá)式.jpg

正則表達(dá)式

概念

正則表達(dá)式是對字符串操作的一種邏輯公式,就是用事先定義好的一些特定字符、及這些特定字符的組合,組成一個(gè)“規(guī)則字符串”,這個(gè)“規(guī)則字符串”用來表達(dá)對字符串的一種過濾邏輯。

特點(diǎn)

1. 靈活性、邏輯性和功能性非常強(qiáng);

2. 可以迅速地用極簡單的方式達(dá)到字符串的復(fù)雜控制。

3. 對于剛接觸的人來說,比較晦澀難懂。

由于正則表達(dá)式主要應(yīng)用對象是文本,因此它在各種文本編輯器場合都有應(yīng)用,小到著名編輯器EditPlus,大到Microsoft Word、Visual Studio等大型編輯器,都可以使用正則表達(dá)式來處理文本內(nèi)容。

正則表達(dá)式語法

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

例如:

runoo+b,可以匹配 runoob、runooob、runoooooob 等,+ 號代表前面的字符必須至少出現(xiàn)一次(1次或多次)。

runoob,可以匹配 runob、runoob、runoooooob 等, 號代表字符可以不出現(xiàn),也可以出現(xiàn)一次或者多次(0次、或1次、或多次)。

colou?r 可以匹配 color 或者 colour,? 問號代表前面的字符最多只可以出現(xiàn)一次(0次、或1次)。

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

正則表達(dá)式是由普通字符(例如字符 a 到 z)以及特殊字符(稱為"元字符")組成的文字模式。模式描述在搜索文本時(shí)要匹配的一個(gè)或多個(gè)字符串。正則表達(dá)式作為一個(gè)模板,將某個(gè)字符模式與所搜索的字符串進(jìn)行匹配。

常見字符

由于這些字符比較多,我就直接截圖了.正式內(nèi)容多以后用的時(shí)候再補(bǔ).

1.非打印字符

image.png

2.特殊字符

image.png

3.限定符

image.png

image.png

4.定位符

image.png

正則在線工具

image.png

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

正則表達(dá)式提取器是提取響應(yīng)報(bào)文某些字符.因此是在請求里面添加.由于是響應(yīng)里提取字段,又規(guī)內(nèi)在后置處理器中.
Jmeter里的正則表達(dá)式提取器的作用是提取響應(yīng)報(bào)文的某個(gè)字段存在變量中可供一個(gè)線程組下面的請求body data/paremeters引用變量名作為值.

配合debug sampler 進(jìn)行調(diào)試!

使用Jmeter開發(fā)腳本時(shí),難免需要調(diào)試,這時(shí)可以使用Jmeter的Debug Sampler


image.png

debug sampler 數(shù)據(jù)顯示在響應(yīng)數(shù)據(jù)中.

image.png

正式表達(dá)式提取器 界面解析

image.png
  • 賬戶余額:(.*?)分"
    括號可以看做定位,左邊字段是左邊界,右邊字段是右邊界。


    image.png
  • 我們截取含有需要判斷的部分 賬戶余額:6290分" 作為響應(yīng)報(bào)文中需要判斷的字段,把需要判斷的6290改為(.*?),就得到我們的正則表達(dá)式。

  • 即:把需要提取的字符串前后都復(fù)制下來,保證其他部分是不變的,然后需要提取的字符串用(.*?)代替.

添加 正則表達(dá)式的基本操作

核心是在請求里面添加,正則表達(dá)式提取器放在請求里面的
因此 請求-----后置處理器----正則表達(dá)式提取器

image.png

舉個(gè)例子:做一個(gè)查詢流水---充值的流程 充值的請求里面引用查詢流水的正則里面的變量名.
1.前端操作水流接口和充值接口進(jìn)行抓包.fiddler打標(biāo)記導(dǎo)出jmx格式的文件,再導(dǎo)入到Jmeter里面.

2.對查詢流水添加后置處理器--正則表達(dá)式提取器
image.png

image.png
  • "accountName":"xiaoxiao1", -----------------把xiaoxiao1 換成(.*?)---"accountName":"(.*?)",?表示非貪婪```
    image.png

3.充值里面請求accountName 的值 引用上面正則的變量 格式${變量名}

image.png

4.添加debug sampler 調(diào)試 觀察

5.跑一下


image.png

HTTP Cookie管理器

發(fā)送請求,經(jīng)常要校驗(yàn)cookies信息,使用的cookie管理器,會(huì)默認(rèn)把服務(wù)端返回的cookie數(shù)據(jù)記錄下來 。如果沒有cookie管理器,測試時(shí)要登錄之后的操作就無法進(jìn)行。


image.png

cookie和token

  • cookie是tomcat自定義的.token是程序員寫代碼自定義的

cookie和session的區(qū)別

一、cookie:
在網(wǎng)站中,http請求是無狀態(tài)的。也就是說即使第一次和服務(wù)器連接后并且登錄成功后,第二次請求服務(wù)器依然不能知道當(dāng)前請求是哪個(gè)用戶。cookie的出現(xiàn)就是為了解決這個(gè)問題,第一次登錄后服務(wù)器返回一些數(shù)據(jù)(cookie)給瀏覽器,然后瀏覽器保存在本地,當(dāng)該用戶發(fā)送第二次請求的時(shí)候,就會(huì)自動(dòng)的把上次請求存儲(chǔ)的cookie數(shù)據(jù)自動(dòng)的攜帶給服務(wù)器,服務(wù)器通過瀏覽器攜帶的數(shù)據(jù)就能判斷當(dāng)前用戶是哪個(gè)了。cookie存儲(chǔ)的數(shù)據(jù)量有限,不同的瀏覽器有不同的存儲(chǔ)大小,但一般不超過4KB。因此使用cookie只能存儲(chǔ)一些小量的數(shù)據(jù).

二、session:
session和cookie的作用有點(diǎn)類似,都是為了存儲(chǔ)用戶相關(guān)的信息。不同的是,cookie是存儲(chǔ)在本地瀏覽器,而session存儲(chǔ)在服務(wù)器。存儲(chǔ)在服務(wù)器的數(shù)據(jù)會(huì)更加的安全,不容易被竊取。但存儲(chǔ)在服務(wù)器也有一定的弊端,就是會(huì)占用服務(wù)器的資源,但現(xiàn)在服務(wù)器已經(jīng)發(fā)展至今,一些session信息還是綽綽有余的。
三、cookie和session結(jié)合使用:
web開發(fā)發(fā)展至今,cookie和session的使用已經(jīng)出現(xiàn)了一些非常成熟的方案。在如今的市場或者企業(yè)里,一般有兩種存儲(chǔ)方式:

1、存儲(chǔ)在服務(wù)端:通過cookie存儲(chǔ)一個(gè)session_id,然后具體的數(shù)據(jù)則是保存在session中。如果用戶已經(jīng)登錄,則服務(wù)器會(huì)在cookie中保存一個(gè)session_id,下次再次請求的時(shí)候,會(huì)把該session_id攜帶上來,服務(wù)器根據(jù)session_id在session庫中獲取用戶的session數(shù)據(jù)。就能知道該用戶到底是誰,以及之前保存的一些狀態(tài)信息。這種專業(yè)術(shù)語叫做server side session。

2、將session數(shù)據(jù)加密,然后存儲(chǔ)在cookie中。這種專業(yè)術(shù)語叫做client side session。flask采用的就是這種方式,但是也可以替換成其他形式.

cookie和token的五點(diǎn)區(qū)別

①:token和cookie一樣都是首次登陸時(shí),由服務(wù)器下發(fā),都是當(dāng)交互時(shí)進(jìn)行驗(yàn)證的功能,作用都是為無狀態(tài)的HTTP提供的持久機(jī)制。

②:token存在哪兒都行,localstorage或者cookie。

③:token和cookie舉例,token就是說你告訴我你是誰就可以。

cookie 舉例:服務(wù)員看你的身份證,給你一個(gè)編號,以后,進(jìn)行任何操作,都出示編號后服務(wù)員去看查你是誰。
token 舉例:直接給服務(wù)員看自己身份證
④:對于token而言,服務(wù)器不需要去查看你是誰,不需要保存你的會(huì)話。當(dāng)用戶logout的時(shí)候cookie和服務(wù)器的session都會(huì)注銷;但是當(dāng)logout時(shí)候token只是注銷瀏覽器信息,不查庫。

⑤:token優(yōu)勢在于,token由于服務(wù)器端不存儲(chǔ)會(huì)話,所以可擴(kuò)展性強(qiáng),token還可用于APP中。

總結(jié):

Token 完全由應(yīng)用管理,所以它可以避開同源策略
Token 可以避免 CSRF 攻擊
Token 可以是無狀態(tài)的,可以在多個(gè)服務(wù)間共享

如果你的用戶數(shù)據(jù)可能需要和第三方共享,或者允許第三方調(diào)用 API 接口,用 Token,如果之上自己的那就無所謂了。

舉例

1.打開登錄注冊頁面

image.png

2.注冊跳轉(zhuǎn)到登錄頁面

image.png

3.打開fiddler抓包:用正確的用戶名登錄,并且輸入姓名查詢


image.png

image.png
  • cookie和token


    image.png

導(dǎo)出添加到j(luò)meter看前面幾天的簡書有詳細(xì)說明.
4.填好信息,啟動(dòng)cookie,設(shè)置好斷言跑一下觀察!



5.關(guān)閉cookie跑一下 查詢掛了


image.png

6.在登錄請求里面添加后置處理器---正則表達(dá)式提取器
image.png

image.png

7.設(shè)置正則表達(dá)式提取器
7.1


image.png

7.2
image.png

8.在查詢--http信息管理頭里面添加 cookie =$({token})

image.png

9.跑一下看看
image.png

10.如果等一會(huì)又掛了怎么辦.復(fù)制Set-Cookie:后面的值到正則里面缺省值里面就OK!
image.png

image.png

*cookie和token一定要會(huì)用

待續(xù).......CSV 和if 控制器一起寫吧!

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

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,525評論 19 139
  • 主要文體來自 CDNS:https://www.cnblogs.com/ceshisanren/p/5639895...
    Amano閱讀 11,281評論 3 27
  • 擊,繁體:擊 ?!墩f文》:“攴也。從手毄聲?!笔裁词顷??《說文》:“小擊也。從又卜聲。” 又繞回來了。怎么辦? 我...
    麥?zhǔn)搴托←?/span>閱讀 2,388評論 1 21
  • headers標(biāo)題: H1 h2 h3 h4 h5 h6 一級標(biāo)題 二級標(biāo)題 Emphasis文本強(qiáng)調(diào): 斜體 o...
    zy01閱讀 275評論 0 0
  • Feng_Sir閱讀 432評論 0 0

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