Обновление до Angular 6 и тест не работает

Я инициировал проект с использованием Angular 5. После некоторой разработки я обновился до Angular 6.

После обновления до Angular 6 вносим некоторые коррективы в код разработки.

Но я сталкиваюсь с этой проблемой, когда я запускаю Test,

введите описание изображения здесь

Исходя из того, что я получил, я скучаю 'rxjs-compat/Observable' модуль.

Так что я просто устанавливаю npm install rxjs-compat --save и беги 'ng test',

Ошибка больше не отображается. Но я столкнулся с новой проблемой.

Теперь ошибка No captured browser,

введите описание изображения здесь

Есть ли идеи по этому поводу?

Что я сделал

  • Обновите как локальный, так и глобальный angular-cli,
  • Удалить все node_modules и переустановите новый

Дополнительная информация

Вот угловая версия, которую я использовал:

введите описание изображения здесь

3 ответа

При обновлении до Angular 6 вам также необходимо обновить синтаксис API RxJS 6. Вам нужно переписать операторы импорта, связанные с наблюдаемыми методами, а rxjs-compat необходимо удалить.

Более подробные инструкции вы можете найти в Руководстве по обновлению Angular https://update.angular.io/ (установите его для обновления с 5.2 до 6).

  1. Бежать karma init в том же каталоге, что и ваш karma.conf.js
  2. Убедитесь, что ваш файл конфигурации Karma включает Chrome
  3. Бежать karma start в том же каталоге, что и ваш karma.conf.js файл.

Дайте мне знать, если это помогло

Быстрое решение моей текущей проблемы (от Angular 5 до Angular 6)

Шаг 1: переименуйте текущий проект в {project-name}-bak

Шаг 2. Убедитесь, что ваша глобальная версия Angular является последней версией

Для этого шага моя глобальная версия 6.1.3.

Вы можете проверить свою глобальную версию через ng -v вне вашего углового проекта.

Шаг 3: Создайте новый проект Angular 6

Создайте новый проект Angular, используя ваше имя проекта.

ng new project-name

Шаг 4: Попробуйте запустить тест

Запустить тест ng test чтобы убедиться, что ваш новый проект Angular 6 работает хорошо.

Шаг 5: Переместите свой код (только если ваш Шаг 4 в порядке)

  • Заменить src папка с src от {project-name}-bak
  • Скопируйте свой styles.css или же styles.scss и все вы глобальная таблица стилей из {project-name}-bak
  • Если у вас есть таблица стилей, кроме styles.css или же styles.scss, вы должны обновить свой angular.json,
  • Попробуйте запустить тест ng test снова. (Для меня это работает, пока здесь)


Примечание: если у кого-то есть лучший способ исправить ошибку, пожалуйста, обновляйте комментарии, возможно, могут помочь другие люди.

Другие вопросы по тегам