@afterburner-js/afterburner-js
v2.0.1
Published
meta-framework for testing web applications, web services, systems, and for end-to-end testing
Downloads
25
Readme
Afterburner.js
Afterburner is a meta-framework for testing web applications, web services, systems, and for end-to-end testing.
Benefits
- Zero-configuration needed: just install it and start writing tests immediately against any endpoint.
- Test helper methods out-of-the-box: you have everything you need to write your entire test suite.
- Built-in proxy: no CORS or cross-domain headaches to get in the way of your testing.
- Built-in command-line endpoint: execute system commands from your test.
- Familiar test experience using QUnit.
Getting Started
Node.js is a prerequisite, as this is a Node application.
- Install Afterburner.
npm i -g @afterburner-js/afterburner-js
- Generate a new Afterburner test application.
afterburner new <appName>
- Navigate into the newly created folder.
cd <appName>
- Install dependencies
npm i
- Run Afterburner, specifying the hostname or IP address of your web application.
afterburner test host=<host>
- Open
tests/acceptance/hello-world.js
and start writing your tests!
Development Mode vs Continuous Integration Mode
In the section above, we ran Afterburner in development mode, where a local server is started along with file watching so that your tests are automatically reloaded and run again every time you save changes to your test files.
To run the test suite in a headless browser for CI, run afterburner test host=<host> ci=true
.
Configuration
See afterburner-config.js
, afterburner-helper-hooks.js
, and afterburner-lifecycle.js
.
Security Considerations
You should only ever run this application against a host you fully trust because of the proxy and the ability to execute system commands. However, this behavior can be disabled or modified. See middleware/proxy.js
and middleware/shelly.js
.
Background / Inspiration
Afterburner was developed at IBM Cloud Object Storage to fill a test gap between applications and to optimize the feedback loop during test writing.