setup_hooks:开始执行前出发的hook函数,主要用于准备工作
teardown_hooks:结束执行后出发hook函数,主要用于测试后的清理工作
首选在debugtalk.py中把方法写好,写最简单的demo 就行,打印文字
def up():
print('----开始执行啦----')
def down():
print('----结束执行啦----')
在API层调用
name: test hook demo
base_url: ${ENV(base_url_2)}
variables:
user: test1
psw: "123456"
request:
method: POST
json:
username: $user
password: $psw
url: /api/register
validate:
- eq: [status_code,200]
setup_hooks:
- ${up()}
teardown_hooks:
- ${down()}
运行一下查看,我们可以看到,前置后置内容都有打印出来
当然 ,我们一般不会在api层调用,基本会在业务逻辑的testcases中调用
如果有2步测试步骤,只需要在单独一步执行前置后置,就写在步骤里
config:
# 用例名称
name: 测试登录页面
base_url: ${ENV(base_url)}
teststeps:
# 测试步骤
-
name: 登录
testcase: testcases/test_login_se.yml
-
name: 获取登录后页面
api: api/accountPage.yml
setup_hooks:
- ${up()}
teaedown_hooks:
- ${down()}
variables:
gettoken: $gettoken
validate:
- eq: [status_code,200]
-
name: 步骤二
testcase: testcases/test_login_se.yml
如果是共用的,则写在config中
config:
# 用例名称
name: 测试登录页面
base_url: ${ENV(base_url)}
setup_hooks:
- ${up()}
teaedown_hooks:
- ${down()}
teststeps:
# 测试步骤
-
name: 登录
testcase: testcases/test_login_se.yml
-
name: 获取登录后页面
api: api/accountPage.yml
variables:
gettoken: $gettoken
validate:
- eq: [status_code,200]
-
name: 步骤二
testcase: testcases/test_login_se.yml