Жасмин с автоматическим тестированием jscoverage
Посмотрел jsunit и jcoverage demos здесь (нажмите ссылку на отчет о покрытии. Откройте это на новой вкладке).
Мне было интересно, сделал ли кто-нибудь что-нибудь подобное с Жасмином и АОoverage? Я немного не уверен, как действовать дальше.
[EDIT]
Мне интересно, есть ли что-то, что я могу сделать с репортером жасмина. Мой пример "привет мир" в Jasmine ссылается на TrivialReporter. Может быть, это может быть расширено?
[EDIT]
Сейчас я подключил js-test-runner с жасмином. Теперь, если бы я мог подумать о способе получения покрытия
Ответы
Ответ 1
Если вы работаете над проектом ruby и используете жасмин через jasmine-gem, у меня есть патч, который добавляет поддержку jscoverage [1].
Если вы используете bundler, вы можете использовать эту версию жасмина со следующей командой в Gemfile
:
gem 'jasmine',
:git => 'git://github.com/hjdivad/jasmine-gem',
:submodules => true,
:branch => 'jscoverage'
Убедитесь, что вы загрузили jscoverage и это в $PATH
.
Затем вы можете добавить следующее в jasmine.yml
coverage:
enabled: true
encoding: utf-8
tmp_dir: tmp
report_dir: public/coverage
skip_paths:
- public/javascripts/vendor
Если это сработает для вас, вы можете захотеть высказаться по запросу на тягу [2], чтобы получить его или какую-то вариацию в собственно жасминовой жемчужине.
Ответ 2
Если вы не используете жасмин-камень или не хотите запускать сервер для проверки покрытия, я написал драгоценный камень, который объединяет jscoverage и jasmine. Он может запускаться как рейк-задача в ваших сборках CI.
Его можно найти здесь: https://github.com/firstbanco/jasmine-coverage
Установите его, затем просто запустите
bundle exec rake jasmine:coverage
Вы закончили.
EDIT: Как автор покрытия жасмина, я чувствую обязанность рассказать вам о лучшей альтернативе: teaspoon. Это требует большей настройки, но также позволяет работать в браузере, чтобы вы могли использовать отладчик Chrome.