.env 文件设置环境变量
默认情况下,在自动化测试项目的根目录中,创建 .env 文件,并将敏感数据信息放置到其中,存储采用 name=value 的格式: 脚手架生成的接口测试项目中,会自动生成.env文件,可直接在.env中添加环境变量:
注意:.env不允许有空行,可以注释掉不需要的变量
如图,在.env中填写username和password
引用环境变量
在 HttpRunner 中内置了函数 environ(简称 ENV),可用于在 YAML/JSON 脚本中直接引用环境变量。
${ENV(username)}
config:
name: "登录成功"
variables:
password: tester
expect_foo2: config_bar2
base_url: "https://api.pity.fun"
verify: False
export:
- token
# parameters:
# username-password: ${get_account()}
# setup_hooks:
# - ${testcase_set_up(setup)}
# teardown_hooks:
# - ${testcase_tear_down(teardown)}
teststeps:
-
name: 登录成功
variables:
foo1: bar1
setup_hooks:
- ${get_request($request)}
teardown_hooks:
- ${get_reponse($response)}
request:
method: POST
url: /auth/login
headers:
Content-Type: "application/json"
json:
{"username":"${ENV(username)}","password":"${ENV(password)}"}
extract:
token: body.data.token
validate:
- eq: ["status_code", 200]
- eq: [body.code,0]
- eq: [body.msg,"登录成功"]
指定.env执行暂未找到运行方法
注意:httprunner v2.x支持,但是v3.x暂不支持以下方式运行指定.env。
若需加载不位于自动化项目根目录中的 .env,或者其它名称的 .env 文件(例如 production.env),可以采用 --dot-env-path 参数指定文件路径:
$ hrun /path/to/testcase.yml --dot-env-path /path/to/.env -s