Как правильно обработать запрос API E2E в бэкэнде?Javascript

Форум по Javascript
Ответить
Anonymous
 Как правильно обработать запрос API E2E в бэкэнде?

Сообщение Anonymous »

Я настроил бэкэнд API с помощью FastAPI. Бэкэнд -тестирование уже было сделано. Но я не знаю, как правильно проверить фронт, который является USIGN API. Потому что я хочу хотя бы один тест, который выполняется с помощью реального запроса API. Единственная проблема заключается в том, что в моем бэкэнд используется база данных, и я не нашел разумного способа заменить это соединение базы данных на поддельное соединение с базой данных, чтобы он не случайно не оставался активным в производстве из -за какой -то ошибки.
В настоящее время я использую Jest , но с тех пор я еще не сдал никаких тестов, вы также можете рекомендовать другие.export default async function createTodoAPI(name, description, accessToken) {
const response = await fetch(`${import.meta.env.VITE_API_URL}/todo/create`, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": `Bearer ${accessToken}`
},
body: JSON.stringify({name: name, description: description})
});

if (!response.ok) {
data = await response.json();
throw new Error(data.detail || "Creation failed: An unexpected error is occurred.");
};
}

< /code>
Что я попробовал, но каким -то образом чувствует себя некомфортно, используя: < /p>
import os
import sys
import logging

logger = logging.getLogger(__name__)

TEST_MODE: bool = os.getenv("TEST_MODE", "false").lower() == "true"
PRODUCTION: bool = os.getenv("IS_PRODUCTION", "false").lower() == "true"

# Defines the database url
if TEST_MODE and PRODUCTION:
logger.error("\nTEST MODE COULD NOT BE ACTIVATED WHILE THE PRODUCTION IS ACTIVATED TOO.")
sys.exit(1)
elif TEST_MODE:
DB_URL = "sqlite+aiosqlite:///:memory:"
logger.warning("\n\nTEST MODE IS ACTIVATED: Using in-memory database.\n\n")
else:
DB_URL = os.getenv("DATABASE_URL")


Подробнее здесь: https://stackoverflow.com/questions/797 ... -correctly
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»