Атрибут text
Атрибут text применяется к объекту ответа
TestResponse, который возвращает тестовый клиент
приложения Flask. Атрибут содержит тело ответа,
декодированное в строку с помощью кодировки,
указанной в заголовке Content-Type ответа.
Если кодировка не указана, используется UTF-8.
Атрибут text удобно использовать для проверки
текстового содержимого ответа в тестах, например
при сравнении с ожидаемой строкой или при поиске
подстроки внутри ответа.
Синтаксис
response.text
Пример
Давайте создадим приложение Flask и проверим текстовое содержимое ответа через тестовый клиент:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'hello'
client = app.test_client()
response = client.get('/')
res = response.text
print(res)
Результат выполнения кода:
"hello"
Пример
Давайте проверим, что ответ содержит нужную
подстроку, используя оператор in:
from flask import Flask
app = Flask(__name__)
@app.route('/user')
def user():
return 'article'
client = app.test_client()
response = client.get('/user')
res = 'article' in response.text
print(res)
Результат выполнения кода:
True
Пример
Давайте вернём HTML-страницу через шаблон
и получим её текст через атрибут text:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
client = app.test_client()
response = client.get('/')
res = response.text
print(res)
<p>{{ text }}</p>
Результат выполнения кода:
<p>abcde</p>
Смотрите также
-
класс
TestResponse,
который представляет ответ тестового клиента -
атрибут
data,
который возвращает тело ответа в виде байтов -
метод
get_data,
который возвращает тело ответа как байты -
атрибут
status_code,
который возвращает код состояния ответа