В мире тестирования программного обеспечения утверждения играют решающую роль в обеспечении корректности нашего кода. Pytest, популярная среда тестирования на Python, предоставляет нам мощные методы утверждения для проверки ожидаемых результатов. В этой статье мы сосредоточимся конкретно на утверждении словарей в pytest, включая разговорный язык и практические примеры кода, которые помогут вам легко усвоить эти концепции. Итак, давайте углубимся и станем мастерами утверждений Pytest!
Утверждение равенства словарей.
Одним из наиболее распространенных сценариев при работе со словарями является утверждение их равенства. Для этого в pytest мы можем использовать оператор assert
с оператором ==
. Давайте рассмотрим пример:
def test_dict_equality():
expected = {'name': 'John', 'age': 25}
actual = {'name': 'John', 'age': 25}
assert expected == actual
В этом примере мы сравниваем словари expected
и actual
, используя оператор ==
в операторе assert
.. Если словари равны, тест пройден; в противном случае это не удастся.
Утверждение ключей словаря.
Иногда нам может потребоваться проверить, содержит ли словарь определенные ключи. Для этого в pytest мы можем использовать оператор assert
с оператором in
. Давайте посмотрим пример:
def test_dict_keys():
data = {'name': 'John', 'age': 25, 'country': 'USA'}
assert 'name' in data
assert 'age' in data
В этом примере мы проверяем, существуют ли ключи 'name'
и 'age'
в словаре data
. Если да, то утверждения проходят; в противном случае тест не пройден.
Утверждение значений словаря.
В дополнение к утверждению ключей мы также можем захотеть проверить значения, связанные с этими ключами. Pytest предоставляет различные методы для этого. Давайте рассмотрим несколько примеров:
def test_dict_values():
data = {'name': 'John', 'age': 25, 'country': 'USA'}
assert data['name'] == 'John'
assert data.get('age') == 25
В первом примере мы напрямую получаем доступ к значению, связанному с ключом 'name'
, и сравниваем его с ожидаемым значением. Во втором примере мы используем метод get()
для получения значения, связанного с ключом 'age'
, и подтверждения его равенства. Оба утверждения пройдут, если значения совпадают.
Утверждение длины словаря.
Чтобы гарантировать, что словарь содержит определенное количество пар ключ-значение, мы можем подтвердить его длину с помощью функции len()
. Вот пример:
def test_dict_length():
data = {'name': 'John', 'age': 25, 'country': 'USA'}
assert len(data) == 3
В этом примере мы проверяем, равна ли длина словаря data
3. Если да, утверждение проходит.
В этой статье мы рассмотрели различные методы утверждения словарей в pytest. Мы научились сравнивать словари на равенство, проверять наличие определенных ключей, проверять значения и проверять длину словаря. Освоив эти методы, вы приобретете необходимые навыки для написания надежных и надежных тестов для ваших приложений Python.