A Capybara driver for headless WebKit to test JavaScript web apps
Go to file
Mike Nicholaides 37b3d24fd8 Documenting that some code was borrowed from Phantom.js 2011-07-03 14:10:53 -04:00
bin Suppress the webkit_server Dock icon on Mac OS X. 2011-06-14 10:33:53 -04:00
lib Adding ability to render webpage to a PNG 2011-07-03 14:10:53 -04:00
spec Adding ability to render webpage to a PNG 2011-07-03 14:10:53 -04:00
src Documenting that some code was borrowed from Phantom.js 2011-07-03 14:10:53 -04:00
templates Refactor Connection/Command so that arguments are passed in as a single QStringList instead of in consecutive calls to argumentReceived 2011-02-25 23:29:36 -05:00
.gitignore Adding ability to render webpage to a PNG 2011-07-03 14:10:53 -04:00
.rspec Added rspec options 2011-02-24 23:14:52 -05:00
Gemfile Adding ability to render webpage to a PNG 2011-07-03 14:10:53 -04:00
Gemfile.lock Adding ability to render webpage to a PNG 2011-07-03 14:10:53 -04:00
LICENSE Updated license ane readme 2011-03-09 17:55:40 -05:00
README.md Documenting that some code was borrowed from Phantom.js 2011-07-03 14:10:53 -04:00
Rakefile Created a Response object for the success/message pair 2011-05-05 17:55:40 -04:00
capybara-webkit.gemspec Bump to 0.5.0 2011-06-14 10:59:57 -04:00
extconf.rb Move code that compiles Webkit into separate file to support Ruby 1.9.2 2011-04-15 17:53:31 -04:00
webkit_server.pro Initial commit 2011-02-24 23:13:11 -05:00

README.md

capybara-webkit

A capybara driver that uses WebKit via QtWebKit.

Dependencies

capybara-webkit depends on a WebKit implementation from Qt, a cross-platform development toolkit. You'll need to download the Qt libraries to build and install the gem.

If you're on OS X, download the non-debug Cocoa package. Note that installing Qt via homebrew takes more than an hour, so we don't recommend it.

If you're on Ubuntu, you can install the libqt4-dev package. For other Linux distributions, download this package.

CI

If you're like us, you'll be using capybara-webkit on CI.

On Linux platforms, capybara-webkit requires an X server to run, although it doesn't create any visible windows. Xvfb works fine for this. You can setup Xvfb yourself and set a DISPLAY variable, or try out the headless gem.

Usage

Add the capybara-webkit gem to your Gemfile:

gem "capybara-webkit"

Set your Capybara Javascript driver to webkit:

Capybara.javascript_driver = :webkit

Tag scenarios with @javascript to run them using a headless WebKit browser.

About

The capybara WebKit driver was written by Joe Ferris, Tristan Dunn, and Jason Morrison from thoughtbot, inc.

Code for rendering the current webpage to a PNG is borrowed from Phantom.js' implementation.

thoughtbot

The names and logos for thoughtbot are trademarks of thoughtbot, inc.

Notes

This capybara WebKit driver will listen on port 8200, this may conflict with other services.

License

capybara-webkit is Copyright © 2011 thoughtbot, inc. It is free software, and may be redistributed under the terms specified in the LICENSE file.