Как прочитать страницу из localhost
в безголовую спецификацию Jasmine, чтобы тестовые примеры могли работать с элементами DOM?
Моя задача Gulp успешно запускает спецификации Jasmine для модульного тестирования, и теперь мне нужно создать интеграционные тесты для проверки полных веб-страниц, обслуживаемых из localhost
. Я использую плагин gulp-jasmine-browser
для запуска PhantomJS.
Пример:
gulpfile.js
var gulp = require('gulp');
var jasmineBrowser = require('gulp-jasmine-browser');
function specRunner() {
gulp.src(['node_modules/jquery/dist/jquery.js', 'src/js/*.js', 'spec/*.js'])
.pipe(jasmineBrowser.specRunner({ console: true }))
.pipe(jasmineBrowser.headless());
}
gulp.task('spec', specRunner);
spec/cart-spec.js
describe('Cart component', function() {
it('displays on the gateway page', function() {
var page = loadWebPage('http://localhost/'); //DOES NOT WORK
var cart = page.find('#cart');
expect(cart.length).toBe(1);
});
});
Функция loadWebPage()
отсутствует. Это просто для иллюстрации функций, которые, как я считаю, необходимы.
page.open
, и он делает правильные вещи, но это модуль PhantomJS, и нет очевидного способа вызвать его из спецификации Jasmine. Если знаете как, расскажите. - person Dem Pilafian   schedule 24.11.2016