funkie
Makes orchestration of automated functional/behavioural testing easier.
Will handle the spinning up and tearing down of automation driver processes automatically so you can just npm test
. Funkie allows you to choose from a number of compatible automation drivers and will handle their installation and the execution of their processes for you.
Why funkie?
Most automation frameworks require a user to handle starting/stopping a webdriver/selenium instance independently from the test runner. Funkie makes it easy to do single-command automated test runs, which are fully encapsulated and clean up after themselves.
Installation
Funkie can be installed globally for use from the command line, or locally for use as part of an npm test
script.
Usage
First install the driver of choice:
> npm install --save-dev funkie-phantom
Then run the test command of your choice with funkie:
> funkie <test command>
For example, to run a mocha test suite against a phantom driver:
> funkie mocha ./test
To use an a different driver module:
> npm install funkie-selenium> funkie --driver selenium <test command>
Examples
Supported drivers
PhantomJS
> npm install [--save-dev] funkie-phantom> funkie --driver phantom <test command>
Selenium
> npm install [--save-dev] funkie-selenium> funkie --driver selenium <test command>
Your favourite automation driver..?
Funkie drivers are as simple as:
module { return {} {} }
If the start
and stop
methods are required to be asynchronous then they should return a promise.
You can pass a local driver with the driver option by passing a relative path:
> funkie --driver ./my/local/driver/module <test command>