1. 程式人生 > 實用技巧 >HttpRunner2.X學習--設定用例等待時間(用於下一個介面需要前一個介面生效才能執行的介面)

HttpRunner2.X學習--設定用例等待時間(用於下一個介面需要前一個介面生效才能執行的介面)

前言

有這麼一種情況,某一個介面在執行完之後需要等待一定時間才能生效,如果立馬執行下一個介面,就會發現會報錯

在python裡面可以呼叫time函式,再設定用例之間的等待時間

在Httprunner裡,也是可以實現用例等待的,debugtalk.py中定義等待時間的方法,再到用例中呼叫就可以了

操作例項

在debugtalk.py中寫入time.sleep()方法:

import time

#設定用例等待時間
def sleep(response,n_secs):
      if response.status_code == 200:  #介面請求code等於200 則等待n_secs 秒
            time.sleep(n_secs)
      
else: #介面請求code不等於200 則等待0.5 秒 time.sleep(0.5)

再到testcase用例中使用:

- config:
    name: 設定用例等待時間
    variables: {}

- test:
    name: 登入介面-獲取token資訊
    request:
      headers:
        Content-Type: application/json
      method: POST
      url: http://localhost:80/login/
      json:
        username: test
        password: a123456
    extract: 
#extract 提取返回引數中的data值 - token: content.data validate: - eq: [status_code,200] teardown_hooks: - ${sleep($response,10)} #用例等待10s