Conversation
| assert len(collector.get_books_genre()) == 2 | ||
|
|
||
| def test_add_new_book_with_long_name_not_added(self): | ||
| collector = BooksCollector() |
There was a problem hiding this comment.
Отлично: в каждом тесте создается собственный экземпляр BooksCollector, но можно лучше - перенести создание экземпляра в фикстуры в отдельный файл conftest, а не повторять это предусловие в каждом тесте
| favorites = collector.get_list_of_favorites_books() | ||
| assert isinstance(favorites, list) | ||
| assert len(favorites) == 2 | ||
| def test_add_new_book_with_max_length_name(self): |
There was a problem hiding this comment.
нужно исправить: попровить индентацию, эти тесты вывалились из тестового класа. нужно подвинуть на 4 пробела вправо все
There was a problem hiding this comment.
также как будто тут есть дублирование, это лишний код?
| collector.add_book_in_favorites('Книга 1') | ||
| collector.add_book_in_favorites('Книга 2') | ||
| favorites = collector.get_list_of_favorites_books() | ||
| assert isinstance(favorites, list) |
There was a problem hiding this comment.
Нужно исправить: отсутствуют тесты на проверку методов get_books_genre. На каждый метод должен быть отдельный тест, вне зависимости, вызывается он в других тестах или нет
| collector.add_book_in_favorites('Книга 2') | ||
| favorites = collector.get_list_of_favorites_books() | ||
| assert isinstance(favorites, list) | ||
| assert len(favorites) == 2 |
There was a problem hiding this comment.
Нужно исправить: согласно заданию необходимо создать как минимум один параметризированный тест. В данном задании для параметризации лучше всего подходят граничные значения в классе длины имени - отдельно невалидные значения и отдельным тестом - ГЗ для валидных
There was a problem hiding this comment.
Нужно исправить: из финального проекта нужно удалить все файлы и папки, которые не относятся к решению задачи
|
|
||
| --- | ||
|
|
||
| ### Тест 1: Невалидные значения длины названия |
There was a problem hiding this comment.
нужно исправить: почему в ридми лежит код тестов?
| def test_get_books_with_specific_genre(self, collector_with_genres): | ||
| horror_books = collector_with_genres.get_books_with_specific_genre('Ужасы') | ||
| assert len(horror_books) == 1 | ||
| assert 'Книга 2' in horror_books |
There was a problem hiding this comment.
Можно лучше: не стоит хранить одно и то же тестовое значение отдельно - если что-то было создано в фикстуре, то тут стоит вызвать это значение, а не дублировать его. Иначе тесты станут неподдерживаемыми - легко изменить что то в фикстуре (например) и не заметить что и в тесте тоже нужно поменять. Так как сейчас эти данные не связаны, но должны быть. Удачное решение - создать файл с тестовыми данными и обращаться к нему и в фикстуре и в тестах
| assert len(collector.get_books_rating()) == 2 | ||
| # Тесты инициализации | ||
| def test_genre_age_rating_initialized_correctly(self, collector): | ||
| assert collector.genre_age_rating == ['Ужасы', 'Детективы'] |
There was a problem hiding this comment.
Нужно исправить: мы тестируем не атрибуты экземпляров класса, а методы приложения. Необходимо добавить шаги в которых будут использованы методы и проверить результат.
либо удалить тесты на атрибуты
No description provided.