2011-02-28 16:01:34 +00:00
capybara-webkit
===============
2011-03-09 22:55:40 +00:00
A [capybara ](https://github.com/jnicklas/capybara ) driver that uses [WebKit ](http://webkit.org ) via [QtWebKit ](http://doc.qt.nokia.com/4.7/qtwebkit.html ).
2011-02-28 16:01:34 +00:00
2012-02-24 14:30:57 +00:00
Qt Dependency and Installation Issues
2011-09-14 21:14:03 +00:00
-------------
2011-02-28 16:01:34 +00:00
2011-08-28 00:35:58 +00:00
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
2011-09-14 21:14:03 +00:00
install the gem. You can find instructions for downloading and installing QT on
2012-02-27 21:13:08 +00:00
the [capybara-webkit wiki ](https://github.com/thoughtbot/capybara-webkit/wiki/Installing-Qt-and-compiling-capybara-webkit )
2011-04-13 18:55:54 +00:00
2012-03-16 16:09:05 +00:00
Windows Support
---------------
Currently 32bit Windows will compile Capybara-webkit. Support for Windows is provided by the open source community and Windows related issues should be posted to the [mailing list ](http://groups.google.com/group/capybara-webkit )
2011-10-01 17:03:07 +00:00
Reporting Issues
----------------
Without access to your application code we can't easily debug most crashes or
2011-10-06 22:56:20 +00:00
generic failures, so we've included a debug version of the driver that prints a
2011-10-01 17:03:07 +00:00
log of what happened during each test. Before filing a crash bug, please see
[Reporting Crashes ](https://github.com/thoughtbot/capybara-webkit/wiki/Reporting-Crashes ).
You're much more likely to get a fix if you follow those instructions.
2012-02-24 14:30:57 +00:00
If you are having compiling issues please check out the
2012-02-27 21:13:08 +00:00
[capybara-webkit wiki ](https://github.com/thoughtbot/capybara-webkit/wiki/Installing-Qt-and-compiling-capybara-webkit ).
2012-02-24 14:30:57 +00:00
If you don't have any luck there, please post to the
[mailing list ](http://groups.google.com/group/capybara-webkit ). Please don't
open a Github issue for a system-specific compiler issue.
2012-01-13 16:44:20 +00:00
2011-06-05 21:49:16 +00:00
CI
--
If you're like us, you'll be using capybara-webkit on CI.
2011-04-13 18:55:54 +00:00
2011-04-14 20:48:53 +00:00
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 ](https://github.com/leonid-shevtsov/headless ).
2011-04-13 16:17:59 +00:00
2011-03-09 22:55:40 +00:00
Usage
-----
Add the capybara-webkit gem to your Gemfile:
gem "capybara-webkit"
Set your Capybara Javascript driver to webkit:
Capybara.javascript_driver = :webkit
2011-11-01 19:36:24 +00:00
In cucumber, tag scenarios with @javascript to run them using a headless WebKit browser.
2011-03-09 22:55:40 +00:00
2011-11-01 19:36:24 +00:00
In RSpec, use the :js => true flag.
2012-01-13 18:10:02 +00:00
Take note of the transactional fixtures section of the [capybara README ](https://github.com/jnicklas/capybara/blob/master/README.md ).
2011-11-01 19:19:28 +00:00
2011-07-22 20:59:13 +00:00
Contributing
------------
See the CONTRIBUTING document.
2011-03-09 22:55:40 +00:00
About
-----
2011-11-01 21:00:28 +00:00
The capybara WebKit driver is maintained by Joe Ferris and Matt Mongeau. It was written by [thoughtbot, inc ](http://thoughtbot.com/community ) with the help of numerous [contributions from the open source community ](https://github.com/thoughtbot/capybara-webkit/contributors ).
2011-03-09 22:55:40 +00:00
2011-07-03 13:39:47 +00:00
Code for rendering the current webpage to a PNG is borrowed from Phantom.js' implementation.
2011-04-13 17:31:27 +00:00
![thoughtbot ](http://thoughtbot.com/images/tm/logo.png )
2011-03-09 22:55:40 +00:00
The names and logos for thoughtbot are trademarks of thoughtbot, inc.
License
-------
2011-08-28 00:35:58 +00:00
capybara-webkit is Copyright (c) 2011 thoughtbot, inc. It is free software, and may be redistributed under the terms specified in the LICENSE file.