Ответ 1
Похоже, вы находитесь в среде Java. Мой jasmine-maven-plugin может быть хорошо подходит.
У нас есть богатый веб-клиент. Наши контроллеры и служебные фасады написаны в coffeescript (JavaScript) и jquery. Раньше они были бы java.
Чтобы запустить тесты JavaScript jasmine от Jenkins/Hudson, мы используем java junit и htmlunit для загрузки тестовой ориентированной страницы jsp, которая включает спецификации жасмина.
Когда Htmlunit пытается запустить, он взрывается, пытаясь getPage(), вероятно, из-за пути класса парсера XML, который чрезвычайно сложно отслеживать в нашем мире.
Мы просто хотим иметь возможность запускать тесты JavaScript от Jenkins и сообщать об ошибке, если тест JavaScript не проходит. Мы просто используем jsp и htmlunit для запуска тестов JavaScript. Можем ли мы загружать JavaScript-тесты и javascript-код в механизм JavaScript с Jenkins, как то, что его отключает? Если да, то как?
Похоже, вы находитесь в среде Java. Мой jasmine-maven-plugin может быть хорошо подходит.
Жасмин Репортеры также будут решением. Он имеет инструкции для безгласного использования с помощью PhantomJS, например, и может генерировать JUnit XML, поэтому Дженкинс может понять результаты теста изначально, графическое число тестов, продолжительность и неудачу с течением времени.
Кроме того, обертка "xvfb-run", которая часто снабжается xvfb, здесь очень помогает, поэтому вы можете сделать "xvfb-run phantomjs.runner.sh..." в поистине безголовой среде.
Я ранее решил эту проблему, выполнив тесты с помощью плагина node.js, который называется jasmine-node
Это решение, конечно, требует node.js и нескольких модулей node для правильного запуска тестов жасмина. Настоящий браузер не запускает тесты, а эмулируется с помощью модуля jsdom, который в основном создает безгласный браузер и, более конкретно, DOM, с которыми могут взаимодействовать тесты.
Там node модули для jQuery, underscore и propably другие тоже, поэтому они также могут быть протестированы. Вы даже можете пропустить эмуляцию всего браузера, если вы предпочитаете запускать тесты в браузере, хотя я считаю это слишком громоздким по сравнению с автоматизированным тестированием Jenkins.
jasmine- node генерирует отчеты об ошибках jUnit, которые Дженкинс может интерпретировать просто отлично.
Я только понял, что есть плагин jenkins-jasmine-node, который может облегчить этот процесс.
Грунт - ваш друг
получил эту настройку, и это действительно приятно, плюс это дает вам возможность начать делать ваш сервер сборки другими приятными вещами, такими как развертывание, модульное тестирование и т.д. вы знаете, другие приятные вещи
Можете ли вы использовать селен? Это фактически использует настоящий браузер и максимально приближается к реальной среде.