Ember.js 如何在Ember CLI验收测试中使用phantomjs API方法?

Ember.js 如何在Ember CLI验收测试中使用phantomjs API方法?,ember.js,phantomjs,testem,Ember.js,Phantomjs,Testem,提供一个很好的抽象层,用于编写基于用户操作的纯验收测试,但这并不总是足够的 在使用Capybara进行Ruby/Rails测试时,可以通过调用page.driver,在测试用例中访问底层测试驱动程序(selenium webdriver、phantomjs等),然后直接使用其API来做抽象API未提供的事情,如处理cookie和窗口大小调整 例如: page.driver.browser.manage.window.resize_to(width, height) visit '/foo/bar

提供一个很好的抽象层,用于编写基于用户操作的纯验收测试,但这并不总是足够的

在使用Capybara进行Ruby/Rails测试时,可以通过调用
page.driver
,在测试用例中访问底层测试驱动程序(selenium webdriver、phantomjs等),然后直接使用其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中失败,我们认为这可能是因为窗口或视口的大小。

可能还有其他方法可以解决这个问题,但我仍然对直接访问测试驱动程序感兴趣,因为我认为这是一个有用的工具