**Added**

- feat: implement global hooks `setup_testcase/teardown_testcase`, called before/after each testcase
- feat: implement global hooks  `setup_teststep/teardown_teststep`, called before/after each teststep

**Changed**

- remove default header `HRUN-Request-ID`, implement the same function with global hooks
This commit is contained in:
debugtalk
2020-04-17 21:56:20 +08:00
parent ec6b600524
commit c537a50cc0
7 changed files with 60 additions and 16 deletions

View File

@@ -2,6 +2,9 @@ import os
import random
import string
import time
import uuid
from loguru import logger
from tests.api_server import HTTPBIN_SERVER, gen_md5, get_sign
@@ -25,6 +28,26 @@ def get_default_request():
}
def setup_testcase(variables):
logger.info(f"setup_testcase, variables: {variables}")
variables["request_id_prefix"] = str(int(time.time()))
def teardown_testcase():
logger.info(f"teardown_testcase.")
def setup_teststep(request, variables):
logger.info(f"setup_teststep, request: {request}, variables: {variables}")
request.setdefault("headers", {})
request_id_prefix = variables["request_id_prefix"]
request["headers"]["HRUN-Request-ID"] = request_id_prefix + "-" + str(uuid.uuid4())
def teardown_teststep(response):
logger.info(f"teardown_teststep, response status code: {response.status_code}")
def sum_two(m, n):
return m + n

View File

@@ -9,6 +9,8 @@ config:
teststeps:
-
name: headers
variables:
a: 123
request:
url: /headers
method: GET