update parameterize feature:

def get_user_agent():
        return ["iOS/10.1", "iOS/10.2"]

    def get_account_in_tuple():
        return [("user1", "111111"), ("user2", "222222")]
This commit is contained in:
debugtalk
2018-12-17 20:16:52 +08:00
parent 73ba469b42
commit 94464c323a
3 changed files with 45 additions and 9 deletions

View File

@@ -45,6 +45,9 @@ def skip_test_in_production_env():
"""
return os.environ["TEST_ENV"] == "PRODUCTION"
def get_user_agent():
return ["iOS/10.1", "iOS/10.2"]
def gen_app_version():
return [
{"app_version": "2.8.5"},
@@ -57,6 +60,9 @@ def get_account():
{"username": "user2", "password": "222222"}
]
def get_account_in_tuple():
return [("user1", "111111"), ("user2", "222222")]
def gen_random_string(str_len):
random_char_list = []
for _ in range(str_len):

View File

@@ -376,8 +376,10 @@ class TestParser(unittest.TestCase):
def test_parse_parameters_custom_function(self):
parameters = [
{"user_agent": "${get_user_agent()}"},
{"app_version": "${gen_app_version()}"},
{"username-password": "${get_account()}"}
{"username-password": "${get_account()}"},
{"username2-password2": "${get_account_in_tuple()}"}
]
dot_env_path = os.path.join(
os.getcwd(), "tests", ".env"
@@ -388,9 +390,20 @@ class TestParser(unittest.TestCase):
parameters,
functions_mapping=loader.load_module_functions(debugtalk)
)
self.assertIn(
{
'user_agent': 'iOS/10.1',
'app_version': '2.8.5',
'username': 'user1',
'password': '111111',
'username2': 'user1',
'password2': '111111'
},
cartesian_product_parameters
)
self.assertEqual(
len(cartesian_product_parameters),
2 * 2
2 * 2 * 2 * 2
)
def test_parse_parameters_parameterize(self):