大連企業(yè)公司網(wǎng)站建設(shè)百度指數(shù)移動(dòng)版怎么用
1.簡介
上一篇中已經(jīng)將其的理論知識介紹了一下,這一篇就帶著大家一步一步的把上一篇介紹的理論知識實(shí)踐一下,然后再說一下如何創(chuàng)建高級web測試計(jì)劃。
2.網(wǎng)絡(luò)計(jì)劃實(shí)戰(zhàn)
通過上一篇的學(xué)習(xí),將其分類為:
(1)不需要登錄驗(yàn)證身份就可以操作的。
(2)需要登錄驗(yàn)證身份之后才能操作的。
2.1不需要登錄
這里就拿博客園來舉例子,如博客園,你不需要登錄驗(yàn)證身份,就可以執(zhí)行閱讀、查找和瀏覽博客園內(nèi)的文章(前提是這些文章沒有設(shè)置“只允許注冊的用戶訪問”)。
2.1.1抓包
1.閱讀博客園文章
1、瀏覽器上輸入博客園地址,點(diǎn)擊文章::
如下圖所示:?
2、fiddler抓包工具抓取博客園查找的過程。從下圖紅色圈住的部分可以看到查找的URL和請求查找發(fā)送的參數(shù)。如下圖所示:
?
2.1.2閱讀文章
按照抓包抓取到的參數(shù),我們下一步就是用Jmeter模擬閱讀博客園文章:
1.建立一個(gè)測試計(jì)劃命名為:Test Blog Read Plan。如圖下所示:
2.選中測試計(jì)劃,添加線程組用戶,命名為:Blog User。如下圖所示:
注意:敲腦殼,敲黑板啦!!!這個(gè)就是一個(gè)用戶閱讀一次,如果要壓測你可以設(shè)置多個(gè)用戶同時(shí)閱讀。
3.選中線程組,添加一個(gè)HTTP Header Manager(HTTP信息頭管理器)。這個(gè)主要是為了避免Jmeter發(fā)送請求后,返回結(jié)果可能會出現(xiàn)狀態(tài)碼為403的錯(cuò)誤。如下圖所示:
注意:敲腦殼,敲黑板啦!!!這里HTTP信息頭管理器,主要添加一個(gè)參數(shù)User-Agent。根據(jù)你抓包的header來填寫即可。
?
4.選中線程組,設(shè)置一個(gè)http,發(fā)送http默認(rèn)請求值,放入你需求測試的地址。這樣做的好處就是后邊的所有的http請求你就不再需要重復(fù)的寫這個(gè)測試地址了。如下圖所示:
注意:敲腦殼,敲黑板啦!!!本地搭建的Jenkins應(yīng)用程序,那么測試地址就很清楚了,這里請求值填寫如下:
(1)protocol(協(xié)議:http or https):目前博客園是https協(xié)議,所以這里填寫Protocol:https
(2)測試地址為:博客園的地址,不用啰嗦大家都知道了,Sever Name or IP:www.cnblogs.com
(3)Port:(博客園沒有端口)
?5.選中線程組,添加一個(gè)http請求命名為:Read。如下圖所示:
注意:敲腦殼,敲黑板啦!!!本地搭建的Jenkins應(yīng)用程序,那么Read請求值,我們查看抓到登錄請求包(2.2.1)就很清楚了,這里請求值填寫如下:
(1)protocol(協(xié)議:http or https):目前這個(gè)是本地搭建的http協(xié)議,所以這里填寫Protocol:https
(2)測試地址為:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:www.cnblogs.com
(3)Port:(博客園沒有端口)
(4)Method:是那種類型的請求就選擇那種,這里選擇get
(5)Path:閱讀博客園文章的請求路徑
(6)Content Encoding:編碼這里沒有填寫,如果出現(xiàn)亂碼,你可以填寫utf-8和Gb2312試一下,即可。
?6.選中線程組,添加一個(gè)結(jié)果樹,命名為:Check Read Results,監(jiān)聽閱讀博文是否成功。如下圖所示:
2.2需要登錄
同樣的這里也拿博客園舉例子,你如果要發(fā)布隨筆、評論、點(diǎn)推薦等等的一系列操作,就需要你登錄驗(yàn)證身份以后才能執(zhí)行這些操作。但是由于博客園的登錄機(jī)制改變就不拿博客園舉例子,拿一個(gè),在本地搭建的Jenkins的web應(yīng)用程序來實(shí)戰(zhàn)一下,刪除一個(gè)job。但是這個(gè)job必須在登錄以后才能刪除,如果沒有登錄就會刪除失敗。
2.2.1抓包
1.登錄
1、瀏覽器上登錄jenkins,輸入賬號和密碼,點(diǎn)擊登錄。如下圖所示:
?
2、fiddler抓包工具抓取jenkins登錄的過程。從下圖紅色圈住的部分可以看到登錄的URL和請求登錄發(fā)送的參數(shù)。如下圖所示:
?
2.刪除
1、我們前面講過登錄后新建任務(wù)后,那可以繼續(xù)接著操作:刪除剛才新建的任務(wù)。如下圖所示:
?
2、用fiddler抓包,抓到刪除新建任務(wù)的請求,從抓包結(jié)果可以看出,傳的data參數(shù)是Jenkins-Crumb。如下圖所示:
?
3.這個(gè)Jenkins-Crumb哪里來的呢?可以看上個(gè)請求的body。如下圖所示:
?
2.2.2登錄
按照抓包抓取到的參數(shù),我們下一步就是用Jmeter模擬登錄到Jenkins。
1.建立一個(gè)測試計(jì)劃命名為:Test Jenkins Plan。如下圖所示:
?
2.選中測試計(jì)劃,添加線程組用戶,命名為:Jenkins User。如下圖所示:
注意:敲腦殼,敲黑板啦!!!這個(gè)就是一個(gè)用戶登錄一次,如果要壓測你可以設(shè)置多個(gè)用戶同時(shí)登錄。
?3.選中線程組,添加一個(gè)HTTP Header Manager(HTTP信息頭管理器)。這個(gè)主要是為了避免Jmeter發(fā)送請求后,返回結(jié)果可能會出現(xiàn)狀態(tài)碼為403的錯(cuò)誤。如下圖所示:
注意:敲腦殼,敲黑板啦!!!這里HTTP信息頭管理器,主要添加兩個(gè)參數(shù)User-Agent和Content-Type。根據(jù)你抓包的header來填寫即可。
?4.選中線程組,設(shè)置一個(gè)http,發(fā)送http默認(rèn)請求值,放入你需求測試的地址。這樣做的好處就是后邊的所有的http請求你就不再需要重復(fù)的寫這個(gè)測試地址了。如下圖所示:
注意:敲腦殼,敲黑板啦!!!本地搭建的Jenkins應(yīng)用程序,那么測試地址就很清楚了,這里請求值填寫如下:
(1)protocol(協(xié)議:http or https):目前這個(gè)是本地搭建的http協(xié)議,所以這里填寫Protocol:http
(2)測試地址為:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:localhost
(3)Port:8080(這里搭建的默認(rèn)端口8080,你也可以在Tomcat的配置文件修改這個(gè)端口)
?5.選中線程組,添加一個(gè)http請求命名為:Login。如下圖所示:
注意:敲腦殼,敲黑板啦!!!本地搭建的Jenkins應(yīng)用程序,那么Login請求值,我們查看抓到登錄請求包(2.2.1)就很清楚了,這里請求值填寫如下:
(1)protocol(協(xié)議:http or https):目前這個(gè)是本地搭建的http協(xié)議,所以這里填寫Protocol:http
(2)測試地址為:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:localhost
(3)Port:8080(這里搭建的默認(rèn)端口8080,你也可以在Tomcat的配置文件修改這個(gè)端口)
(4)Method:是那種類型的請求就選擇那種,這里選擇post
(5)Path:登錄的請求路徑
(6)Content Encoding:編碼這里沒有填寫,如果出現(xiàn)亂碼,你可以填寫utf-8和Gb2312試一下,即可。
?
6.選中線程組,添加一個(gè)cookie管理器,用來管理登錄后的cookie。如下圖所示:
注意:敲腦殼,敲黑板啦!!!cookie的添加一個(gè)值,這個(gè)也可以在抓包登陸請求中header查看到,這里就不細(xì)說了。
(1)Name:JSESSIONID
(2)Value:一串?dāng)?shù)字和字母
(3)Domain:localhost
?
7.選中線程組,添加一個(gè)結(jié)果樹,命名為:Check Login Results,監(jiān)聽登錄是否成功。如下圖所示:
?
8.選中線程組,添加一個(gè)http請求命名為:Delete Item。如下圖所示:
注意:敲腦殼,敲黑板啦!!!本地搭建的Jenkins應(yīng)用程序,那么Delete請求值,我們查看抓到刪除請求包(2.2.1)就很清楚了,這里請求值填寫如下:
(1)protocol(協(xié)議:http or https):目前這個(gè)是本地搭建的http協(xié)議,所以這里填寫Protocol:http
(2)測試地址為:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:localhost
(3)Port:8080(這里搭建的默認(rèn)端口8080,你也可以在Tomcat的配置文件修改這個(gè)端口)
(4)Method:是那種類型的請求就選擇那種,這里選擇post
(5)Path:刪除的請求路徑
(6)Content Encoding:編碼這里沒有填寫,如果出現(xiàn)亂碼,你可以填寫utf-8和Gb2312試一下,即可。
?
9.選中線程組,添加一個(gè)結(jié)果樹,命名為:Check Delete Results,監(jiān)聽刪除job是否成功。如下圖所示:
?
2.3JMeter運(yùn)行查看運(yùn)行結(jié)果
2.3.1不需要登錄
1、點(diǎn)擊綠色的按鈕,運(yùn)行Jmeter,如下圖所示:
?
2、查看JMeter運(yùn)行結(jié)果,一個(gè)請求的監(jiān)聽結(jié)果都是綠色的,說明請求成功。如下圖所示:
?
??(1)查看閱讀是否成功,從結(jié)果看到博文內(nèi)容,說明閱讀成功。如下圖所示:
?
2.3.2登錄
1、Jenkins的新建任務(wù)里有“”,如下圖所示:
?
2、點(diǎn)擊綠色的按鈕,運(yùn)行Jmeter,如下圖所示:
?
?3、查看JMeter運(yùn)行結(jié)果,兩個(gè)請求的監(jiān)聽結(jié)果都是綠色的,說明請求成功。如下圖所示:
?
(1)查看登錄是否成功,從結(jié)果看到“admin”和“注銷”,說明登錄成功。如下圖所示:
?
(2)可以看到登錄成功后的,任務(wù)中有“”。如下圖所示:
?
(3)查看刪除是否成功,從結(jié)果中沒有看到“”,說明刪除成功。如下圖所示:
?
4、查看Jenkins的新建任務(wù),沒有看到“”,說明刪除成功了,如下圖所示:
?
3.制定高級Web測試計(jì)劃
在本小節(jié)中,紅兒將介紹一下如何創(chuàng)建高級?測試計(jì)劃來測試網(wǎng)站。
有關(guān)基本測試計(jì)劃的示例,請參閱構(gòu)建Web測試計(jì)劃。
3.1使用URL重寫處理用戶會話
如果您的Web應(yīng)用程序使用URL重寫而不是Cookie來保存會話信息,則您需要做一些額外的工作來測試您的站點(diǎn)。
為了正確響應(yīng)URL重寫,JMeter需要解析從服務(wù)器接收的HTML并檢索唯一的會話ID。使用適當(dāng)?shù)腍TTP URL重寫修飾符?可以完成此操作。只需將您的會話ID參數(shù)的名稱輸入到修飾符中,它將找到它并將其添加到每個(gè)請求中。如果請求已經(jīng)有一個(gè)值,它將被替換。如果是“緩存會話ID?”?如果選中,則將保存最后找到的會話ID,如果先前的HTTP示例不包含會話ID,則將使用該ID。
URL重寫示例
下載此示例。在圖1中顯示了使用URL重寫的測試計(jì)劃。請注意,URL Re-writing修飾符已添加到SimpleController中,從而確保它只會影響該SimpleController下的請求。
?
圖1-測試樹
在圖2中,我們看到URL重寫修飾符GUI,它只有一個(gè)字段供用戶指定會話ID參數(shù)的名稱。還有一個(gè)復(fù)選框,用于指示會話ID應(yīng)該是路徑的一部分(用“;”分隔),而不是請求參數(shù)。
?
圖2-請求參數(shù)
3.2使用標(biāo)題管理器
該HTTP頭管理器可以讓你定制什么樣的信息JMeter的HTTP請求頭發(fā)送。此標(biāo)頭包含“用戶代理”,“編譯指示”,“推薦人”等屬性。
該HTTP頭管理器,像HTTP Cookie管理器,可能應(yīng)該在線程組級別添加,除非出于某種原因,您希望為不同的指定不同的頁眉HTTP請求在您的測試對象。
4.小結(jié)
4.1登錄和刪除前三個(gè)參數(shù)空白
1.細(xì)心地小伙伴或者童鞋們會從截圖中發(fā)現(xiàn)宏哥的登錄和刪除的前三個(gè)參數(shù)都是空白的,什么也沒有填寫,那是因?yàn)榍斑叺腍TTP默認(rèn)請求,所以這里不用填寫,好處就從這里就看出來了,目前只是列舉了兩個(gè)請求,如果成百上千的請求是不是效果就更明顯了。
? 好了,今天有關(guān)創(chuàng)建網(wǎng)絡(luò)計(jì)劃實(shí)戰(zhàn)和創(chuàng)建高級Web測試計(jì)劃就分享到這里。
最后感謝每一個(gè)認(rèn)真閱讀我文章的人,禮尚往來總是要有的,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:【文末領(lǐng)取】
? ? ? ? ? ? ?【下面是我整理的2023年最全的軟件測試工程師學(xué)習(xí)知識架構(gòu)體系圖】
一、Python編程入門到精通

二、接口自動(dòng)化項(xiàng)目實(shí)戰(zhàn)?
三、Web自動(dòng)化項(xiàng)目實(shí)戰(zhàn)

四、App自動(dòng)化項(xiàng)目實(shí)戰(zhàn)?
五、一線大廠簡歷

六、測試開發(fā)DevOps體系?
七、常用自動(dòng)化測試工具

八、JMeter性能測試?
九、總結(jié)(文末尾部小驚喜)
生命不息,奮斗不止。每一份努力都不會被辜負(fù),只要堅(jiān)持不懈,終究會有回報(bào)。珍惜時(shí)間,追求夢想。不忘初心,砥礪前行。你的未來,由你掌握!
生命短暫,時(shí)間寶貴,我們無法預(yù)知未來會發(fā)生什么,但我們可以掌握當(dāng)下。珍惜每一天,努力奮斗,讓自己變得更加強(qiáng)大和優(yōu)秀。堅(jiān)定信念,執(zhí)著追求,成功終將屬于你!
只有不斷地挑戰(zhàn)自己,才能不斷地超越自己。堅(jiān)持追求夢想,勇敢前行,你就會發(fā)現(xiàn)奮斗的過程是如此美好而值得。相信自己,你一定可以做到!
?