Вы можете добавить такой крючок в свой conftest.py
:
def pytest_collection_modifyitems(items):
for item in items:
item.add_marker('asyncio')
. Или сделать это по файлу, вы можете установить pytestmark = pytest.mark.asyncio
глобально в этом файле.
Google не поддерживает TestCafe специально. TestCafe использует прокси-сервер, который вставляет тестовый код JavaScript в тестируемую страницу. Тестовый код использует все, что предоставляет браузер API.
Puppeteer (или Google) явно не поддерживает TestCafe. TestCafe использует Chrome DevTools Protocol (и даже кукловод ) для управления браузером.
TestCafe может использовать xvfb
для имитации сервера дисплея для запуска Chrome, или вы можете указать запуск Chrome в режиме headless
(код из документов ):
testCafe
.src('path/to/test/file.js')
.browsers('chrome:headless')
.run();
[ 1112] Так что вам не нужно устанавливать кукловод для запуска тестов в Chrome с помощью TestCafe.
Если вы все еще хотите, чтобы TestCafe вместо этого использовал puppeteer
для управления Chrome, существует неофициальный плагин под названием testcafe-browser-provider-puppeteer . Вы можете указать, что вы хотите для плагина, как это (взято из документов ):
testCafe
.createRunner()
.src('path/to/test/file.js')
.browsers('puppeteer')
.run();