Использование DOH для модульного тестирования не JavaScript-проекта Dojo

По сути, мне нужна помощь в понимании этого сообщения в блоге:

http://www.sitepen.com/blog/2008/04/15/unit-testing-custom-code-with-the-dojo-objective-harness/

Я хочу использовать DOH для модульного тестирования существующего проекта JavaScript, и я не хочу реструктурировать этот проект, чтобы он выглядел как виджет Dojo. Мой проект структурирован так:

project/
   scripts/
      doh/
         ...
      tests/
         testA.js
      project.js
   tests/
      tests.html
   index.html

tests.html - это страница с единственной ссылкой на:

../scripts/doh/runner.html?testModule=scripts.tests.testA

testA.js, по-видимому, не загружается, и я не уверен, какой код должен входить в него, чтобы он правильно загружался как набор тестов, а также имел доступ к классам, определенным в project.js.

1 ответ

Ваш браузер дает какие-либо указания в своих инструментах отладчика относительно того, пытался ли он загрузить что-то с именем testA.js, и если да, то откуда?

Если у вас есть проблема с путём (он может искать "скрипты" как одноуровневый каталог для вашего каталога dojo), вы можете дать DOH подсказку в URL-адресе бегуна относительно того, как сопоставить пакеты, например: &registerModulePath=scripts,../../scripts (это сопоставляет 'scripts' с '../../scripts'; вам нужно настроить его так, как нужно, так как я не вижу, где находится ваш каталог Dojo)

Как правило, вы указываете 'testModule' на файл модуля, который представляет собой файл, который просто извлекает тестовые приборы, но я думаю, что вы можете избежать необходимости просто указывать на сам файл тестового устройства. Для этого нужно просто вызвать doh.register с некоторыми тестами и doh.run(), чтобы запустить все это.

Другие вопросы по тегам