Комментарии 5
Я понимаю что статья немного о другом, но давайте поговорим о:
this.SUT.name.should.to.not.be.undefined.and.have.property('name').equal('Tom');
и.это.ещё.ладно.тут.можно.выкинуть .to
и .be
как минимум, jest ещё хуже, там это .shouldNotBeUndefinedOrNullIDontKnowWhateverLetsTalkAboutTheBirdsAndTheBees()
Неужели это и правда лучше чем
expect(this.SUT?.name).equal('TOM')
?
document.addEventListener("DOMContentLoaded", () => {
// code
})
ts-node выдает ошибку: ReferenceError: document is not defined
at Object. anonymous ...
Хотя tsconfig.json настроен правильно и tsc компилит файлы без проблем. Может кто знает как настроить правильно?
В nodejs окружении нету document
, т. к. это часть браузерного API. Мы пишем тесты на jest
, и там используется https://github.com/jsdom/jsdom. Не подскажу как насторить mocha
, но можно попробовать подключить jsdom. Eсли не хочется тянуть либу то можно замокать, или может запускать тесты в браузере.
lib в tsconfig добавляет только определения типов. Соответственно TS понимает что такое document и что от него ждать, но сама имплементация лежит на вас. Лучше, как сказали выше, подключить jsdom
Пишем юнит тесты на TypeScript'е (на примере котиков)