postman+jmeter接口實例


 接口基礎

一、為什么要單獨測試接口?

1. 程序是分開開發的,前端還沒有開發,后端已經開發完了,可以提前進入測試
2. 接口直接返回的數據------越底層發現bug,修復成本是越低的
3. 接口測試能模擬功能測試不能測到的異常情況,例如修改訂單金額

二、get請求和post請求

兩者的區別:

get請求向服務端獲取數據的 ,post請求向服務端發送數據

get傳參寫在url或cookie中 ,post將數據放在body中

get請求沒有請求體,只有請求頭,post有請求頭和請求體

get有長度限制(x)現在沒有限制了

post請求更安全(x)抓包都能抓到,都不安全

三、http狀態碼
2xx 請求成功 常見的200
3xx 重定向
4xx 客戶端發送的請求語法錯誤
5xx 服務端問題

四、cookie和session

cookie 存在用戶本地的一個鍵值對 key-value

seesion 存在服務端的一個鍵值對

cookie和seesion 同一個值比對,比對相等允許操作

postman接口實例

1.get類型 

 可以直接在瀏覽器中進行測試,?后寫參數,&拼參數

2.post類型

請求選擇post,添加參數即可

3.入參是jason類型

選擇Body-raw-JSON(application/json),直接將jason串復制進來

4.請求頭加cookie

在Headers中添加cookie的key和value

5.請求頭加refer

6.上傳文件

body-form-data-File-選擇文件即可

 jmeter基礎

1.添加http請求

  sep1測試計划-添加-Threads-線程組

sep2 線程組-添加-Sample-http請求

sep3 添加域名、端口號、協議、請求方法、路徑、編碼格式、參數

參數為文件 Files Upload --添加--文件名稱:文件的絕對路徑,或直接把文件放在jmeter的bin路徑下,直接添加文件名,參數名稱:參數名

 

sep4添加斷言(相當於LR中的檢查點) 請求-添加-斷言-響應斷言---斷言內容請求response中的值

sep5 添加監聽查看請求結果  線程組、請求-添加-監聽器-察看結果樹

 

sep6 根據需要添加配置原件(例如cookie或http信息頭)

2.參數化、關聯

 參數化-----服務器或程序校驗輸入值的唯一性需要參數化,例如新加用戶,手機后不能重復添加

方法一:添加-配置元件-CSV Data Set Config

 參數化文件首行不用寫參數名,引用參數時 -----${參數名}

方法二:使用函數助手

選項---函數助手 常用的time取到秒級可以用做唯一性的參數的取值,random生成一個取值范圍,任意取其中的一個值

方法三:配置原件-----用戶定義的變量,一 一寫出來

 

關聯----服務器返回動態碼,為了通過服務器的驗證,使用關聯,例如,添加金幣,需要服務器返回動態的記錄用戶登錄狀態的sign串

方法一:正則表達式

添加-后置處理器-正則表達式提取器

 正則表達式,需要看從哪個請求返回,就去那個請求的返回集中找,找到后復制該動態值以及左右邊界,動態值替換為正則表達式即可

方法二 jason path(需要安裝插件)$.login_info.sign  代表返回jason串中,取真個jason下面的login_info節點下面的sign的值

 3.jmeter操作數據庫

sep1測試計划加載java連接mysql的jar包

sep2 添加JDBC Connection Configuration   線程組-添加-配置元件-JDBC Connection Configuration

Variable Name 可以任意添寫

database url:jdbc:mysql://ip:端口號/庫名?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true    注:characterEncoding=UTF-8保證新增修改數據庫中文不亂碼,allowMultiQueries=true 允許同一個請求同時寫增刪改查操作

JDBC driver Class:com.mysql.jdbc.Driver  固定寫法

username:數據路用戶名 Password 數據庫密碼

sep3 添加 jdbc request   線程組-添加-Sample-JDBC Request

Variable Name 一定要和JDBC Connection Configuration中Variable Name已知,否則報錯

Query Type 選Callables Statement 可以同時寫增刪改查

4.jmeter解決亂碼

在jmeter.properties 這個文件里面

找到sampleresult.default.encoding=xx

后面xx改成utf-8,然后取消注釋

解決jmeterbody里面中文顯示不出來
找到 JSyntaxTextArea
然后把注釋取消就行了,以js開頭的

解決請求參數中午亂碼 請求頁面

content encoding 填寫utf-8

 

解決數據庫操作中文亂碼

database url后添加characterEncoding=UTF-8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM