跳到主要內容

Jmeter(五) - 從入門到精通 - 創建網絡計劃實戰和創建高級Web測試計劃(詳解教程),Jmeter(三) - 從入門到精通 - 測試計劃(Test Plan)的元件(詳解教程),Jmeter(三) - 從入門到精通 - 測試計劃(Test Plan)的元件(詳解教程)_台北網頁設計


※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益



擁有後台管理系統的網站,將擁有強大的資料管理與更新功能,幫助您隨時新增網站的內容並節省網站開發的成本。



1.簡介


  上一篇中宏哥已經將其的理論知識介紹了一下,這一篇宏哥就帶着大家一步一步的把上一篇介紹的理論知識實踐一下,然後再說一下如何創建高級web測試計劃。


2.網絡計劃實戰


  通過上一篇的學習,宏哥將其分類為:


    (1)不需要登錄驗證身份就可以操作的。


    (2)需要登錄驗證身份之後才能操作的。


2.1不需要登錄


這裏宏哥就拿博客園來舉例子,如博客園,你不需要登錄驗證身份,就可以執行閱讀、查找和瀏覽博客園內的文章(前提是這些文章沒有設置"只允許註冊的用戶訪問")。


2.1.1抓包

1.閱讀博客園文章


1、瀏覽器上輸入博客園地址,點擊文章::Jmeter(三) - 從入門到精通 - 測試計劃(Test Plan)的元件(詳解教程),如下圖所示:



2、fiddler抓包工具抓取博客園查找的過程。從下圖紅色圈住的部分可以看到查找的URL和請求查找發送的參數。如下圖所示:



2.1.2閱讀文章

按照抓包抓取到的參數,我們下一步就是用Jmeter模擬閱讀博客園文章:Jmeter(三) - 從入門到精通 - 測試計劃(Test Plan)的元件(詳解教程)。


1.建立一個測試計劃命名為:Test Blog Read Plan。如圖下所示:



2.選中測試計劃,添加線程組用戶,命名為:Blog User。如下圖所示:


注意:敲腦殼,敲黑板啦!!!宏哥這個就是一個用戶閱讀一次,如果要壓測你可以設置多個用戶同時閱讀。



3.選中線程組,添加一個HTTP Header Manager(HTTP信息頭管理器)。這個主要是為了避免Jmeter發送請求后,返回結果可能會出現狀態碼為403的錯誤。如下圖所示:


注意:敲腦殼,敲黑板啦!!!這裏HTTP信息頭管理器,主要添加一個參數User-Agent。根據你抓包的header來填寫即可。



4.選中線程組,設置一個http,發送http默認請求值,放入你需求測試的地址。這樣做的好處就是後邊的所有的http請求你就不再需要重複的寫這個測試地址了。如下圖所示:


注意:敲腦殼,敲黑板啦!!!宏哥本地搭建的Jenkins應用程序,那麼測試地址就很清楚了,這裏請求值填寫如下:


(1)protocol(協議:http or https):目前博客園是https協議,所以這裏填寫Protocol:https


(2)測試地址為:博客園的地址,不用啰嗦大家都知道了,Sever Name or IP:www.cnblogs.com


(3)Port:(博客園沒有端口)



5.選中線程組,添加一個http請求命名為:Read。如下圖所示:


注意:敲腦殼,敲黑板啦!!!宏哥本地搭建的Jenkins應用程序,那麼Read請求值,我們查看抓到登錄請求包(2.2.1)就很清楚了,這裏請求值填寫如下:


(1)protocol(協議:http or https):目前這個是本地搭建的http協議,所以這裏填寫Protocol:https


(2)測試地址為:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:www.cnblogs.com


(3)Port:(博客園沒有端口)


(4)Method:是那種類型的請求就選擇那種,這裏選擇get


(5)Path:閱讀博客園文章的請求路徑


(6)Content Encoding:編碼宏哥這裏沒有填寫,如果出現亂碼,你可以填寫utf-8和Gb2312試一下,即可。



6.選中線程組,添加一個結果樹,命名為:Check Read Results,監聽閱讀博文是否成功。如下圖所示:



2.2需要登錄


同樣的這裏也拿博客園舉例子,你如果要發布隨筆、評論、點推薦等等的一系列操作,就需要你登錄驗證身份以後才能執行這些操作。但是由於博客園的登錄機制改變宏哥就不拿博客園舉例子,宏哥拿一個,宏哥在本地搭建的Jenkins的web應用程序來實戰一下,刪除一個job。但是這個job必須在登錄以後才能刪除,如果沒有登錄就會刪除失敗。


2.2.1抓包

1.登錄


1、瀏覽器上登錄jenkins,輸入賬號和密碼,點擊登錄。如下圖所示:



2、fiddler抓包工具抓取jenkins登錄的過程。從下圖紅色圈住的部分可以看到登錄的URL和請求登錄發送的參數。如下圖所示:



2.刪除


1、我們前面講過登錄后新建任務后,那可以繼續接着操作:刪除剛才新建的任務。如下圖所示:


 


2、用fiddler抓包,抓到刪除新建任務的請求,從抓包結果可以看出,傳的data參數是Jenkins-Crumb。如下圖所示:


 


3.這個Jenkins-Crumb哪裡來的呢?可以看上個請求的body。如下圖所示:



2.2.2登錄

按照抓包抓取到的參數,我們下一步就是用Jmeter模擬登錄到Jenkins。


1.建立一個測試計劃命名為:Test Jenkins Plan。如下圖所示:



2.選中測試計劃,添加線程組用戶,命名為:Jenkins User。如下圖所示:


注意:敲腦殼,敲黑板啦!!!宏哥這個就是一個用戶登錄一次,如果要壓測你可以設置多個用戶同時登錄。



3.選中線程組,添加一個HTTP Header Manager(HTTP信息頭管理器)。這個主要是為了避免Jmeter發送請求后,返回結果可能會出現狀態碼為403的錯誤。如下圖所示:


注意:敲腦殼,敲黑板啦!!!這裏HTTP信息頭管理器,主要添加兩個參數User-Agent和Content-Type。根據你抓包的header來填寫即可。



4.選中線程組,設置一個http,發送http默認請求值,放入你需求測試的地址。這樣做的好處就是後邊的所有的http請求你就不再需要重複的寫這個測試地址了。如下圖所示:


注意:敲腦殼,敲黑板啦!!!宏哥本地搭建的Jenkins應用程序,那麼測試地址就很清楚了,這裏請求值填寫如下:


(1)protocol(協議:http or https):目前這個是本地搭建的http協議,所以這裏填寫Protocol:http


(2)測試地址為:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:localhost


(3)Port:8080(這裏宏哥搭建的默認端口8080,你也可以在Tomcat的配置文件修改這個端口)


※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益



擁有後台管理系統的網站,將擁有強大的資料管理與更新功能,幫助您隨時新增網站的內容並節省網站開發的成本。





5.選中線程組,添加一個http請求命名為:Login。如下圖所示:


注意:敲腦殼,敲黑板啦!!!宏哥本地搭建的Jenkins應用程序,那麼Login請求值,我們查看抓到登錄請求包(2.2.1)就很清楚了,這裏請求值填寫如下:


(1)protocol(協議:http or https):目前這個是本地搭建的http協議,所以這裏填寫Protocol:http


(2)測試地址為:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:localhost


(3)Port:8080(這裏宏哥搭建的默認端口8080,你也可以在Tomcat的配置文件修改這個端口)


(4)Method:是那種類型的請求就選擇那種,這裏選擇post


(5)Path:登錄的請求路徑


(6)Content Encoding:編碼宏哥這裏沒有填寫,如果出現亂碼,你可以填寫utf-8和Gb2312試一下,即可。



6.選中線程組,添加一個cookie管理器,用來管理登錄后的cookie。如下圖所示:


注意:敲腦殼,敲黑板啦!!!cookie的添加一個值,這個也可以在抓包登陸請求中header查看到,這裏宏哥就不細說了。


(1)Name:JSESSIONID


(2)Value:一串数字和字母


(3)Domain:localhost



7.選中線程組,添加一個結果樹,命名為:Check Login Results,監聽登錄是否成功。如下圖所示:



8.選中線程組,添加一個http請求命名為:Delete Item。如下圖所示:


注意:敲腦殼,敲黑板啦!!!宏哥本地搭建的Jenkins應用程序,那麼Delete請求值,我們查看抓到刪除請求包(2.2.1)就很清楚了,這裏請求值填寫如下:


(1)protocol(協議:http or https):目前這個是本地搭建的http協議,所以這裏填寫Protocol:http


(2)測試地址為:本地搭建,不用啰嗦大家都知道了,Sever Name or IP:localhost


(3)Port:8080(這裏宏哥搭建的默認端口8080,你也可以在Tomcat的配置文件修改這個端口)


(4)Method:是那種類型的請求就選擇那種,這裏選擇post


(5)Path:刪除的請求路徑


(6)Content Encoding:編碼宏哥這裏沒有填寫,如果出現亂碼,你可以填寫utf-8和Gb2312試一下,即可。



9.選中線程組,添加一個結果樹,命名為:Check Delete Results,監聽刪除job是否成功。如下圖所示:



2.3JMeter運行查看運行結果


2.3.1不需要登錄


1、點擊綠色的按鈕,運行Jmeter,如下圖所示:



 2、查看JMeter運行結果,一個請求的監聽結果都是綠色的,說明請求成功。如下圖所示:



 (1)查看閱讀是否成功,從結果看到博文內容,說明閱讀成功。如下圖所示:



2.3.2登錄


1、Jenkins的新建任務里有"北京-宏哥",如下圖所示:



2、點擊綠色的按鈕,運行Jmeter,如下圖所示:



 3、查看JMeter運行結果,兩個請求的監聽結果都是綠色的,說明請求成功。如下圖所示:



(1)查看登錄是否成功,從結果看到"admin"和"註銷",說明登錄成功。如下圖所示:



(2)可以看到登錄成功后的,任務中有"北京-宏哥"。如下圖所示:



(3)查看刪除是否成功,從結果中沒有看到"北京-宏哥",說明刪除成功。如下圖所示:



4、查看Jenkins的新建任務,沒有看到"北京-宏哥",說明刪除成功了,如下圖所示:



3.制定高級Web測試計劃


在本小節中,紅兒將介紹一下如何創建高級 測試計劃來測試網站。


有關基本測試計劃的示例,請參閱構建Web測試計劃


3.1使用URL重寫處理用戶會話


如果您的Web應用程序使用URL重寫而不是Cookie來保存會話信息,則您需要做一些額外的工作來測試您的站點。


為了正確響應URL重寫,JMeter需要解析從服務器接收的HTML並檢索唯一的會話ID。使用適當的HTTP URL重寫修飾符 可以完成此操作。只需將您的會話ID參數的名稱輸入到修飾符中,它將找到它並將其添加到每個請求中。如果請求已經有一個值,它將被替換。如果是"緩存會話ID?" 如果選中,則將保存最後找到的會話ID,如果先前的HTTP示例不包含會話ID,則將使用該ID。


URL重寫示例

下載此示例在圖1中显示了使用URL重寫的測試計劃。請注意,URL Re-writing修飾符已添加到SimpleController中,從而確保它只會影響該SimpleController下的請求。


圖1-測試樹

在圖2中,我們看到URL重寫修飾符GUI,它只有一個字段供用戶指定會話ID參數的名稱。還有一個複選框,用於指示會話ID應該是路徑的一部分(用";"分隔),而不是請求參數。


圖2-請求參數

3.2使用標題管理器


HTTP頭管理器可以讓你定製什麼樣的信息JMeter的HTTP請求頭髮送。此標頭包含"用戶代理","編譯指示","推薦人"等屬性。


該HTTP頭管理器,像HTTP Cookie管理器,可能應該在線程組級別添加,除非出於某種原因,您希望為不同的指定不同的頁眉HTTP請求在您的測試對象。


4.小結


4.1登錄和刪除前三個參數空白


1.細心地小夥伴或者童鞋們會從截圖中發現宏哥的登錄和刪除的前三個參數都是空白的,什麼也沒有填寫,那是因為前邊的HTTP默認請求,所以這裏不用填寫,好處就從這裏就看出來了,目前只是列舉了兩個請求,如果成百上千的請求是不是效果就更明顯了。


 


   好了,今天有關創建網絡計劃實戰和創建高級Web測試計劃就分享到這裏。灰常感謝您閱讀到這裏,如果您覺得不錯,就幫忙點個推薦唄。


您的肯定就是我進步的動力。如果你感覺還不錯,就請鼓勵一下吧!記得隨手點波  推薦  不要忘記哦!!!


別忘了點 推薦 留下您來過的痕迹


 


本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益



擁有後台管理系統的網站,將擁有強大的資料管理與更新功能,幫助您隨時新增網站的內容並節省網站開發的成本。





Orignal From: Jmeter(五) - 從入門到精通 - 創建網絡計劃實戰和創建高級Web測試計劃(詳解教程),Jmeter(三) - 從入門到精通 - 測試計劃(Test Plan)的元件(詳解教程),Jmeter(三) - 從入門到精通 - 測試計劃(Test Plan)的元件(詳解教程)_台北網頁設計

留言

這個網誌中的熱門文章

Python 併發總結,多線程,多進程,異步IO

1 測量函數運行時間 import time def profile(func): def wrapper(*args, ** kwargs): import time start = time.time() func( *args, ** kwargs) end = time.time() print ' COST: {} ' .format(end - start) return wrapper @profile def fib(n): if n<= 2 : return 1 return fib(n-1) + fib(n-2 ) fib( 35 )   2 啟動多個線程,並等待完成   2.1 使用threading.enumerate() import threading for i in range(2 ): t = threading.Thread(target=fib, args=(35 ,)) t.start() main_thread = threading.currentThread() for t in threading.enumerate(): if t is main_thread: continue t.join()   2.2 先保存啟動的線程 threads = [] for i in range(5 ): t = Thread(target=foo, args= (i,)) threads.append(t) t.start() for t in threads: t.join()   3 使用信號量,限制同時能有幾個線程訪問臨界區 from threading import Semaphore import time sema = Semaphor...

高雄十大包子名店出爐

, 圖文:吳恩文 高雄包子大賽落幕了,我只能就我個人意見, 介紹一下前十名這些包子,但是不能代表其他四位評審的意見,雖然身為評審長,我通常不會第一個表示意見,以免影響其他評審, 我主要工作是負責發問。   這次參賽的素包子很少,而且都不夠細致,又偏油,我不愛, 但是第一名的甜芝麻包-熔岩黑金包,竟然是素食得名- 漢來蔬食巨蛋店。   這包子賣相太好,竹炭粉的黑色外皮刷上金粉,一上桌,眾人驚呼, 搶拍照,內餡是芝麻餡,混一點花生醬增稠,加入白糖芝麻油, 熔岩爆漿的程度剛剛好,我一直以為芝麻要配豬油才行、 但是選到好的黑芝麻油一樣不減香醇, 當下有二位評審就想宅配回家。   尤其特別的是,黑芝麻餡室溫易化,師傅必須要輪班躲在冷藏室內, 穿著大外套才能包,一天包不了多少,我笑說,漢來美食,集團餐廳那麼多,實力雄厚,根本是「 奧運選手報名參加村裡運動會」嘛,其他都是小包子店啊, 但是沒辦法,顯然大家都覺得它好看又好吃, 目前限定漢來蔬食高雄巨蛋店,二顆88元,可以冷凍宅配, 但是要排一陣子,因為供不應求,聽說,四月份, 台北sogo店開始會賣。   第二名的包子,左營寬來順早餐店,顯然平易近人的多,一顆肉包, 十塊錢,是所有參賽者中最便宜的,當然,個頭也小, 它的包子皮明顯和其他不同,灰灰的老麵,薄但紮實有嚼勁, 肉餡新鮮帶汁,因為打了些水,味道極其簡單,就是蔥薑,塩, 香油,薑味尤其明顯,是老眷村的味道, 而特別的是老闆娘是台灣本省人, 當年完全是依據眷村老兵的口味一步一步調整而來,沒有加什麼糖、 五香粉,胡椒粉,油蔥酥。就是蔥薑豬肉和老麵香,能得名, 應該是它的平實無華,鮮美簡單,打動人心。   這是標準的心靈美食,可以撫慰人心,得名之前,寛來順已經天天排隊,現在,恐怕要排更久了, 建議大家六七點早點上門。   第三名,「專十一」很神奇,我記得比賽最後, 大家連吃了幾家不能引起共鳴的包子,有些累,到了專十一, 就坐著等包子,其他評審一吃,就催我趕快試,我一吃, 也醒了大半。   它的包子皮厚薄適中,但是高筋麵粉高些,老麵加一點點酵母, 我心中,它的皮屬一屬二,至於餡又多又好吃,蛋黃還是切丁拌入, 不是整顆放,吃起來「美味、均衡、飽滿」。一顆二十元。   老闆是陸軍專科十一期畢業取名專十一,...

韋伯連續劇終於更新 期待第一季順利完結

  地球天文學界的跳票大王詹姆斯·韋伯空間望遠鏡 (James Webb Space Telescope,縮寫為 JWST)自 1996 年以來斷斷續續不按劇本演出的連續劇終於讓焦慮的觀眾們又等到了一次更新:五層遮陽罩測試順利完成。 裝配完成的韋伯望遠鏡與好夥伴遮陽罩同框啦。Credit: NASA   嚴格的測試是任何空間任務順利成功的重中之重。遮陽罩,這個韋伯望遠鏡異常重要的親密夥伴,要是無法正常運轉的話,韋伯的這一季天文界連續劇說不準就要一直拖更了。   詹姆斯·韋伯空間望遠鏡是歷史上造出的最先進的空間望遠鏡。它不僅是一架紅外望遠鏡,還具有特別高的靈敏度。但想要達到辣么高的靈敏度來研究系外行星和遙遠的宇宙童年,韋伯童鞋必須非常"冷靜",體溫升高的話,靈敏度會大大折損。這個時候,遮陽罩就要大顯身手啦。   遮陽罩在韋伯的設計中至關重要。韋伯望遠鏡會被發射到拉格朗日 L2 點,運行軌道很高,遠離太陽、地球與月球。太陽是韋伯的主要熱量干擾的來源,其次是地球與月球。遮陽罩會有效阻斷來自這三大熱源的能量並保護韋伯維持在工作溫度正常運轉。這個工作溫度指的是零下 220 攝氏度(-370 華氏度;50 開爾文)。 上圖中我們可以看出,韋伯望遠鏡的配置大致可分為兩部分:紅色較熱的一面溫度為 85 攝氏度,藍色較冷的一面溫度達到零下 233 攝氏度。紅色的這部分中,儀器包括太陽能板、通信設備、計算機、以及轉向裝置。藍色部分的主要裝置包括鏡面、探測器、濾光片等。Credit: STSci.   遮陽罩的那一部分和望遠鏡的鏡面這部分可以產生非常極端的溫差。遮陽的這面溫度可以達到 110 攝氏度,足以煮熟雞蛋,而背陰處的部分溫度極低,足以凍結氧氣。   工程師們剛剛完成了五層遮陽罩的測試,按照韋伯在 L2 時的運行狀態安裝了遮陽罩。L2 距離地球約 160 萬公里。NASA 表示這些測試使用了航天器的自帶系統來展開遮陽罩,測試目前都已成功完成。韋伯望遠鏡遮陽罩負責人 James Cooper 介紹說這是遮陽罩"第一次在望遠鏡系統的电子設備的控制下展開。儘管這個任務非常艱巨,難度高,但測試順利完成,遮陽罩展開時的狀態非常驚艷"。   遮陽罩由五層 Kapton 製成。Kapton 是一種聚酰亞胺薄膜材料, 耐高溫絕...