Может кто-нибудь объяснить, как я могу использовать приборы pytest в своих тестах?
Мне дали это conftest.py
, где он определяет 3 прибора Pytest:
{...}
@pytest.fixture(scope='session', autouse=True)
def app(request):
app = create_app({
'TESTING': True
})
ctx = app.app_context()
ctx.push()
def teardown():
ctx.pop()
request.addfinalizer(teardown)
return app
@pytest.fixture(scope='function')
def client(app, request):
return app.test_client()
@pytest.fixture(scope='function')
def get(client):
return humanize_werkzeug_client(client.get)
Я пытаюсьчтобы проверить мое приложение, используя вышеуказанные тестовые приборы. Исходя из моего недостаточного уровня, мне нужно использовать это приспособление app
в моих пестестах. Как видно из этого блога , я пробовал что-то вроде этого:
def test_myflaskapp(app):
response = app.get('/')
assert response.status_code == 200
Но я получаю ошибку атрибута: AttributeError: 'Flask' object has no attribute 'get'
. Этот ответ не имел для меня никакого смысла. Боюсь, я не уверен, применимо ли оно к моему делу.
Может кто-нибудь объяснить, как / что я делаю неправильно? Я пытаюсь выучить Flask
/ PyTest
и не могу найти пример / руководство, объясняющее, как это работает.