Тестирование
Справочник
Функциональная система тестирования для приложений Falcon и самого Falcon.
Модуль тестирования Falcon содержит различные классы тестов и служебные функции для поддержки функционального тестирования как для приложений, основанных на Falcon, так и для самого фреймворка Falcon.
Система тестирования поддерживает как unittest, так и pytest:
# -----------------------------------------------------------------
# unittest
# -----------------------------------------------------------------
from falcon import testing
import myapp
class MyTestCase(testing.TestCase):
def setUp(self):
super(MyTestCase, self).setUp()
# Assume the hypothetical `myapp` package has a
# function called `create()` to initialize and
# return a `falcon.API` instance.
self.app = myapp.create()
class TestMyApp(MyTestCase):
def test_get_message(self):
doc = {u'message': u'Hello world!'}
result = self.simulate_get('/messages/42')
self.assertEqual(result.json, doc)
# -----------------------------------------------------------------
# pytest
# -----------------------------------------------------------------
from falcon import testing
import pytest
import myapp
# Depending on your testing strategy and how your application
# manages state, you may be able to broaden the fixture scope
# beyond the default 'function' scope used in this example.
@pytest.fixture()
def client():
# Assume the hypothetical `myapp` package has a function called
# `create()` to initialize and return a `falcon.API` instance.
return testing.TestClient(myapp.create())
def test_get_message(client):
doc = {u'message': u'Hello world!'}
result = client.simulate_get('/messages/42')
assert result.json == doc
-
class falcon.testing.Result(iterable, status, headers)[source] -
Инкапсулирует результат моделируемого запроса WSGI.
Параметры: -
status -
str – Строка HTTP статуса, указанная в ответе
-
status_code -
int – Код части строки HTTP статуса
-
headers -
CaseInsensitiveDict – Словарь, не чувствительный к регистру, содержащий все заголовки в ответе, за исключением куки, доступ к которым можно получить через атрибут
cookies.Примечание
В настоящее время не поддерживается несколько экземпляров одного заголовка в ответе; не определено, какое значение «победит» и будет представлено в
headers.
-
dict – Словарь значений
falcon.testing.Cookie, разобранных из ответа по имени.
-
encoding -
str – Кодировка текста тела ответа или
None, если кодировка не может быть определена.
-
content -
bytes – Необработанное тело ответа или
bytes, если тело ответа было пустым.
-
text -
str – Декодированное тело ответа типа
unicodeв Python 2.6 и 2.7, и типаstrв противном случае. Если тип контента не указывает кодировку, используется UTF-8.
-
json -
dict – Десериализованное тело JSON. Вызывает ошибку, если ответ не JSON.
-
-
class falcon.testing.Cookie(morsel)[source] -
Представляет куки, возвращённые моделируемым запросом.
Параметры: morsel – Объект Morsel, из которого извлекаются данные куки.-
name -
str – Имя куки.
-
value -
str – Значение куки.
-
expires -
datetime.datetime – Метка времени истечения срока действия куки или
None, если не указана.
-
path -
str – Префикс пути, к которому ограничена эта куки, или
None, если не указан.
-
domain -
str – Домен, к которому ограничена эта куки, или
None, если не указан.
-
max_age -
int – Срок действия куки в секундах, или
None, если не указан.
-
secure -
bool – Указывает, может ли куки передаваться только через HTTPS со стороны клиента.
-
http_only -
bool – Указывает, может ли куки включаться только в незапрограммированные запросы от клиента.
-
-
falcon.testing.simulate_request(app, method='GET', path='/', query_string=None, headers=None, body=None, file_wrapper=None, params=None, params_csv=True, protocol='http')[source] -
Моделирует запрос к приложению WSGI.
Выполняет запрос к приложению WSGI. Использует
wsgiref.validateдля проверки того, что ответ является действительным WSGI.Ключевые аргументы: - app (callable) – Приложение WSGI для вызова
- method (str) – HTTP-метод для использования в запросе (по умолчанию: ‘GET’)
- path (str) – Путь URL для запроса (по умолчанию: ‘/’)
- protocol – Протокол для использования в схеме URL (по умолчанию: ‘http’)
-
params (dict) – Словарь параметров строки запроса, где каждый ключ — это имя параметра, а каждое значение — либо
str, либо что-то, что может быть преобразовано вstr, или список таких значений. Еслиlist, значение будет преобразовано в строку значений, разделённых запятыми (например, ‘thing=1,2,3’). -
params_csv (bool) – Устанавливается в
False, чтобы закодировать списочные значения в параметрах строки запроса, указав несколько экземпляров параметра (например, ‘thing=1&thing=2&thing=3’). В противном случае параметры будут закодированы как значения, разделённые запятыми (например, ‘thing=1,2,3’). По умолчаниюTrue. -
query_string (str) – Сырая строка запроса для включения в запрос (по умолчанию:
None). Если указано, переопределяетparams. -
headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию:
None) -
body (str) – Строка, отправляемая в качестве тела запроса. Принимает как байтовые строки, так и строки Unicode (по умолчанию:
None). Если указана строка Unicode, она будет закодирована как UTF-8 в запросе. -
file_wrapper (callable) – Функция, возвращающая итерируемый объект, который будет использоваться в качестве значения для wsgi.file_wrapper в окружении (по умолчанию:
None). Это можно использовать для тестирования высокопроизводительной передачи файлов, когдаresp.streamустановлено в объект типа файл.
Возвращает: Результат запроса
Тип возвращаемого значения:
-
falcon.testing.simulate_get(app, path, **kwargs)[source] -
Имитирует GET-запрос к WSGI-приложению.
Эквивалентно:
simulate_request(app, 'GET', path, **kwargs)
Параметры: Ключевые аргументы: -
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
str, либо то, что может быть преобразовано вstr, или список таких значений. Если значение —list, значение будет преобразовано в строку значений, разделённых запятыми (например, «thing=1,2,3»). -
params_csv (bool) – Установите в
Falseдля кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделённые запятыми (например, «thing=1,2,3»). По умолчаниюTrue. -
query_string (str) – Необработанная строка запроса для включения в запрос (по умолчанию:
None). Если указано, переопределяетparams. -
headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию:
None) -
file_wrapper (callable) – Функция, возвращающая итерируемый объект, используемый в качестве значения для wsgi.file_wrapper в среде (по умолчанию:
None). Это может использоваться для тестирования высокопроизводительной передачи файлов, когдаresp.streamимеет значение, похожее на объект файла. - protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
-
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
-
falcon.testing.simulate_head(app, path, **kwargs)[source] -
Имитирует HEAD-запрос к WSGI-приложению.
Эквивалентно:
simulate_request(app, 'HEAD', path, **kwargs)
Параметры: Ключевые аргументы: -
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
str, либо то, что может быть преобразовано вstr, или список таких значений. Если значение —list, значение будет преобразовано в строку значений, разделённых запятыми (например, «thing=1,2,3»). -
params_csv (bool) – Установите в
Falseдля кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделённые запятыми (например, «thing=1,2,3»). По умолчаниюTrue. -
query_string (str) – Необработанная строка запроса для включения в запрос (по умолчанию:
None). Если указано, переопределяетparams. -
headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию:
None) - protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
-
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
-
falcon.testing.simulate_post(app, path, **kwargs)[source] -
Имитирует POST-запрос к WSGI-приложению.
Эквивалентно:
simulate_request(app, 'POST', path, **kwargs)
Параметры: Ключевые аргументы: -
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
str, либо то, что может быть преобразовано вstr, или список таких значений. Если значение —list, значение будет преобразовано в строку значений, разделённых запятыми (например, «thing=1,2,3»). -
params_csv (bool) – Установите в
Falseдля кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделённые запятыми (например, «thing=1,2,3»). По умолчаниюTrue. -
headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию:
None) -
body (str) – Строка, отправляемая в теле запроса. Принимает как байтовые строки, так и строки Unicode (по умолчанию:
None). Если предоставлена строка Unicode, она будет закодирована как UTF-8 в запросе. - protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
-
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
-
falcon.testing.simulate_put(app, path, **kwargs)[source] -
Имитирует PUT-запрос к WSGI-приложению.
Эквивалентно:
simulate_request(app, 'PUT', path, **kwargs)
Параметры: Ключевые аргументы: -
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
str, либо то, что может быть преобразовано вstr, или список таких значений. Если значение —list, значение будет преобразовано в строку значений, разделённых запятыми (например, «thing=1,2,3»). -
params_csv (bool) – Установите в
Falseдля кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделённые запятыми (например, «thing=1,2,3»). По умолчаниюTrue. -
headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию:
None) -
body (str) – Строка, отправляемая в теле запроса. Принимает как байтовые строки, так и строки Unicode (по умолчанию:
None). Если предоставлена строка Unicode, она будет закодирована как UTF-8 в запросе. - protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
-
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
-
falcon.testing.simulate_options(app, path, **kwargs)[source] -
Имитирует запрос OPTIONS к WSGI-приложению.
Эквивалентно:
simulate_request(app, 'OPTIONS', path, **kwargs)
Параметры: Ключевые аргументы: -
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
strили то, что может быть преобразовано вstr, или список таких значений. Еслиlist, значение будет преобразовано в строку значений, разделенных запятыми (например, ‘thing=1,2,3’). -
params_csv (bool) – Установите в
Falseдля кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, ‘thing=1&thing=2&thing=3’). В противном случае параметры будут закодированы как значения, разделенные запятыми (например, ‘thing=1,2,3’). По умолчаниюTrue. -
headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию:
None) - protocol – Протокол для использования в схеме URL (по умолчанию: ‘http’)
-
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
-
falcon.testing.simulate_patch(app, path, **kwargs)[source] -
Имитирует запрос PATCH к WSGI-приложению.
Эквивалентно:
simulate_request(app, 'PATCH', path, **kwargs)
Параметры: Ключевые аргументы: -
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
strили то, что может быть преобразовано вstr, или список таких значений. Еслиlist, значение будет преобразовано в строку значений, разделенных запятыми (например, ‘thing=1,2,3’). -
params_csv (bool) – Установите в
Falseдля кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, ‘thing=1&thing=2&thing=3’). В противном случае параметры будут закодированы как значения, разделенные запятыми (например, ‘thing=1,2,3’). По умолчаниюTrue. -
headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию:
None) -
body (str) – Строка для отправки в теле запроса. Принимает как байтовые строки, так и строки Unicode (по умолчанию:
None). Если предоставлена строка Unicode, она будет закодирована в UTF-8 в запросе. - protocol – Протокол для использования в схеме URL (по умолчанию: ‘http’)
-
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
-
falcon.testing.simulate_delete(app, path, **kwargs)[source] -
Имитирует запрос DELETE к WSGI-приложению.
Эквивалентно:
simulate_request(app, 'DELETE', path, **kwargs)
Параметры: Ключевые аргументы: -
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
strили то, что может быть преобразовано вstr, или список таких значений. Еслиlist, значение будет преобразовано в строку значений, разделенных запятыми (например, ‘thing=1,2,3’). -
params_csv (bool) – Установите в
Falseдля кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, ‘thing=1&thing=2&thing=3’). В противном случае параметры будут закодированы как значения, разделенные запятыми (например, ‘thing=1,2,3’). По умолчаниюTrue. -
headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию:
None) - protocol – Протокол для использования в схеме URL (по умолчанию: ‘http’)
-
params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо
-
class falcon.testing.TestClient(app)[source] -
Имитирует запросы к WSGI-приложению.
Этот класс предоставляет контекстный обертка для
simulate_*тестовых функций Falcon. Он позволяет заменить следующее:simulate_get(app, '/messages') simulate_head(app, '/messages')
на это:
client = TestClient(app) client.simulate_get('/messages') client.simulate_head('/messages')Параметры: app (callable) – WSGI-приложение, к которому будут обращаться при моделировании запросов -
simulate_delete(path='/', **kwargs)[source] -
Моделирует запрос DELETE к WSGI-приложению.
См. также:
falcon.testing.simulate_delete().
-
simulate_get(path='/', **kwargs)[source] -
Моделирует запрос GET к WSGI-приложению.
См. также:
falcon.testing.simulate_get().
-
simulate_head(path='/', **kwargs)[source] -
Моделирует запрос HEAD к WSGI-приложению.
См. также:
falcon.testing.simulate_head().
-
simulate_options(path='/', **kwargs)[source] -
Моделирует запрос OPTIONS к WSGI-приложению.
См. также:
falcon.testing.simulate_options().
-
simulate_patch(path='/', **kwargs)[source] -
Моделирует запрос PATCH к WSGI-приложению.
См. также:
falcon.testing.simulate_patch().
-
simulate_post(path='/', **kwargs)[source] -
Моделирует запрос POST к WSGI-приложению.
См. также:
falcon.testing.simulate_post().
-
simulate_put(path='/', **kwargs)[source] -
Моделирует запрос PUT к WSGI-приложению.
См. также:
falcon.testing.simulate_put().
-
simulate_request(*args, **kwargs)[source] -
Моделирует запрос к WSGI-приложению.
Обертка для
falcon.testing.simulate_request()для прямого выполнения WSGI-запроса кself.app. Эквивалентно:falcon.testing.simulate_request(self.app, *args, **kwargs)
-
-
class falcon.testing.TestCase(methodName='runTest')[source] -
Расширяет
unittestдля поддержки функционального тестирования WSGI.Примечание
Если доступно, использует
testtoolsвместоunittest.Этот базовый класс предоставляет дополнительную функциональность для тестовых случаев в стиле unittest, чтобы помочь смоделировать вызовы WSGI без необходимости запуска фактического веб-сервера. Различные методы моделирования основаны на
falcon.testing.TestClient.Просто унаследуйте от этого класса в своих тестовых классах вместо
unittest.TestCaseилиtesttools.TestCase.-
app -
object – WSGI-приложение, к которому обращаться при моделировании запросов (по умолчанию:
falcon.API()). При тестировании вашего приложения вам нужно будет установить это значение на свой экземплярfalcon.API. Например:from falcon import testing import myapp class MyTestCase(testing.TestCase): def setUp(self): super(MyTestCase, self).setUp() # Assume the hypothetical `myapp` package has a # function called `create()` to initialize and # return a `falcon.API` instance. self.app = myapp.create() class TestMyApp(MyTestCase): def test_get_message(self): doc = {u'message': u'Hello world!'} result = self.simulate_get('/messages/42') self.assertEqual(result.json, doc)
-
api -
object – Устаревшее псевдоним для
app
-
api_class -
callable – Устаревшая переменная класса; будет удалена в будущей версии.
-
-
class falcon.testing.SimpleTestResource(status=None, body=None, json=None, headers=None)[source] -
Мок-ресурс для функционального тестирования компонентов фреймворка.
Этот класс реализует простой тестовый ресурс, который можно расширять по мере необходимости для тестирования middleware, хуков и самого фреймворка Falcon.
Реализованы только noop
on_get()иon_post()обработчики; при переопределении этих обработчиков или добавлении дополнительных обработчиков в дочерних классах их можно украсить хукомfalcon.testing.capture_responder_args()для захвата аргументов req, resp и params, передаваемых обработчику. Обработчики также могут быть украшены хукомfalcon.testing.set_resp_defaults()для установки свойств resp со значениями по умолчанию status, body и header.Ключевые аргументы: - status (str) – Строка статуса по умолчанию для использования в ответах
- body (str) – Строка тела по умолчанию для использования в ответах
- json (dict) – Документ JSON по умолчанию для использования в ответах. Будет сериализован в строку и закодирован как UTF-8. Можно указать либо json, либо body, но не оба.
- headers (dict) – Набор дополнительных заголовков по умолчанию для включения в ответы
-
called -
bool – Было ли захвачено req/resp.
-
captured_req -
falcon.Request – Последний объект Request, переданный в любой из методов обработчиков.
-
captured_resp -
falcon.Response – Последний объект Response, переданный в любой из методов обработчиков.
-
captured_kwargs -
dict – Последний словарь kwargs, помимо
reqиresp, которые были переданы в любой из методов обработчиков.
-
class falcon.testing.StartResponseMock[source] -
Мок-объект, представляющий WSGI
start_responseвызываемый объект.-
call_count -
int – Количество вызовов
start_response.
-
status -
str – Строка HTTP-статуса, например, ‘785 TPS Cover Sheet not attached’.
-
headers -
list – Список исходных заголовков, переданных в
start_response, согласно PEP-333.
-
headers_dict -
dict – Заголовки в виде нечувствительного к регистру
dict-подобного объекта, а неlist.
-
-
falcon.testing.capture_responder_args(req, resp, resource, params)[source] -
Обработчик перед выполнением для захвата аргументов ответа.
Добавляет следующие атрибуты к классу ресурса обработанного ответчика:
- captured_req
- captured_resp
- captured_kwargs
-
falcon.testing.rand_string(min, max)[source] -
Возвращает случайную строку случайной длины.
Параметры:
-
falcon.testing.create_environ(path='/', query_string='', protocol='HTTP/1.1', scheme='http', host='falconframework.org', port=None, headers=None, app='', body='', method='GET', wsgierrors=None, file_wrapper=None)[source] -
Создаёт имитацию среды PEP-3333
dictдля моделирования WSGI-запросов.Ключевые аргументы: - path (str) – Путь для запроса (по умолчанию ‘/’)
- query_string (str) – Строка запроса для моделирования без ведущего ‘?’ (по умолчанию ‘’)
- protocol (str) – HTTP-протокол для моделирования (по умолчанию ‘HTTP/1.1’). Если установлено ‘HTTP/1.0’, заголовок Host не будет добавлен в среду.
- scheme (str) – Схема URL, либо ‘http’, либо ‘https’ (по умолчанию ‘http’)
- host (str) – Имя хоста для запроса (по умолчанию ‘falconframework.org’)
- port (str) – TCP-порт для моделирования. По умолчанию использует стандартный порт для заданной схемы (т.е. 80 для ‘http’ и 443 для ‘https’).
-
headers (dict) – Заголовки в виде
dictили итерируемого объекта, возвращающего (ключ, значение)tuple‘s -
app (str) – Значение для
SCRIPT_NAMEпеременной среды, описанное в PEP-333: «Начальная часть пути URL запроса, соответствующая объекту приложения, чтобы приложение знало своё виртуальное «местоположение». Может быть пустой строкой, если приложение соответствует «корню» сервера.» (по умолчанию ‘’) - body (str) – Тело запроса (по умолчанию ‘’). Принимает как байтовые строки, так и строки Unicode. Строки Unicode кодируются как UTF-8 в запросе.
- method (str) – HTTP-метод (по умолчанию ‘GET’)
-
wsgierrors (io) – Поток для использования в качестве wsgierrors (по умолчанию
sys.stderr) - file_wrapper – Функция, которая возвращает итерируемый объект, который используется в качестве значения для wsgi.file_wrapper в среде.
Устаревшее
-
class falcon.testing.TestBase(methodName='runTest')[source] -
Расширяет
unittestдля поддержки функциональных тестов WSGI.Предупреждение
Этот класс устарел и будет удалён в будущих версиях. Пожалуйста, используйте
TestCaseвместо него.Примечание
Если доступно, использует
testtoolsвместоunittest.Этот базовый класс предоставляет дополнительную функциональность для тестов в стиле unittest, чтобы помочь смоделировать вызовы WSGI без необходимости запуска реального веб-сервера. Просто наследуйте от этого класса в ваших тестовых классах вместо
unittest.TestCaseилиtesttools.TestCase.-
api -
falcon.API – Экземпляр API, на который нацелены при моделировании запросов. По умолчанию
falcon.API().
-
srmock -
falcon.testing.StartResponseMock – Предоставляет вызываемую функцию, которая имитирует поведение аргумента
start_response, который сервер обычно передаёт в WSGI-приложение. Объект-модель захватывает различные данные из ответа приложения на моделированный запрос.
-
test_route -
str – Простой, сгенерированный путь, который тест может использовать для добавления маршрута к API.
-
api_class -
Псевдоним
API
-
setUp()[source] -
Инициализатор, в стиле unittest
-
simulate_request(path, decode=None, **kwargs)[source] -
Имитирует запрос к
self.api.Параметры: - path (str) – Путь для запроса.
-
decode (str, необязательно) – Если это кодировка символов, такая как ‘utf-8’,
simulate_requestбудет предполагать, что ответ — это строка одного байта, и будет декодировать её как результат запроса, а не просто возвращать стандартный WSGI-итерируемый объект. -
kwargs (необязательно) – Те же, что и определённые для
falcon.testing.create_environ.
-
srmock_class -
Псевдоним
StartResponseMock
-
tearDown()[source] -
Деструктор, в стиле unittest
-
-
class falcon.testing.TestResource[source] -
Заглушка ресурса для функционального тестирования.
Предупреждение
Этот класс устарел и будет удален в будущей версии. Пожалуйста, используйте
SimpleTestResourceвместо него.Этот класс реализует
on_getобработчик, собирает данные запроса и устанавливает тело и заголовки ответа.Дочерние классы могут добавлять дополнительные методы и атрибуты по мере необходимости.
-
sample_status -
str – HTTP-статус для установки в ответ
-
sample_body -
str – Случайная строка тела для установки в ответ
-
resp_headers -
dict – Образцовые заголовки для использования в ответе
-
req -
falcon.Request – Объект запроса, переданный в
on_getобработчик.
-
resp -
falcon.Response – Объект ответа, переданный в
on_getобработчик.
-
kwargs -
dict – Аргументы ключевых слов, переданные в
on_getобработчик, если таковые имеются.
-
called -
bool –
True, еслиon_getбыл вызван;Falseв противном случае.
-
on_get(req, resp, **kwargs)[source] -
Обработчик GET.
Собирает
req,resp, иkwargs. Также настраивает образец ответа.Параметры: -
req – Экземпляр Falcon
Request. -
resp – Экземпляр Falcon
Response. - kwargs – Параметры URI шаблона имя=значение, если таковые имеются, а также любые дополнительные аргументы, введённые посредством middleware.
-
req – Экземпляр Falcon
-
© 2012–2016 by Rackspace Hosting, Inc. and other contributors
Licensed under the Apache License, Version 2.0.
https://falcon.readthedocs.io/en/1.2.0/api/testing.html