Детокс-тестирование React Native (Expo) + приложение PouchDB - PullRequest
0 голосов
/ 26 февраля 2019

В настоящее время мы работаем над приложением React Native, используя Expo, и пытаемся заставить Detox (E2E Testing) работать в нашей среде.Мы потратили много времени, чтобы определить, где проблема.Наиболее вероятным претендентом, по-видимому, является то, что pouchDB настроен для прямой синхронизации с нашей базой данных:

LocalDB.sync(RemoteDB, {live: true, retry: true})
  .on('change', onChange)

, и из-за этого detox ожидает завершения определенных сетевых запросов, которые нам действительно не нужныДетокс ждать:

Sync App State: Waiting for network requests to finish.:

Наши тесты работают нормально без синхронизации.В наших тестах на детоксикацию мы пытались заблокировать этот URL в наших блоках beforeAll и beforeEach со следующим:

await device.setURLBlacklist(['.*(OUR_IP_THAT_COUCH_IS_SYNCING_WITH).*'])

Но это в дополнение к тому факту, что детокс официально не поддерживает Expo, требуя многократных перезапусков дляоткрыть приложение, затрудняет отладку.

Если у кого-то есть какие-либо идеи по этому поводу, любая помощь будет принята с благодарностью!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...