Кажется, что это должно быть предельно просто; однако, после двух часов чтения и проб и ошибок без успеха, я допускаю поражение и спрашиваю вас, ребята!
Я пытаюсь использовать Mocha с Should.js, чтобы проверить некоторые функции JavaScript, но я сталкиваюсь с проблемами определения области. Я упростил его до самых основных тестовых примеров, но я не могу заставить его работать.
У меня есть файл с именем functions.js
, который содержит только следующее:
function testFunction() {
return 1;
}
И содержимое tests.js
(находится в той же папке):
require('./functions.js')
describe('tests', function(){
describe('testFunction', function(){
it('should return 1', function(){
testFunction().should.equal(1);
})
})
})
Этот тест завершился неудачно с ReferenceError: testFunction is not defined
.
Я вижу, почему, потому что большинство примеров, которые я нашел, присоединяют объекты и функции к объекту Node global
или экспортируют их с помощью module.exports
, но используя любой из этих подходов означает, что мой код функции будет бросить ошибки в стандартной ситуации браузера, где эти объекты не существуют.
Итак, как я могу получить доступ к автономным функциям, объявленным в отдельном файле script из моих тестов, не используя Node -специфический синтаксис?