Skip to content
This repository has been archived by the owner on May 23, 2022. It is now read-only.
/ specify Public archive

Automated unit and property-based testing framework for JavaScript

License

Notifications You must be signed in to change notification settings

sorellabs/specify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Specify logo

Build status NPM version Dependencies status Licence Stable API

Specify is a cross-platform library for defining and running tests using a BDD style. It supports pluggable assertions, custom reporters, and custom interfaces.

Example

( TBD )

Installing

The officially supported way of getting Specify is through npm:

$ npm install specify-framework

NOTE

If you don't have npm, you'll need to install Node.js and npm in your system before installing Specify.

A tool like Browserify or Webpack can be used to run Specify in platforms that don't implement Node-style modules, like the Browser.

Documentation

( TBD )

Why not (insert-popular-testing-library-here)?

Mocha, and other popular BDD testing frameworks, have been designed with a particular environment in mind (Node for Mocha, Browser for Jasmine), so while they can be extended, it's often awkward to use them in different environments. In particular, running Mocha under CIs like Testling requires specific Mocha extensions.

Furthermore, most popular testing frameworks and libraries (like Mocha and Tape) are designed for asynchronous testing with callbacks. This isn't a deal breaker, but it's a minor inconvenience since one would need to provide wrappers for using Promises or Tasks. Specify uses Tasks, and provides wrappers for other styles out of the box, which makes just writing tests simpler.

Supported platforms

Specify is supported in all platforms that support ECMAScript 5.

NOTE
For platforms that don't support ECMAScript 5, (like IE8 and 9) the es5-shim library can be used to provide the additional runtime support.

Support

If you think you've found a bug in the project, or want to voice your frustration about using it (maybe the documentation isn't clear enough? Maybe it takes too much effort to use?), feel free to open a new issue in the Github issue tracker.

Pull Requests are welcome. By submitting a Pull Request you agree with releasing your code under the MIT licence.

You can contact the author over email, or Twitter.

Note that all interactions in this project are subject to Origami Tower's Code of Conduct.

Licence

Specify is copyright (c) Quildreen Motta 2014-2016, and released under the MIT licence. See the LICENCE file in this repository for detailed information.

About

Automated unit and property-based testing framework for JavaScript

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published