米利唐_后腰_乌克兰足球超级联赛_中国竞彩欧赔 - 足球竞彩分析

集團官網
  • 國家級全民數字素養與技能培訓基地
  • 河南省第一批產教融合型企業建設培育單位
  • 鄭州市數字技能人才(碼農)培養評價聯盟

如何測試接口的登錄狀態?

編輯:云和數據 日期:2023-04-11 10:32

一、登錄態是什么?

在接口測試領域,登錄態就是指登錄狀態。

1、登錄態的作用

作用:用來維持接口的登錄狀態

在瀏覽器中,我們登錄后,瀏覽器會自動把登錄狀態保存下來,所以不需要我們管理,就能進行登錄后的操作。

但是在接口測試過程當中,我們需要手動管理登錄狀態。

2、登錄態的本質

本質:客戶端登錄成功后,由服務器發放給客戶端,用來維持登錄狀態的隨機字符串,這個字符串又稱之為令牌

在登錄后,客戶端每次請求都需要把令牌發送給服務器,服務器接收到令牌后,會校驗令牌對應的數據信息,從而判斷用戶是否處于“已登錄”的狀態

3、如何維持登錄態?

維持登錄態有3步:

第一步:修改代碼的配置,把代碼中令牌的有效時間改為永久有效

這一步:一般讓令牌找開發協調完成(成熟的公司應該會知道這個套路)

第二步:獲取到令牌

按照接口的規定來獲取令牌。

在項目應用中,令牌有3種常見方式獲取

令牌存放在cookie中,獲取cookie就可以提取令牌

令牌存放在登錄接口中,從登錄接口返回數據中提取令牌

單獨提供授權接口,從授權接口中獲取令牌

第三步: 使用令牌

令牌存放在cookie中時,讀取cookie來使用

令牌放在登錄接口中時,使用提取的令牌

單獨授權接口,使用授權接口返回的令牌

以上,要維持登錄態,需要根據項目對令牌的處理來靈活選擇處理方法。

如果令牌存放在cookie中,那么我們把cookie保存下來即可維持登陸態;

如果令牌存放在登錄接口中,那么我們把登錄接口返回的令牌保存下來即可維持登錄態;

如果令牌存放在授權接口中,那么我們把授權接口返回的令牌保存下來即可維持登錄態。

二、如何獲取和使用登錄態?

案例1 ihrm登錄的登錄態

工具:Jmeter

核心:拿到登錄后的令牌

業務分析:ihrm項目的令牌主要是從登錄接口中獲取,并且登錄后的接口需要通過請求頭中Authorization屬性來設置,設置格式要求是:Bearer空格令牌,示例:Bearer xxxx

操作步驟:

打開抓包工具fiddler,并設置過濾ihrm域名得過濾條件,然后清空所有數據包;

走一遍登錄流程,查看最后一個登錄成功返回的token;

在jmeter的請求頭當中,添加Authorization的屬性,并設置抓取到的token的值。

(1)打開ihrm系統登錄主頁,確認能連接上線上的ihrm系統

ihrm-test.itheima.net/#/login

1594624194532_接口測試01.jpg

(2)打開fiddler設置過濾ihrm-test.itheima.net的過濾條件

1594624213413_接口測試02.jpg

然后點擊Actions應用生效,選擇第一個Run Filterset now

1594624239668_接口測試03.jpg


3、點擊登錄,點擊之后,fildder會抓取到登錄接口

1594624266516_接口測試04.jpg


4、回到fildder查看第一個接口,一般就是我們要抓取的登錄接口

1594624290366_接口測試05.jpg


5、查看響應數據中的令牌

1594624324641_接口測試06.jpg

其中,返回的json格式的數據中data的值,就是我們要用來維持登錄態的令牌

6、在jmeter的信息頭當中添加Authorization屬性,并設置屬性值為Bearer 令牌

HTTP信息頭管理器添加方法:對線程組右鍵->添加->配置元件->HTTP信息頭管理器

1594624352917_接口測試07.jpg


7、設置登錄后的接口用戶資料查詢接口

接口信息

1594624371549_接口測試08.jpg

?

1594624403543_接口測試09.jpg


8、點擊運行,查看結果


1594624425195_接口測試10.jpg

9、總結

這樣,我們就使用抓取ihrm登錄接口返回的令牌,來完成了登錄后的接口“用戶資料查詢接口”的請求操作。

在使用過程中,關鍵是要明確兩點:

1、ihrm項目的令牌是從登錄接口中獲取;

2、登錄后的接口相關接口(如用戶資料查詢接口),需要通過請求頭中Authorization屬性來設置。

三、 使用登錄態技術的意義

應用場景1:性能測試時,不再需要單獨調用登錄接口要保持登錄狀態,從而更準確的測試相關接口。

應用場景2:有些登錄接口的操作,安全校驗做到了極致,非常難以破解,這個時候,我們也可以通過客戶端登錄來獲取登錄態。(前提是找項目開發明確登錄令牌是哪個字段)

相關內容

搶先一步 鴻蒙(HarmonyOS)應用開發者高級認證 免費考! 適合人群計算機相關專業在校生(技師、中職、高職、本科、研究生)對鴻蒙(HarmonyOS)有興趣的非計算機相關專業在校生目前正在從事移動應用的開發者目前正在從事計算機行業相關的人計算機專業高校老師所有對鴻蒙(HarmonyOS)有興趣的人 培訓方案掌握鴻蒙的核心概念和端云一體化開發、... 什么是Java的多態性(polymorphism)?它有哪些不同的形式? 多態性是Java面向對象編程的一個重要概念,它允許不同的對象以一致的方式響應同一個方法調用,具體表現為對象在運行時可以表現出多個不同的形態。多態性主要有兩種不同的形式:編譯時多態性(靜態多態性)和運行時多態性(動態多態性)。1. 編譯時多態性(靜態多態性):   ... 如何學習和搭建Hadoop開發環境? Hadoop是大數據處理領域的重要平臺,能夠處理和分析大量數據。為了有效地利用Hadoop,我們需要學習其基礎知識,并正確搭建開發環境。下面是詳細的學習和搭建指南。一、學習Hadoop基礎掌握基礎概念和原理Hadoop主要由HDFS和MapReduce兩部分組成。HDFS是分布式文件系統,Ma... UI 設計學習如何進階成為高手 我總結了六種方法,幫助你走出舒適區,提高技能,成長為自信且經驗豐富的UI設計高手一位經驗豐富的 UI 設計師,往往十分看中應用程序界面的吸引力和視覺刺激,確保滿足用戶期望和需求。但是,如果你已經在 UI 設計圈摸爬滾打多年,仍然沒有出色的作品,那你極有可能是因為陷入了一個舒適圈,UI技能一直原... 在Java中Executor和Executors的區別? 在Java中,Executor和Executors都與線程池和并發執行有關,但它們是不同的概念和類。1.ExecutorExecutor是一個接口,位于java.util.concurrent包中,用于表示一個執行任務的執行器。它只定義了一個方法:void execute(Runnable c... String類型的常見命令有哪些? String類型,也就是字符串類型,是Redis中最簡單的存儲類型。其value是字符串,不過根據字符串的格式不同,又可以分為3類:string是普通字符串,int整數類型,可以做自增、自減操作,float浮點類型,可以做自增、自減操作。String的常見命令有:SET:添加或者修改已經存在的...