2015-03-19 3 views
1

У меня есть приложение для портала, работающее на одном порту - http://localhost:10039. Я пытаюсь объединить тесты отдельных приложений Ember.js, которые загружаются в приложение Portal через портлеты.Karma/QUnit Unit Test Внешний сайт

То, что я хотел бы сделать, это те тесты QUnit, которые работают против полного приложения, которое работает на этом другом порту, о котором я упоминал. Однако Карма, похоже, не любит запускать тестовый пакет на порт, который не является тем же, на котором работает приложение.

Например:

test('Page loads in browser', function() { 
    visit('/login').then(function() { 
    ok(exists('#login-form'), 'Page loaded successfully'); 
    }); 
}); 

... запускает карму успешно порт 9876, но урожайность ...

Page loaded [email protected] 42 ms 
Expected: true 
Result: false 
Diff: true false 
Source: 
    at http://localhost:9876/absolute/Users/me/Sites/app/node_modules/qunitjs/qunit/qunit.js:1933:13 
    at http://localhost:9876/base/tests/unit-tests.js:9:8 
    at isolate (http://localhost:9876/base/bower_components/ember/ember.js:36720:15) 
    at http://localhost:9876/base/bower_components/ember/ember.js:36703:16 
    at tryCatch (http://localhost:9876/base/bower_components/ember/ember.js:45817:16) 
    at invokeCallback (http://localhost:9876/base/bower_components/ember/ember.js:45829:17) 

Можно ли запустить свой набор тестов на, скажем, http://localhost:9876, и проведут ли его тесты против другого веб-сайта/порта http://localhost:10039?

Ближе всего я мог прийти к ответу Karma proxies, хотя прокси-сервер, похоже, не имеет никакого эффекта. Карма все еще проводит свои тесты против ссылок относительно своего собственного порта 9876.

Я хотел бы добавить, что я открыт для других структур тестирования, если это может быть сделано только в другом месте - жасмин, мокко и т.д.

Спасибо!

ответ

0

karma предназначен для запуска модульных тестов, поэтому код будет загружен в клиенте кармы (localhost: 9876) и проверенных там случаях.

Если вы планируете запускать определенные тесты конца в конец с помощью приложения портала, вы можете изучить альтернативы, такие как селен. Фактически, ваш тест выше (тестирование для успешной загрузки страницы) хорошо подходит для селена.

+0

Что касается вашего первого заявления, значит ли это, что я не могу запустить внешний веб-сайт через Карму? Как насчет тестирования через iFrame? Я знаю, это очень клочья, я просто хочу знать, будет ли мое мышление в исходном вопросе считаться ** обнаружением власти ** Кармы против ** злоупотребления ** инструментом с неоднородными, неподдерживаемыми практиками. – DerektheDev