Вы можете использовать http://casperjs.org/ симпатичную маленькую библиотеку, созданную для безголового браузера PhantomJS. Это полный веб-набор, поэтому вы почти на 100% взаимодействуете с браузером.
Если вы предпочитаете запускать его в Selenium с несколькими реальными экземплярами браузера, отметьте geb: http://www.gebish.org/
Обратите внимание, что в большинстве сред тестирования JS есть проблемы с окнами alert () и verify () (для их обработки используются очень грязные хаки), поэтому вам, возможно, придется прибегнуть к чистому Selenium http://seleniumhq.org/. I Я все еще тестирую его, но SeleniumIDE очень хорошо обрабатывает оповещения, поэтому я думаю, что это также будет верно и для Selenium WebDriver. У Selenium есть привязки на многих популярных языках (хотя JS нет), поэтому, я думаю, вы найдете то, что вам подходит.