接口測試隨筆

---恢復內容開始---css

1、接口測試html

 

 

接口測試  postman Jmeter    功能測試,從數據庫查到數據前端

接口返回的數據都是json mysql

前端 : 網頁 html css/app android object-C  頁面展現         後端 : 服務端 業務邏輯處理      依據接口文檔進行測試
get 和 post 區別        一個傳的數據小 一個大
get   瀏覽器默認調用get請求,使用url和cookie傳參 post 數據放到body裏
get   獲取數據   post 發送數據    get具備冪等性,post沒有
傳輸類型,方法,常見的使用場景,優缺點
get 只有包頭   post具備徹底包頭  請求內容等
HTTP 請求 請求頭 請求體    url:xxxx  header 傳輸一些額外信息
200 2開頭訪問成功  300 3開頭表明重定向  
400 4開頭表明客戶端發送請求有語法錯誤 403 無權限 404 無此頁面 
500 5開頭表明服務器有異常 500服務器內部異常 504表明服務器超時
 
cookie  本地存儲鍵值對  session 服務端存放鍵值對      cooke session 詳解 : http://www.nnzhp.cn/archives/426 
順便安利一個頂好用的Jmeter插件                              

Jmeter 安裝插件  http://www.nnzhp.cn/archives/322   android

插件須要安裝在 jmeter下  lib/ext目錄下web

 

url展現爲編碼格式:
 
Jmeter 分佈式壓測
 
1.主控機Jmeter  bin 文件下 配置文件 jmeter.properties    

2.remote_hosts = 壓力機IP地址:1099(","逗號分隔繼續添加)壓力機IP地址:1099sql

3.運行時重啓      壓力機併發數自動分配數據庫

4.運行時選擇遠程所有運行json

 

2.Jmeter命令方式運行後端

1.window圖形化界面裏設計好腳本   2.進入Jmerer bin目錄下運行命令

Jmeter -n -t D:\\test.jmx -l xxxxx.jtl

-n 沒有圖形化界面運行   -t 指定運行哪一個腳本  -l 運行結果保存在哪一個文件

3.打開Jmere圖形化Jmeter圖形化界面,添加聚合報告瀏覽導入運行結果文件

 

postman
cookie 管理

 

文件上傳

 

2、Jmeter性能測試工具

Jmeter寫腳本

一、修改jmeter查看結果樹亂碼問題:

在jmeter\bin目錄下找到jmeter.properties文件,找到sampleresult.default.encoding這個以後在該註釋行下添加以下:

sampleresult.default.encoding=utf-8

保持該文件,並重啓jmeter,就能夠解決jmeter返回解決亂碼的問題

添加線程組

 

Jmeter 文件上傳

 

時間戳: Jmeter 精確到毫秒,從計算機誕生那一天到如今過了多少秒

 

用戶自定義變量 參數化

 

函數助手 --Rodom

 

CSV 參數化  不寫絕對路徑 默認從 Jmeter bin目錄下讀取
HTTP Cookie管理器

 

Jmeter
併發用戶數 tps 服務端每秒處理請求數   響應時間 
聚合報告

 

Jmeter 鏈接數據庫
Database URL : jdbc:mysql://****/jxz?characterEncoding=utf8&allowMultiQueries=true
JDBC Driver class : com.mysql.jdbc.Driver
抓包
 Charles    Fiddler

定位問題

協議 請求方式 數據類型

篡改請求數據

請求項右鍵Breakpoints 

charles  亂碼解決

 
一、爲何須要session和cookie呢?

    web應用的發展經歷三個階段:
    web1.0:強調資源的共享
        http協議從一開始的設計上就是無狀態的。
    web2.0:強調的是交互
        交互的出現就須要有狀態的記錄。
        最先出現的相關的技術就是session和cookie。
    web3.0:強調的是共贏。

二、session和cookie的特徵。
    ·session和cookie都是由服務器生成的。
    ·session和cookie都是鍵值對應的。
    ·session是保存在服務器的,而cookie是返回給客戶端的。
        服務器是在響應頭中,以set-cookie這個信息頭將cookie返回給客戶端。
        session的ID(多是保存session值的文件名稱,也有多是數據庫中的記錄的主鍵,總之在服務器上是惟一的。)通常都是以cookie的形式返回給客戶端的。

    ·session和cookie都是有生命週期的。
        ·session的生命週期受到session自身的生命週期和客戶端是否關閉的影響。

        ·cookie的生命週期受到cookie的生命週期和客戶端是否保存cookie的影響。
        PS:在瀏覽器中,發送請求時都會自動將有效的cookie封裝在請求頭中發送給服務器。

    ·session和cookie都是有做用域。

三、保存狀態的本質:
    一、第一次操做時,若是但願記錄當前操做的狀態,那麼服務器就會生成對應的數據。

    二、第二次操做時,若是但願使用第一次操做的狀態,則客戶端須要提交相關的數據給服務器,服務器會根據自身的邏輯對數據進行必要的校驗。

四、token究竟是什麼呢?
    本質上也是由服務器生成的一個包含特定值的數據,存儲在指定的服務器(本地數據庫、第三方數據庫或者別的),並且以信息頭或者表單的形式返回給客戶端的。

五、綜上可知,服務器要實現狀態的記錄,表現形式是多種多樣的,session、cookie、token、表單數據等都是可選的。
    對於接口測試和性能測試人員來講,
        只須要知道服務器怎麼給回數據,
        請求怎麼攜帶數據便可。


六、爲何session比cookie要安全?
    對於session來講,真正有價值的信息是存儲在服務器上的,對於用戶來講是不可感知的,所以也就不存在泄漏的可能。
    而對於cookie來講,值自己就是返回給客戶的,對於用戶來講是可感知的,也就意味着泄漏和能夠僞造的可能。

                                                                              ---------友情連接一個帥歐巴的博客 :牛牛的雜貨鋪    http://www.nnzhp.cn/

 

Life is too short,do not live the same day twice    |      總想來日方長,只惋惜世事無常




 

---恢復內容結束---

相關文章
相關標籤/搜索