Освоение утверждений в Pytest: руководство по утверждению словарей и не только

В мире тестирования программного обеспечения утверждения играют решающую роль в обеспечении корректности нашего кода. 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

В этом примере мы проверяем, равна ли длина словаря data3. Если да, утверждение проходит.

В этой статье мы рассмотрели различные методы утверждения словарей в pytest. Мы научились сравнивать словари на равенство, проверять наличие определенных ключей, проверять значения и проверять длину словаря. Освоив эти методы, вы приобретете необходимые навыки для написания надежных и надежных тестов для ваших приложений Python.