Ответ 1
Mocha-PhantomJS может быть именно тем, что вы ищете.
В качестве альтернативы WebdriverJS поддерживает тесты огурца.
Если вы хотите быть более низкоуровневым, вы можете напрямую связаться с selenium-webdriver. Здесь demo на github.
Удачи!
После многих исследований и испытаний и ошибок я выбрал следующий стек для тестирования Frontend BDD:
Я хотел бы избежать очередей запуска CasperJS и напрямую использовать PhantomJS (через phantom-proxy) с обратными вызовами на каждом шаге:
@World = (cb) ->
@phantom = require "phantom-proxy"
cb()
@Before (cb) ->
self = this
@phantom.create {}, (proxy) ->
self.proxy = proxy
self.page = proxy.page
cb()
@After (cb) ->
@proxy.end ->
cb()
@When /^I go to url "([^"]*)"$/, (url, cb) ->
@page.open url, ->
cb()
делает все более логичным и BDD-подобным.
Кроме того, SpookyJS не предоставляет полный API для CasperJS.
API PhantomJS, однако, довольно низкоуровневый. Есть ли какой-либо другой инструмент, который предоставляет функции, подобные CasperJS (нажатие, ожидание элементов и т.д.) Для Node.js без использования очередей выполнения?
Mocha-PhantomJS может быть именно тем, что вы ищете.
В качестве альтернативы WebdriverJS поддерживает тесты огурца.
Если вы хотите быть более низкоуровневым, вы можете напрямую связаться с selenium-webdriver. Здесь demo на github.
Удачи!
Я бы рекомендовал Mocha, у которого есть синтаксис огурца add -on (mocha-cackes) и/или chai, и это плагины chai-jquery и chai-timers.
Также Karma поставляется с поддержкой синтаксиса огурца через плагин karma-cucumber.
Оба Karma и Mocha позволяют запускать ваши тесты против реальных устройств с использованием пусковых установок для saucelabs или браузера, например.
Надеюсь, что это поможет.