Angular CLI - команда ng test

Синтаксис

ng test <project> [options]
ng t <project> [options]

ng test запускает модульные тесты для кода приложения angular. Опции - это необязательные параметры.

Аргументы

Sr.No. Аргумент и синтаксис Описание
1 <проект> Название тестируемого проекта.

Параметры

Sr.No. Вариант и синтаксис Описание
1 --browsers = браузеры Переопределите, для каких браузеров запускаются тесты.
2 --codeCoverage = true | false

Выведите отчет о покрытии кода.

По умолчанию: false

3 --codeCoverageExclude Глобусы, которые нужно исключить из покрытия кода.
4 --configuration = конфигурация

Именованная цель сборки, как указано в разделе «конфигурации» файла angular.json. Каждая именованная цель сопровождается конфигурацией параметров по умолчанию для этой цели. Установка этого явно отменяет флаг "--prod"

Псевдонимы: -c

5 --help = true | false | json | JSON

Показывает справочное сообщение для этой команды в консоли.

По умолчанию: false

6 --включают

Группы файлов для включения относительно рабочего пространства или корня проекта. Есть 2 особых случая -

  • когда указан путь к каталогу, будут включены все файлы спецификаций, оканчивающиеся на ".spec. @ (ts | tsx)".

  • если указан путь к файлу и существует соответствующий файл спецификации, он будет включен вместо него.

7 --karmaConfig = karmaConfig Имя файла конфигурации Karma.
8 --main = main Имя основного файла точки входа.
9 --голосование Включите и определите период времени опроса просмотра файлов в миллисекундах.
10 --polyfills = полифиллы Имя файла полифиллов.
11 --preserveSymlinks = true | false

Не используйте реальный путь при разрешении модулей.

По умолчанию: false

12 --prod = true | false Сокращение для «--configuration = production». Если установлено значение true, устанавливает конфигурацию сборки для производственной цели. По умолчанию производственная цель настроена в конфигурации рабочего пространства, так что все сборки используют объединение, ограниченное встряхивание дерева, а также ограниченное удаление мертвого кода.
13 --progress = true | false Записывайте прогресс в консоль во время сборки.
13 --progress = true | false Записывайте прогресс в консоль во время сборки.
14 - докладчики Карма репортеров в использовании. Непосредственно перешел к бегуну по карме.
15 --sourceMap = true | false

Исходные карты вывода.

По умолчанию: true

16 --tsConfig = tsConfig Имя файла конфигурации TypeScript.
17 --watch = истина | ложь Запускать сборку при изменении файлов.
18 --webWorkerTsConfig = webWorkerTsConfig Конфигурация TypeScript для модулей Web Worker.

Сначала перейдите к проекту angular, обновленному с помощью команды ng build .

Теперь запустите тестовую команду.

пример

\>Node\>TutorialsPoint> ng test
...
WARN: ''app-goals' is not a known element:
1. If 'app-goals' is an Angular component, then verify that it is part of this module.
2. If 'app-goals' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.'
Chrome 83.0.4103 (Windows 7.0.0): Executed 0 of 4 SUCCESS (0 secs / 0 secs)
...
AppComponent should render title FAILED
   TypeError: Cannot read property 'textContent' of null
      at <Jasmine>
      at UserContext.<anonymous> (http://localhost:9876/_karma_webpack_/src/app/app.component.spec.ts:33:51)
            ...
Chrome 83.0.4103 (Windows 7.0.0): Executed 1 of 4 (1 FAILED) (0 secs / 0.203 secs)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 2 of 4 (1 FAILED) (0 secs / 0.221 secs)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 4 of 4 (1 FAILED) (0 secs / 0.244 sec
Chrome 83.0.4103 (Windows 7.0.0): Executed 4 of 4 (1 FAILED) (0.282 secs / 0.244
 secs)
TOTAL: 1 FAILED, 3 SUCCESS

Теперь, чтобы исправить ошибки, обновите app.component.spec.ts.

app.component.spec.ts

import { TestBed, async } from '@angular/core/testing';
import { RouterTestingModule } from '@angular/router/testing';
import { AppComponent } from './app.component';

describe('AppComponent', () => {
   beforeEach(async(() => {
      TestBed.configureTestingModule({
         imports: [
            RouterTestingModule
         ],
         declarations: [
            AppComponent
         ],
      }).compileComponents();
   }));

   it('should create the app', () => {
      const fixture = TestBed.createComponent(AppComponent);
      const app = fixture.componentInstance;
      expect(app).toBeTruthy();
   });
});

Теперь запустите тестовую команду.

пример

\>Node\>TutorialsPoint> ng test
...
WARN: ''app-goals' is not a known element:
1. If 'app-goals' is an Angular component, then verify that it is part of this m
odule.
2. If 'app-goals' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@
NgModule.schemas' of this component to suppress this message.'
Chrome 83.0.4103 (Windows 7.0.0): Executed 1 of 2 SUCCESS (0 secs / 0.053 secs)
...
Chrome 83.0.4103 (Windows 7.0.0): Executed 2 of 2 SUCCESS (0.097 secs / 0.073 se
cs)
TOTAL: 2 SUCCESS

ng test также открывает браузер и отображает статус теста.