Запустил все наборы тестов, соответствующие /e2e/i, с тестами, соответствующими ^((?!:ios:).)*$

Я выполняю тестирование Detox, и сопоставление принимает значение по умолчанию как ios, и я хочу протестировать его на Android, я не могу изменить его на Android. Помоги мне


person Krupanand K    schedule 26.12.2018    source источник


Ответы (1)


Detox не проводит тест iOS. Это выглядит так только из-за отрицательного просмотра в регулярном выражении.

```--testNamePattern='^((?!:ios:).)*$'`

Это отрицательный просмотр вперед, что означает, что для совпадения выражения часть внутри (?!...) не должна совпадать

обновить, чтобы оставить комментарий

В настоящее время в react-native:0.57.8 есть проблема, которая вызывает следующую ошибку:

Error: Couldn't find preset "module:metro-react-native-babel-preset"

В настоящее время существует обходной путь, который можно найти здесь https://github.com/facebook/react-native/issues/21241#issuecomment-431464191

Шаг 1

Создайте babel.config.js со следующим содержимым (в основном эквивалентно стандартному .babelrc)

module.exports = function (api) {
  api.cache(true)

  return {
    presets: ['module:metro-react-native-babel-preset']
  }
}

Шаг 2

Удалить .babelrc

Шаг 3

Запустить пряжу добавить --dev babel-jest babel-core@^7.0.0-bridge.0 @babel/core

Лично мне не нужно было делать шаг 3.

person Andrew    schedule 26.12.2018
comment
Спасибо, а это значит, что нам не о чем беспокоиться. Я получаю эту ошибку, как ее решить. Не удалось найти предустановленный модуль: metro-react-native-babel-preset относительно каталога. Я сделал stackoverflow.com/a/52347785/10031919, но все еще показывает эту проблему - person Krupanand K; 26.12.2018
comment
Спасибо, у меня такая проблема, не могли бы вы помочь решить проблему. Ошибка: Ошибка: в иерархии не найдено представлений, соответствующих детоксу. При переходе с одного экрана на другой я получаю эту ошибку, я не могу найти следующие элементы экрана из-за этой проблемы. - person Krupanand K; 27.12.2018
comment
Я бы предложил задать новый вопрос в stackoverflow. Там вы можете опубликовать сообщение об ошибке полностью и то, что вы пытались решить. - person Andrew; 27.12.2018