#python #pytest #fastapi
#питон #пытест #fastapi
Вопрос:
Я немного новичок в python и FastApi. Я запускаю несколько pytests и получаю 422 ответа вместо 201.
Вот код.
pizza_type_dict =
{
'name': 'Salami Pizza',
'price': 2.50,
'description': 'Italian style'
}
def create_sauce_for_pizza_type():
response = client.post(
"/v1/sauces",
json={"name": "Spicy sauce", "price": 0.5, "description": "good sauce", "stock": 10},
)
assert response.status_code == 201
response_body = response.json()
pizza_type_dict['sauce_id'] = response_body['id']
def test_create_pizza_type():
response = client.post(
"/v1/pizza-types",
json=pizza_type_dict
)
assert response.status_code == 201
response_body = response.json()
assert response_body['name'] == 'Salami Pizza'
assert response_body['price'] == 2.50
assert response_body['description'] == 'Italian style'
pizza_type_dict['id'] = response_body['id']
Класс sauces имеет идентификатор (uuid) в качестве атрибута, а класс pizza_type имеет атрибут sauce_id в качестве атрибута. Дело в том, что когда я объявляю существующий
uuid в pizza_type_dict, тест работает. Является ли это проблемой python dict?
Комментарии:
1. кто вызывает
create_sauce_for_pizza_type
функцию? Я предложу перенести это в fixture2. Какой из них выходит из строя, что он говорит, пожалуйста, также поделитесь ими, как выглядит ваша конечная точка и т.д.