@n1k0 n1k0 released this Nov 29, 2013 · 619 commits to master since this release

Assets 2

Important changes & bugfixes

  • Fixed #523 - Make CasperJS installable & usable from npm using:

    $ npm install casperjs

    Or if you want to install it globally on your system:

    $ npm install -g casperjs


    • Only 1.1 beta versions are installable from npm;
    • CasperJS is still not a NodeJS package, it needs either PhantomJS or SlimerJS to run.
  • Fixed #728 - Prevent overriding of preconfigured casper instance in a test environment

    This was a hard decision to make, but too many people just don't
    read the docs and create new casper instance in a test env,
    overriding the preconfigured one which creates cumbersome and
    hard to understand situation.

    Hopefully this change will inform users right from the place they
    read docs the most, fatal error messages.

  • Fixed #722 - Thrown step, complete and wait errors are no more silenced by default, though a new silentErrors Casper option is available if you want to reproduce the previous behavior

  • Fixed #715 - Enhanced element visibility computation method

  • Fixed #665 - Renamed --direct cli option to --verbose; --direct still works but is to be considered deprecated

  • Fixed #596 - added a new .NET launcher for Windows environments; just switch to using bin/casperjs.exe today

    Note: The previous batchbin/casperjs.bat executable is deprecated and won't be maintained anymore.

New features

  • Added an --auto-exit=no test runner option and an exit tester event to hook on before runner exits (#704):

    // $ casperjs test test.js --auto-exit=no
    casper.test.on("exit", function() {
    casper.test.begin("sample", function(test) {
  • Added Casper#scrollTo() & Casper#scrollToBottom() scrolling helpers

  • Added a resource-error event on resource loading failure (#649)

  • Added a reset option to Casper#sendKeys()

  • Added CSS selector support to Tester#assertField()

  • Added a details property bag to waitFor.timeout events

  • Added a new improved RPM package build script

Minor fixes & enhancements

  • Fixed #639 - withFrame() now switches back to parent frame instead of main one
  • Fixed #637 - checkStep() turns into an infinite loop when navigationLocked is true
  • Fixed #699 - getPageContent() throws error when content is not HTML
  • Fixed #666 - Ensure local options configuration override global configuration of Casper instance
  • Fixed #631 - better .bind() polyfill
  • Fixed #644 - better handling of deleted page objects
  • Fixed betterInstanceOf for Gecko (SlimerJS)
  • Fixed #711 - Better cli arguments parsing
  • Changed XUnit testsuite attribute duration to time to avoid errors on Jenkins
  • Updated python test runner to use the ENGINE_EXECUTABLE env var
  • Improved performance of the Python cli test suite