Как проверить значение консоли, чтобы удовлетворить модульный тест? - PullRequest
0 голосов
/ 12 февраля 2020

Для некоммерческого класса, который мы собираем, мы пытаемся проверить значение консоли, чтобы увидеть, была ли функция выполнена успешно. Это должен быть небольшой, простой тест, но я врезался в стену. :-) Любая помощь приветствуется. PS Мы открыты для новых пакетов, если они делают вещи более эффективными и простыми.

Вот попытка псевдо-i sh:

it('should match value in console', () => {
  const fixture = TestBed.createComponent(AppComponent);
  fixture.detectChanges();
  const compiled = fixture.debugElement.nativeElement;
  expect(compiled.console.log.textContent).toEqual(
    'CONSOLE MESSAGE',
  );
});

1 Ответ

1 голос
/ 12 февраля 2020

Если вам нужно протестировать журнал консоли, вы можете попробовать что-то вроде этого: -

it('test', () => {
  const fixture = TestBed.createComponent(AppComponent);
  component = fixture.componentInstance;
  fixture.detectChanges();
  spyOn(console, 'log');
  component.methodToBeTested(); // call the method which has console.log
  expect(console.log).toHaveBeenCalledWith('log message'); // assuming console.log('log message') is in methodToBeTested()
});
...