jmeter壓力測試php
前提場景的設置:單場景(單個接口進行壓力測試一個請求)或混合場景(有業務流程的場景進行壓力測試多個請求),壓測時間通常在5--1515分組具體看需求。java
數據準備:數據量少和數據量大的狀況下,測試的結果是不同的,在設計場景的時候是要考慮到這種狀況的,要測試數據庫中數據量大和數據量小的狀況,若是是要測試數據量大的狀況下,就要造數據了,造數據可使用jmeter,操做數據庫來造數據,也可使用python鏈接數據庫,批量的造數據。python
查看壓測結果:tps每秒鐘處理的請求數,每一個請求處理的響應時間,併發用戶數。mysql
jmeter斷言sql
用來驗證結果是否正確,若是正確的話,就表明這個請求的返回是正確的,若是沒有的話就表明這個請求的結果和咱們預期的不一致,這樣咱們就能夠通斷言來檢查返回結果,測試是否經過。數據庫
jmeter數據庫的操做小程序
1.導入jdbc的jar包,由於jmeter自己不能直接鏈接mysql,因此須要導入第三方的jar包,來鏈接mysql。直接在測試計劃下面添加mysql的包,線程組--右鍵添加--配置元件數組
2.建立數據庫鏈接配置,mysql的url、端口號、帳號、密碼瀏覽器
3.寫sql,執行sql服務器
4.查看結果
抓包工具備哪些:常見的抓包工具備fiddler,wireshark ,charles, HttpWatch, firebug 等
Charles的基本功能使用
Charles簡介:charles是一款經常使用的截取網絡抓包的工具,由於他是基於 java 開發的,因此跨平臺,Mac、Linux、Window下都是可使用的,確保安裝以前已經安裝了JDK。Charles 經過將本身設置成系統的網絡訪問代理服務器,使得全部的網絡訪問請求都經過它來完成,從而實現了網絡封包的截取和分析。
手機端使用charles進行抓包:
第一步,在charles裏設置容許手機聯網的權限;你須要把charles設置爲容許的狀態而且設置容許的端口號,這樣手機端才能正常的接入;
在Charles的菜單欄上選擇「Proxy」->「Proxy Settings」,填入代理端口號(注意,端口不必定填寫8888,也能夠寫別的端口,可是須要記住由於這裏設置的容許接入的端口,手機端配置的時候須要用到),而且勾上」Enable transparent HTTP proxying」 就完成了在Charles上的設置。以下圖;
查看當前電腦ip地址:能夠直接用cmd ipconfig 進行查看地址。或者直接在Charles--help--Local IP Address 進行查看地址。(ip地址須要與手機配對)
能夠任意打開一個瀏覽器輸入一下地址進行驗證,Charles會彈出提示。
第二步,把手機按照charles的IP和端口進行配置;(手機和電腦網絡在同一個wifi)
在iPhone的 「設置」->「無線局域網「能夠看到當前鏈接的wifi名,點擊右邊的詳情鍵,進入到鏈接上的wifi的詳細信息,包括IP地址,子網掩碼等信息。在其最底部有「HTTP代理」一項,咱們將其切換成手動,而後填上Charles運行所在的電腦的IP,以及端口號填寫你在charles的端口號
第三步,手機配對成功後,charles還會彈窗是否容許;
設置好以後,咱們打開iPhone上的任意須要網絡通信的程序,就能夠看到Charles彈出iPhone請求鏈接的確認菜單
如上圖的彈窗,點擊容許便可;此時已經配對成功,開始愉快的抓包吧;
python基礎知識
Python特色:優雅,明確,簡單易懂,第三方庫比較多。
paython開發的應用:網絡應用,包括網站、後臺服務等等;平常須要的小工具,系統管理員須要的腳本任務等等;另外就是把其餘語言開發的程序再包裝起來,方便使用。
Python的缺點:第一個缺點就是運行速度慢,第二個缺點就是代碼不能加密。若是要發佈你的Python程序,實際上就是發佈源代碼。
python 的基礎知識
python中有一如下幾種數據類型:Numbers(數字),string()--字符串,Tuple(元組),list--數組或列表,sets(集合)
轉義符 '\'天然字符串, 經過在字符串前加r或R。 如 r"this is a line with \n" 則\n會顯示,並非換行。
Numbers(數字):int、float、bool、complex(複數),
string()--字符串:str用單引號(' ')或雙引號(" ")括起來,同時使用反斜槓(\)轉義特殊字符,
list(列表):列表是寫在方括號之間、用逗號分隔開的元素列表,列表中元素的類型能夠不相同。例如:a = ['him', 25, 100, 'her']
Tuple(元組):與列表相似,不一樣之處在於元組的元素不能修改。元組寫在小括號裏,元素之間用逗號隔開。例如:a = (1991, 2014, 'physics', 'math')
sets(集合):是一個無序不重複元素的集。基本功能是進行成員關係測試和消除重複元素。可使用大括號 或者 set()函數建立set集合,注意:建立一個空集合必須用 set() 而不是 { },由於{ }是用來建立一個空字典,例如:student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}
python註釋:單行註釋以#開頭,多行註釋用三個單引號(''')或者三個雙引號(""")將註釋括起來。
python算數運算符
python比較運算符
python賦值運算符
python位運算符
python邏輯運算符
條件判斷:if語句
age = 20
if age > 18:
print('your age is', age)
備註:定義一個數值,判斷當前給出的數值是否與定義的相同,相同就執行print語句。或者: if else
age = 15
if age > 18:
print("your age is", age)
else:
print("輸出錯誤")
多重判斷: if --elif--elseage = 3
if age>=18:
print("aaaa")
elif age>=10:
print("bbbb")
else:
peinr("ccccc")
備註:先執行if條件,經過就直接打印print,如不經過執行elif語句,經過就打印,不經過就在執行else語句。
python循環,有兩種循環for和whlie
break:當即結束循環,無論循環有沒有完成
continue:結束本次循環,繼續進行下一次循環
whlie循環
while 判斷條件:
statements
while循環,要帶上計數器,若是使用continue,計數器不會累計,可能會產生死循環
for循環
登陸小程序
備註:for else語句能夠總結成如下話。
若是我依次作完了全部的事情(for正常結束),我就去作其餘事(執行else),若作到一半就停下來不作了(中途遇到break),我就不去作其餘事了(不執行else)。只有循環完全部次數,纔會執行 else 。break 能夠阻止 else 語句塊的執行。