Day16.參數(shù)傳遞(token傳遞,接口關(guān)聯(lián)等)

接口信息說明:
用戶管理模塊
    登錄接口
        api:post
        method:post
        request data:
            {
                "loginName":"IDO",
                "passwd":"123"http://base編碼
            }
    退出接口:
        api:get
        method:get
    添加用戶接口:
        api:post
        method:post
        headers:{
           "Content-Type":"application/json",
           "token":""
        }
        request data:
            {
                "login_name":"IDO",
                "phone":"13100000000",
                "real_name":"老徐",
                "token":""
            }
    編輯用戶接口
        api:put
        method:put
        headers:{
           "Content-Type":"application/json",
           "token":""
        }
        request data:
            {
                "login_name":"IDO",
                "phone":"13100000000",
                "real_name":"老徐",
                "token":""
            }
博文管理模塊:
    添加博文接口:
        api:post
        method:post
        headers:{
           "Content-Type":"application/json",
           "token":""
        }
        request data:
            {
                "blog_name":"21天打卡",
                "bolg_title":"Jmeter打卡之Day16",
                "blog_details":"21天打卡",
                "token":""
            }

1. 傳遞變量說明

1.1 傳參方式

現(xiàn)在大家在用自己公司的接口做操作的時候需要傳遞token,很不方便,所以把傳遞token的打卡提到前面,可能有點難度,慢慢來,有問題留言或者到星球提問,需要用到beanshell解釋器

1.1.1 內(nèi)置變量

//同線程組
vars :操作 jmeter 變量,它是測試用例與 BeanShell 交互的橋梁,常用方法:

vars.get(String key):從jmeter 中獲得變量值
vars.put(String key,String value):數(shù)據(jù)存到 jmeter 變量
//跨線程組
props :操作 jmeter 屬性,該變量引用了 JMeter 的配置信息,可以獲取Jmeter
的屬性,它的使用方法與 vars 類似,但是只能 put 進去 String 類型的值,而不能是一個對象。

props.get("START.HMS");START.HMS 為屬性名,在jmeter.properties 中定義
props.put("PROP1","1234");

1.1.2 函數(shù)助手

        聲明全局變量:
            ${__setProperty(newtoken,${token},)}
        引用全局變量
            ${__P(newtoken,)}

1.2 傳參形式

1.2.1 同線程組

//示例1.beanshell語句
String   str =vars.get("loginName");//獲取變量loginName
vars.put("key",str);//拋出做線程組內(nèi)變量
//其他
默認(rèn)的變量都在本線程組下使用

1.2.2 跨線程組

//示例1.beanshell語句
String   str =vars.get("token");
props.put("newToken",str);
//示例2.函數(shù)助手
${__setProperty(newtoken,${token},)}
//跨線程組引用變量的方式
${__P(newtoken,)}//只需要變量名就可以

2.練習(xí)說明

  • httpbin.org不提供登錄/退出機制,目前我們用上述的模擬登錄接口.
  • token就使用loginName這個字段來模擬,大家在自己公司使用拿正常的token
  • 傳遞參數(shù)需要先生成參數(shù),像token這些的,需要后置處理器中的一個組件


    JSON提取器

3.作業(yè)場景

  • 根據(jù)上面提供的接口信息進行模擬測試,其中,需要將登陸之后的token傳到信息頭部和其他線程組的參數(shù)當(dāng)中。

4.示例腳本

4.1 圖片示例

拋出全局變量

引用全局變量

響應(yīng)頭部

請求數(shù)據(jù)

4.2 腳本示例

鏈接:https://pan.baidu.com/s/1u48r1FErTmujQ4fAf2LTQg 
提取碼:ltqj

Day16.參數(shù)傳遞(token傳遞%2C接口關(guān)聯(lián)等)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容