refactor: rename to parameters

This commit is contained in:
debugtalk
2020-07-06 11:52:18 +08:00
parent 8660128e43
commit fcf29d109a
2 changed files with 57 additions and 3 deletions

View File

@@ -0,0 +1,54 @@
# NOTE: Generated By HttpRunner v3.1.3
# FROM: request_methods/request_with_parameters.yml
from httprunner import HttpRunner, Config, Step, RunRequest, RunTestCase
class TestCaseRequestWithParameters(HttpRunner):
import pytest
from httprunner.parser import parse_parameters
param = [
{
"user_agent": ["iOS/10.1", "iOS/10.2"],
"username-password": "${parameterize(request_methods/account.csv)}",
"app_version": "${get_app_version()}",
}
]
@pytest.mark.parametrize("parameters", parse_parameters(param))
def test_start(self, parameters):
super().test_start(parameters)
config = (
Config("request methods testcase: validate with parameters")
.variables(**{"app_version": "f1"})
.base_url("https://postman-echo.com")
.verify(False)
)
teststeps = [
Step(
RunRequest("get with params")
.with_variables(
**{
"foo1": "$username",
"foo2": "$password",
"sum_v": "${sum_two(1, $app_version)}",
}
)
.get("/get")
.with_params(**{"foo1": "$foo1", "foo2": "$foo2", "sum_v": "$sum_v"})
.with_headers(**{"User-Agent": "$user_agent,$app_version"})
.extract()
.with_jmespath("body.args.foo2", "session_foo2")
.validate()
.assert_equal("status_code", 200)
.assert_string_equals("body.args.sum_v", "${sum_two(1, $app_version)}")
),
]
if __name__ == "__main__":
TestCaseRequestWithParameters().test_start()

View File

@@ -421,7 +421,7 @@ class HttpRunner(object):
step_datas=self.__step_datas,
)
def test_start(self, parametrize=None) -> "HttpRunner":
def test_start(self, parameters: Dict = None) -> "HttpRunner":
"""main entrance, discovered by pytest"""
self.__init_tests__()
self.__project_meta = self.__project_meta or load_project_meta(
@@ -435,8 +435,8 @@ class HttpRunner(object):
# parse config name
config_variables = self.__config.variables
if parametrize:
config_variables.update(parametrize)
if parameters:
config_variables.update(parameters)
config_variables.update(self.__session_variables)
self.__config.name = parse_data(
self.__config.name, config_variables, self.__project_meta.functions