Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Navigation scripting & testing utility for PhantomJS and SlimerJS
JavaScript Python HTML C# CoffeeScript Shell Other
Latest commit 964375c @paazmaya paazmaya Merge pull request #1349 from istr/feature/selftest-slimerjs
Actually use the correct engine from env in Makefile.


Important note: the master branch hosts the development version of CasperJS, which is now pretty stable and should be the right version to use if you ask me.

Use the 1.0 branch if you want to keep in sync with the stable old version, or use tagged versions.

Currently, available documentation is:

Travis-CI build status:

  • Build Status master branch
  • 1.0 tests unfortunately have to be run manually using the casperjs selftest command

CasperJS is a navigation scripting & testing utility for PhantomJS and SlimerJS. It eases the process of defining a full navigation scenario and provides useful high-level functions, methods & syntaxic sugar for doing common tasks such as:

Browse the sample examples repository. Don't hesitate to pull request for any cool example of yours as well!

Read the full documentation on casperjs documentation website.

Subscribe to the project mailing-list

Follow the CasperJS project on twitter and Google+.

Show me some code!

First install CasperJS, we'll use 1.1 beta here.

Sample test to see if some dropdown can be opened:

casper.test.begin('a twitter bootstrap dropdown can be opened', 2, function(test) {
    casper.start('', function() {
        test.assertExists('#navbar-example');'#dropdowns .nav-pills .dropdown:last-of-type a.dropdown-toggle');
        this.waitUntilVisible('#dropdowns .nav-pills .open', function() {
            test.pass('Dropdown is open');
    }).run(function() {

Run the script:


Need help with getting CasperJS up and running? Got a time-consuming problem you want to get solved quickly?

Get CasperJS support on CodersClan.


Contributing code

Please read the file contents.

Contributing documentation

CasperJS's documentation is written using the Markdown format, and hosted on Github thanks to the Github Pages Feature.

To view the source files on github, head to the gh-pages branch, and check the documentation's README for further instructions.




Something went wrong with that request. Please try again.