Я запускаю следующий тест в Sanic с помощью PyTest, но получаю
приспособление 'loop' не найдено
ошибка, я следовал руководству в ссылка на сайт, где в приложении make возвращает приложение Sanic.
import pytest
import json
from main import make_app
@pytest.yield_fixture
def app():
app = make_app()
yield app
@pytest.fixture
def test_cli(loop, app, test_client):
return loop.run_until_complete(test_client(app))
async def test_fixture_test_client_post(test_cli):
data = {
"urls" : [
"https://images.pexels.com/photos/789380/pexels-photo-789380.jpeg",
"https://images.pexels.com/photos/280204/pexels-photo-280204.jpeg"
]
}
response = await test_cli.post('/v1/images/upload',data=json.dumps(data))
assert response.status == 200
ничего не возвращается
Тогда вам потребуется pip install pytest-sanic. В комплект sanic не входит плагин для pytest, он находится в отдельном пакете.
Я уже сделал это
Переустановил и вроде работает.






Я удалил pytest-sanic, переустановил, и он сработал.
как @hoefling упомянул в комментариях,
запуск этой команды pytest -v --collect-only | grep plugins
показал, что плагин установлен неправильно
Что возвращает
pytest -v --collect-only | grep plugins?