- better error reporting when loading plugins (d9078a8e)
- config:
- allow inlined plugins (3034bcf9)
- debug: show skipped specs and failure details in the console (42ab936b)
- init: to not give false warning about missing requirejs (562607a1)
- ship coffee-preprocessor and requirejs as default plugins (f34e30db)
- global error handler should propagate errors (dec0c196, closes #368)
- config:
- coverage: always send a result object (62c3c679, closes #365)
- init:
- preprocessor: resolve relative patterns to basePath (c608a9e5, closes #382)
- runner: send exit code as string (ca75aafd, closes #403)
- display the version when starting (39617395, closes #391)
- allow multiple preprocessors (1d17c1aa)
- allow plugins (125ab4f8)
- config:
- web-server: allow custom file handlers and mime types (2df88287)
-
reporters, launchers, preprocessors, adapters are separate plugins now, in order to use them, you need to install the npm package (probably add it as a
devDependency
into yourpackage.json
) and load in thekarma.conf.js
withplugins = ['karma-jasmine', ...]
. Karma ships with couple of default plugins (karma-jasmine, karma-chrome-launcher, karma-phantomjs-launcher). -
frameworks (such as jasmine, mocha, qunit) are configured using
frameworks = ['jasmine'];
instead of prependingJASMINE_ADAPTER
into files.
- rename the project to "Karma":
- whenever you call the "testacular" binary, change it to "karma", eg.
testacular start
becomeskarma start
. - if you rely on default name of the config file, change it to
karma.conf.js
. - if you access
__testacular__
object in the client code, change it to__karma__
, eg.window.__testacular__.files
becomeswindow.__karma__.files
. (026a20f7)
- config: do not change urlRoot even if proxied (1be1ae1d)
- coverage: always send a result object (2d210aa6, closes #365)
- reporter.teamcity: report spec names and proper browser name (c8f6f5ea)
- adapter.requirejs: do not configure baseUrl automatically (63f3f409, closes #291)
- init: add missing browsers (Opera, IE) (f39e5645)
- reporter.junit: Add browser log output to JUnit.xml (f108799a, closes #302)
- add Teamcity reporter (03e700ae)
- adapter.jasmine: remove only last failed specs anti-feature (435bf72c, closes #148)
- config: allow empty config file when called programmatically (f3d77424, closes #358)
- init: fix the logger configuration (481dc3fd, closes #340)
- proxy: fix crashing proxy when browser hangs connection (1c78a01a)
- set urlRoot to /karma/ when proxying the root (8b4fd64d)
- adapter.requirejs: normalize paths before appending timestamp (94889e7d)
- update dependencies to the latest (93f96278, e34d8834)
- adapter.requirejs: show error if no timestamp defined for a file (59dbdbd1)
- init: fix logger configuration (557922d7)
- reporter: remove newline from base reporter browser dump (dfae18b6, closes #297)
- reporter.dots: only add newline to message when needed (dbe1155c
- add "debug" button to easily open debugging window (da85aab9)
- config: support running on a custom hostname (b8c5fe85)
- reporter.junit: add a 'skipped' tag for skipped testcases (6286406e, closes #321)
- Fix #283
- Suppress global leak for istanbul
- Fix growl reporter to work with
testacular run
- Upgrade jasmine to 1.3.1
- Fix file sorting
- Fix #265
- Support for more mime-types on served static files
- Fix opening Chrome on Windows
- Upgrade growly to 1.1.0
- Support code coverage for qunit.
- Rename port-runner option in cli to runner-port
- Fix proxy handler (when no proxy defined)
- Fix #65
- Growl reporter !
- Batch changes (eg.
git checkout
causes only single run now) - Handle uncaught errors and disconnect all browsers
- Global binary prefers local versions
- Add QUnit adapter
- Report console.log()
- Fix PhantomJS launcher
- Fix html2js preprocessor
- NG scenario adapter: show html output
- Add code coverage !
- Init: ask about using Require.js
- Support for Require.js
- Fix testacular init basePath
- Add preprocessor for LiveScript
- Fix JUnit reporter
- Enable process global in config file
- Add OS name in the browser name
- NG scenario adapter: hide other outputs to make it faster
- Allow config to be written in CoffeeScript
- Allow espaced characters in served urls
- Allow calling run() pragmatically from JS
- Fix runner to wait for stdout, stderr
- Make routing proxy always changeOrigin
- Fix angular-scenario adapter + junit reporter
- Use flash socket if web socket not available
- Retry starting a browser if it does not capture
- Update mocha to 1.5.0
- Handle mocha's xit
- Kill browsers that don't capture in captureTimeout ms
- Abort build if any browser fails to capture
- Allow multiple profiles of Firefox
- Remove Travis hack
- Fix Safari launcher
- Remove custom launcher (constructor)
- Launcher - use random id to allow multiple instances of the same browser
- Fix Firefox launcher (creating profile)
- Fix killing browsers on Linux and Windows
- Fix opera launcher to create new prefs with disabling all pop-ups
- Change "reporter" config to "reporters"
- Allow multiple reporters
- Fix angular-scenario adapter to report proper description
- Add JUnit xml reporter
- Fix loading files from multiple drives on Windows
- Fix angular-scenario adapter to report total number of tests
- Allow proxying files, not only directories
- Disable autoWatch if singleRun
- Add custom script browser launcher
- Fix cleaning temp folders
- Run tests on start (if watching enabled)
- Add launcher for IE8, IE9
- Change browser binaries on linux to relative
- Add report-slower-than to CLI options
- Fix PhantomJS binary on Travis CI
- Launch Canary with crankshaft disabled
- Make the captured page nicer
- Fix jasmine memory leaks
- support __filename and __dirname in config files
- Report slow tests (add
reportSlowerThan
config option) - Report time in minutes if it's over 60 seconds
- Mocha adapter: add ability to fail during beforeEach/afterEach hooks
- Mocha adapter: add dump()
- NG scenario adapter: failure includes step name
- Redirect /urlRoot to /urlRoot/
- Fix serving with urlRoot
- Adapter for AngularJS scenario runner
- Allow serving Testacular from a subpath
- Fix race condition in testacular run
- Make testacular one binary (remove
testacular-run
, usetestacular run
) - Add support for proxies
- Init script for generating config files (
testacular init
) - Start Firefox without custom profile if it fails
- Preserve order of watched paths for easier debugging
- Change default port to 9876
- Require node v0.8.4+
- Fix race condition in manually triggered run
- Fix autoWatch config
- Mocha adapter
- Fix watching/resolving on Windows
- Allow glob patterns
- Watch new files
- Watch removed files
- Remove unused config (autoWatchInterval)
- Remove absolute paths from urls (fixes Windows issue with C:\)
- Add browser launcher for PhantomJS
- Fix some more windows issues
- Allow require() inside config file
- Allow custom browser launcher
- Add browser launcher for Opera, Safari
- Ignore signals on windows (not supported yet)
- Single run mode (capture browsers, run tests, exit)
- Start browser automatically (chrome, canary, firefox)
- Allow loading external files (urls)
- Allow console in config
- Warning if pattern does not match any file
- Add timing (total / net - per specs)
- Dots reporter - wrap at 80
- Add DOTS reporter
- Add no-colors option for reporters
- Fix web server to expose only specified files
- Proper exit code for runner
- Dynamic port asigning (if port already in use)
- Add log-leve, log-colors cli arguments + better --help
- Fix some IE errors (indexOf, forEach fallbacks)
- Allow overriding configuration by cli arguments (+ --version, --help)
- Persuade IE8 to not cache context.html
- Exit runner if no captured browser
- Fix delayed execution (streaming to runner)
- Complete run if browser disconnects
- Ignore results from previous run (after server reconnecting)
- Server disconnects - cancel execution, clear browser info
- Rename to Testacular
- Better debug mode (no caching, no timestamps)
- Make dump() a bit better
- Disconnect browsers on SIGTERM (kill, killall default)
- Fix memory (some :-D) leaks
- Add dump support
- Add runner.html
- Progress bar reporting
- Improve error formatting
- Add Jasmine lib (with iit, ddescribe)
- Reconnect client each 2sec, remove exponential growing
- Jasmine adapter: ignore last failed filter in exclusive mode
- Jasmine adapter: add build (no global space pollution)
- Run only last failed tests (jasmine adapter)
- Initial version with only very basic features