接口測試及其工具簡單使用


一、接口測試的概念

    弄清楚接口測試,首先要了解前端(client端)和后端(server端),前端目前主流三個系統,web端和移動端,web端常用語言是html、css、js。移動端分為ios和Android,ios常用語言是swift、object-c,Android常用語言就是Android。而后端(server端)開發語言就比較多了,如java、python、php、.net等等。而接口就是把前后端聯系起來的一種數據類型傳送方式。測試接口必須要有接口文檔,按照接口文檔的入參與出參格式對照進行比對。

   接口測試現在用的最常見的數據傳送類型就是json。格式如下:

{
'name':'王五' ,
'sex':男
}

接口返回的數據都是json。
key-value
鍵值對

目前還有xml這種數據類型。格式如下:

<name>wangwu</name>ianjia
<sex>nan</sex>

  接口測試其實就是功能測試,包含各種花樣操作數據庫。如果是get請求,不需要借助任何工具,瀏覽器可以直接發送請求。參數需要在路徑后面加?添加,多個參數傳參參數和參數之間用&隔開如:

http://ip/api/user/stu_info?stu_name=小四&sex=女&xxx=xx

二、cookie和session的概念

  cookie就是存放在本地的一個鍵值對。如:

niuhanyang:hahaha12345,實際上key-value中的value值可能會做一些特殊處理。

session就是存放在服務器的一個鍵值對。如:

niuhanyang:hahaha12345,實際上key-value中的value值可能會做一些特殊處理。

  當本地清除緩存后,本地存放的鍵值對消失,這個時候服務器校驗需要重新登錄。目前主流大型網站都實行的是DNS解析,就是將域名解析成IP。

三。http請求及get請求和post請求區別

http請求分為兩個部分,請求頭和請求體,請求頭里面呢是一些額外的信息,比如說用的什么瀏覽器,cookie,需要什么類型數據,header,請求體里面傳的是具體的數據。

get請求和post請求的區別:

1、get請求只有請求頭,是沒有請求體的。它的數據直接放在url里面的,post請求數據是放在body里面的。

2、get請求有長度限制,post請求沒有,在以前的時候技術不好,有長度限制,現在已經就沒有了。

3、get請求和post請求一樣,只要通過抓包,post請求數據一樣可以看到。

http狀態碼:

200 請求成功
302 重定向
404 客戶端發出去的請求不合法
500 服務端內部程序問題  501 服務器還不具有請求功能 502 錯誤的網關 503 服務器在維護或暫停 504 網關超時

工具篇:

一、postman變量設置

 

 添加變量,點擊globals,輸入變量名和變量值,引用時是用{{}}符號引用。

二、jmeter

jmeter是一款開源的java開發的一個壓力測試工具。

jmeter查看結果樹亂碼解決方法:

1、在jmeter的bin目錄下找到jmeter.properties這個文件添加上sampleresult.default.encoding=utf-8。
2、重啟jmeter。

jmeter body data里面有亂碼解決方法:

1、在jmeter的bin目錄下找到jmeter.properties這個文件添加上jsyntaxtextarea.font.family=Hack。
2、重啟jmeter。

jmeter參數化三種方式:

1、在用戶自定義變量。

2、函數助手框中的函數生成器。

__random  代表隨機數,代表在某個范圍值取隨機
__counter  計數器函數,從1開始計數。
__time     時間函數,有2種,一種是格式化好的時間 yyyyMMddHHmmss,一種是時間戳,從計算機發明那一天到現在過了多少秒。

jmeter是java開發的,Java里面的時間戳默認是精確到毫秒。

所以你要除以1000才是真正的時間戳。

3、從文件中讀取

jmeter斷言:

jmeter關聯:

1、調用第一個接口,然后從這個接口的返回數據里面拿到某個值
2、放到第二個接口里面來用。

 

 


免責聲明!

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



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