1. 程式人生 > >loadrunner之獲取登陸介面中的token值

loadrunner之獲取登陸介面中的token值

Loadrunner獲取登陸介面中的token

登入後,伺服器會生成token並返回給客戶端,之後客戶端與伺服器互動的操作中,伺服器程式會對比這個token,正確則允許操作,否則拒絕客戶端請求。

在效能測試時,好多場景需要登入後才能操作,這時候就用到了登入時返回的token,如何獲得token呢?

Loadrunner程式碼如下,需要注意的地方詳見程式碼上方的備註:

===========================================

/*首先,怎麼看介面返回值得內容,請參考另一篇文章《python之介面測試get介面》。假如我的介面返回值是{"return_code":0,"error_code":0,"error_msg":"","current_user_id":"21377","access_token":"xxxxxxxxxxxxxxxxxx"}

。此時我的查詢目標是xxxxxxxxxxxxxxxxxx,它左邊被"access_token":"包裹,右邊被"}包裹。*/

/*web_reg_save_param函式定義你要查詢目標的左右邊界,匹配的結果存在loginToken變數中,注意左邊界"access_token":"每個標點前要加轉義符號,就變為了\"access\_token\"\:\",右邊界"}每個標點前加上轉義符號,就變為了\"\},這很重要,否則你可能找不到你要的結果*/

web_reg_save_param("loginToken",

"LB=\"access\_token\"\:\"",

"RB\=\"\}",

LAST);

// 對登入新增事物,可以沒有,看你喜好

lr_start_transaction("login");

web_url("登入",

"URL=http://192.168.1.99:8080/web/login?username=17800000006&password=000006&client_role=1",

LAST);

lr_end_transaction("login", LR_AUTO);

    // 列印token值,此時token值存在了loginToken變數中,在後續的操作中你可以隨意使用

lr_log_message("user token is:%s",lr_eval_string("{loginToken}"));


------------------------------------------------------------------------------------------------------------------------------

更多請關注:FlyTester,關注技術的測試者

QQ群:456850134

web站:www.flytester.org

微信掃描二維碼關注: