Travis/Jest: TypeError: Невозможно назначить только для чтения свойство Symbol (Symbol.toStringTag) объекта '# <process>' - программирование
Подтвердить что ты не робот

Travis/Jest: TypeError: Невозможно назначить только для чтения свойство Symbol (Symbol.toStringTag) объекта '# <process>'

В моем конвейере travis все мои тесты jest typescript travis ошибкой:

TypeError: Cannot assign to read only property 'Symbol(Symbol.toStringTag)' of object '#<process>'

Это произошло внезапно, и я ничего не изменил в коде. И локально все отлично работает.

Есть идеи, что может случиться?

4b9b3361

Ответ 1

Это ошибка, которая пришла с узлом v11.11. Вы можете вернуться к версии 11.10 или дождаться исправления, которое уже было добавлено в Facebook (шутливая ошибка в версии Node более 11.11).

Если ваша проблема связана с TravisCI, вы можете установить исправленную версию, которая работает:

node_js:
  - "11.10.1"

Ответ 2

Вы также можете обновить версию jest до 24.3.0, в которой эта проблема исправлена. Я считаю, что это более перспективное решение, чем понижение версии вашего узла.

Ответ 3

Это было исправлено для меня, просто обновив узел до v11.12.0

Ответ 4

Для тех из вас, кто не может решить проблему с помощью любого из приведенных выше ответов, попробуйте обновить шутку до ^ 24.3.0 и понизить версию узла в образе докера вашего клиентского контейнера. Я использовал FROM node:11.10-alpine без понижения версии узла, используемого TravisCI.

Ответ 5

Было в основном два решения этой проблемы

  • Обновите вашу версию Jest до 24.3.0 (которая у меня не сработала)
  • Понизьте версию своего узла до 11.10.1

Я знаю, что понижение версии узла не является хорошим решением, но те, кто хочет запустить ваши тесты, могут попробовать его. Понизив версию своего узла с 11.11.1 до 11.10.1, установите пакетный вызов "n". Этот пакет n поможет вам интерактивно управлять версиями Node.js.

npm install -g  n

После установки вы просто запускаете

sudo n 11.10.1

и ваша версия узла будет изменена, вы можете проверить версию узла, запустив

node --version

А позже можно запустить там тест

npm test

Это сработало для меня, я надеюсь, что это будет полезно :)

Ответ 6

если вы используете nvm (менеджер версий узлов),

nvm install v11
nvm use v11

Ответ 7

Обновление моего ответа для всех, кто сталкивается с этой проблемой, особенно если при удалении ваших node_modules и переустановке вы получаете некоторые, казалось бы, незначительные ошибки узлов, в том числе fsevents, при попытке запустить тесты Create React App

  • опционально удалите node_modules и package-lock.json или файл yarn-lock

npm install fsevents

  • запустите npm install если вы ранее удалили node_modules

npm audit fix --force