Что такое assertEquals в Python?

У меня есть следующий файл test.py в Django. не могли бы вы объяснить этот код?

from contacts.models import Contact
...
class ContactTests(TestCase):
    """Contact model tests."""

    def test_str(self):

        contact = Contact(first_name='John', last_name='Smith')

        self.assertEquals(
            str(contact),
            'John Smith',
        )

5 ответов

Решение
from contacts.models import Contact  # import model Contact
...
class ContactTests(TestCase):  # start a test case
    """Contact model tests."""

    def test_str(self):  # start one test

        contact = Contact(first_name='John', last_name='Smith')  # create a Contact object with 2 params like that

        self.assertEquals(  # check if str(contact) == 'John Smith'
            str(contact),  
            'John Smith',
        )

По сути, он проверит, если str(contact) == 'John Smith', если нет, то утверждение равняется неудачно, тест не пройден и уведомит вас об ошибке в этой строке.

Другими словами, assertEquals - это функция, которая проверяет, равны ли две переменные, для целей автоматического тестирования:

def assertEquals(var1, var2):
    if var1 == var2:
        return True
    else:
        return False

Надеюсь, поможет.

assertEquals это метод на unittest.TestCase класс

Это формирует тестовое утверждение; где str(contact) должен быть равен 'John Smith' для прохождения теста.

assertEquals устарел с Python 3.2, вам следует использовать assertEqual (нет s).

Или pytest.

AssertEquals устанавливает ваш тест как пройденный, если __str__ вашей contact объект возвращает 'John Smith`. Это часть юнит-тестов, вы должны проверить официальную документацию

Синтаксис: assertEqual(first, second, msg=None)

Проверьте, что первое и второе равны. Если значения не сравниваются равными, тест не пройден. Кроме того, он также проверит, являются ли first и second одинаковыми типами, а также списком, кортежем, dict, set, frozenset или unicode.

в вашем случае это проверит, проверит if str(contact) == 'John Smith', если нет, то утверждение равно не удалось.

assertEquals проверяет, равны ли две переменные друг другу.

Другие вопросы по тегам