Как я могу использовать методы API phantomjs в моих приемочных тестах Ember CLI?
Помощники приемочного теста Ember предоставляют хороший уровень абстракции для написания чистых приемочных тестов, основанных на действиях пользователя, но этого не всегда достаточно.
В тестировании Ruby/Rails с использованием Capybara базовый тестовый драйвер (selenium-webdriver, phantomjs и т. Д.) Может быть доступен в тестовом примере путем вызова page.driver
затем его API-интерфейс непосредственно использовался для выполнения действий, не предусмотренных абстрактным API, таких как обработка файлов cookie и изменение размера окна.
Например:
page.driver.browser.manage.window.resize_to(width, height)
visit '/foo/bar'
page.driver.browser.action.key_down(:alt).send_keys("c").key_up(:alt).perform
Можно ли это сделать в проекте Ember-CLI, с настройками по умолчанию все (qunit, testem)?
Контекст для этой проблемы заключается в том, что у нас есть функция, которая заставляет пользователя прокручивать страницу вниз, прежде чем нажимать ОК (например, лицензионные соглашения с clickwrap иногда заставляют вас, но это для чего-то другого). Приемочный тест для этого прекрасно работает в Chrome, но не работает в phantomjs, и мы думаем, что это, вероятно, из-за размера окна или области просмотра. http://phantomjs.org/api/webpage/property/viewport-size.html
Могут быть и другие способы исправить это, но я по-прежнему заинтересован в непосредственном доступе к тестовым драйверам, так как считаю, что это полезный инструмент.