У меня есть словарь, содержащий сопоставление возможных допустимых значений. Как я могу проверить, что моя функция проверки работает с использованием этой карты? Я не могу понять, как правильно использовать параметр @parameterize
в pytest для этой карты.
Моя первая попытка была такой:
TEST_MAP = {
'key1': ['val1', 'val2', 'val3'],
'key2': ['val1', 'val2', 'val4', 'val5'],
'key3': ['val2', 'val4'],
'key4': ['val3', 'val4', 'val6'],
}
@pytest.mark.parametrize("map", TEST_MAP)
def test_map(self, map):
...
validate()
assert ...
Проблема в том, что это толькоперебирая ключи. Я также хочу перебрать значения для каждого ключа. Мне нужно проверить комбинации ключ / значение.
Как мне настроить параметризацию этого контрольного примера для проверки пар ключ / значение вызова на моей карте?
Я не хочу повторятьнад значениями в тесте для каждого ключа. Я хочу, чтобы каждый ключ / значение был его собственным уникальным тестом.