Метод close
Метод close применяется к экземпляру класса TestClient
и закрывает тестовый клиент, освобождая все связанные с ним ресурсы.
Он не принимает параметров и ничего не возвращает.
После вызова close повторное использование клиента
для отправки запросов становится невозможным.
Обычно метод вызывается в конце теста или через конструкцию
with, которая автоматически закрывает клиент.
Синтаксис
client.close()
Пример
Давайте создадим тестовый клиент, выполним запрос
и закроем клиент методом close:
from fastapi import FastAPI
from fastapi.testclient import TestClient
app = FastAPI()
@app.get('/')
def index():
return {'text': 'hello'}
client = TestClient(app)
res = client.get('/')
print(res.json())
client.close()
Результат выполнения кода:
{"text": "hello"}
Пример
Давайте используем конструкцию with,
чтобы клиент закрылся автоматически после выхода из блока:
from fastapi import FastAPI
from fastapi.testclient import TestClient
app = FastAPI()
@app.get('/user/{name}')
def user(name: str):
return {'name': name}
with TestClient(app) as client:
res = client.get('/user/abcde')
print(res.json())
Результат выполнения кода:
{"name": "abcde"}
Смотрите также
-
класс
TestClient,
который создаёт тестовый клиент для приложения FastAPI -
метод
get,
который отправляет GET-запрос через тестовый клиент -
метод
post,
который отправляет POST-запрос через тестовый клиент -
атрибут
app,
который хранит приложение FastAPI внутри тестового клиента