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