С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 07.03.2024
Сообщений: 1

Тесты на pytest

07.03.2024, 20:54. Показов 401. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
class Product:
title: str
description: str
price: float
quantity: int

def __init__(self, title, description, price, quantity):
self.__title = title
self.__description = description
self.__price = price
self.__quantity = quantity

@property
def price(self):
return self.__price

@property
def title(self):
return self.__title

@property
def quantity(self):
return self.__quantity

def description(self):
return self.__description

@price.setter
def price(self, value):
if 0 >= value:
print("цена введена некорректная")
else:
if self.__price > value:
input_user = input("Подтвердите понижение стоимости (y/n):\n").strip()
if input_user == "y":
self.__price = value
else:
print("Цена не изменилась")
else:
self.__price = value

@classmethod
def add_products(cls, new_product):
title, description, price, quantity = new_product

return cls(title, description, price, quantity)
________________________________________ __________________________________

import pytest
from class_dir.class_product import Product


@pytest.fixture
def smart_product():
return (Product("Samsung Galaxy C23 Ultra", "256GB, Серый цвет, 200MP камера", 180000.0, 5),
Product("Iphone 15", "512GB, Gray space", 210000.0, 8),
Product("Xiaomi Redmi Note 11", "1024GB, Синий", 31000.0, 14))


def test_init_product(smart_product):
assert smart_product[0].title == "Samsung Galaxy C23 Ultra"
assert smart_product[0].description == "256GB, Серый цвет, 200MP камера"
assert smart_product[0].price == 180000.0
assert smart_product[0].quantity == 5

Выводит ошибка AssertionError: assert <bound method Product.description of <class_dir.class_product.Product object at 0x00000239B1AF9670>> == '256GB, Серый цвет, 200MP камера'
как это исправить?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.03.2024, 20:54
Ответы с готовыми решениями:

Программа компилируется, линкуется, но не проходит тесты.Как нужно изменить код, чтобы все тесты проходили?
#include&lt;stdio.h&gt; #include&lt;string.h&gt; #include&lt;stdlib.h&gt; #include&lt;float.h&gt; #include&lt;ctype.h&gt; int main(int argc, char* argv){ ...

Модульные тесты. Unit тесты. Доработка классов
Нужна помощь в создании модульных тестов для прописанных класов будущей программы. xUnit. Возможно будут предложения по доработке и...

Django PyTest
Относительно недавно начал изучать Django, вчера добрался до pytest. Однако столкнулся с непредвиденной ошибкой, в интернете решения тоже,...

2
Заклинатель змей
 Аватар для DobroAlex
705 / 560 / 219
Регистрация: 30.04.2016
Сообщений: 2,605
08.03.2024, 01:23
Artur_Tash, открыть дебагер и посмотреть что лежит в левой части сравнения. Или хотя бы принты добавить. Алсо, ваша фикстура не айс, т.к. возвращает список параметров тест кейсов,а это надо делать через pytest.mark.parametrize
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
08.03.2024, 07:42
Лучший ответ Сообщение было отмечено Artur_Tash как решение

Решение

Цитата Сообщение от Artur_Tash Посмотреть сообщение
как это исправить?
@property добавить, лол.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.03.2024, 07:42
Помогаю со студенческими работами здесь

pytest FileNotFoundError
file_workers/py def read_from_file(filepath): with open(filepath, 'r') as f_o: return f_o.readlines() ...

Pytest в Pycharm
Помогите разобраться: Нужно написать тест на Pytest в Pysharm, но он выдает ошибку. Вроде догадываюсь что дело в input(), но как нужно...

FastAPI и pytest
Использовал инструкцию https://www.fastapitutorial.com/blog/unit-testing-in-fastapi/ но что-то не взлетело conftest.py: import...

Написал Unit тесты для алгоритма сортировки, Можно ли как-то написать эти тесты через TestCase или TestCaseSource?
public class TestsSort { public void TestSelection_ArrayWithUniqueIntElements()//Целые числа { ...

Не делаются скриншоты в pytest
Не делаются скриншоты в pytest Подскажите в чем может быть дело. Тут либо вместо request надо что-то другое (if 'request' in...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru