simple, flexible, fun javascript test framework for node.js & the browser
JavaScript Other
Latest commit a2fc76c Feb 7, 2017 @Munter Munter committed on GitHub Merge pull request #2703 from seppevs/cover_utils_some_fn_with_tests
cover .some() function in utils.js with tests
Failed to load latest commit information.
assets Add new logo/banner assets (#1841) Apr 17, 2016
bin remove bin/.eslintrc; ensure execs are linted Dec 2, 2016
editors/JavaScript mocha.tmbundle Restricted tmbundles to js scope. Renamed bdd-describe Jan 10, 2013
images Minify growl images Jul 20, 2013
lib use `semistandard` directly Jan 28, 2017
media make project follow editorconfig rules Sep 29, 2014
scripts use trusty container in travis-ci; use "artifacts" addon (#2625) Dec 3, 2016
test cover .some() function in utils.js with tests Feb 7, 2017
.editorconfig update .editorconfig to respect trailing whitespace in markdown files Oct 17, 2014
.eslintignore Use temporary test-only build of mocha.js for browsers tests. Avoids … Jan 18, 2017
.gitignore Use temporary test-only build of mocha.js for browsers tests. Avoids … Jan 18, 2017
.mailmap update, contributors, .mailmap May 23, 2016
.npmignore Add new logo/banner assets (#1841) Apr 17, 2016
.nycrc Move nyc configuration to .nycrc. Exclude tests from getting annotate… Jan 17, 2017
.travis.yml chore(Saucelabs): test on IE9, IE10 and IE11. Jan 25, 2017 update `` for v3.2.0 [ci skip] Nov 24, 2016 doc(CONTRIBUTING): fix link to org members Jan 17, 2017
LICENSE Change copyright year to a range starting at first release Jan 16, 2017
Makefile use `semistandard` directly Jan 28, 2017 fix "projects" link in [ci skip] Jan 24, 2017
appveyor.yml Update dependencies to enable Greenkeeper 🌴 (#2621) Dec 3, 2016
bower.json update woefully out-of-date bower.json [ci skip] Aug 1, 2016
browser-entry.js lint the hell out of the javascript; closes #2525 Oct 10, 2016
index.js drop jsoncov/htmlcov reporters; closes #2356 Aug 1, 2016
karma.conf.js chore(Saucelabs): test on IE9, IE10 and IE11. Jan 25, 2017
mocha.css fixed typo in mocha.css introduced by 185c0d9 [ci skip] Aug 1, 2016
mocha.js Replaced embedded unicode characters in html reporter to their hex en… Jan 8, 2017
package.json use `semistandard` directly Jan 28, 2017

Mocha needs YOU!

Did you know Mocha is a dependency of over 100,000 projects published to npm alone?

Despite this, we're currently unable to merge most pull requests due to lack of maintenance resources.

Are you interested in triaging issues or reviewing open PRs? Have some time to hack on its codebase? If you would like to help maintain Mocha, please contact @boneskull on Gitter.

Thank you 😘 to all of you interested in helping. These are Mocha's immediate needs:

  1. Increase test coverage on Node.js and browser
    • Increase integration coverage for all reporters
      • html reporter must be tested in browser
      • Basic console reporters (not nyan, landing, etc.) must be tested in both browser and Node.js contexts; PhantomJS can consume all console reporters
      • Filesystem-based reporters must be tested in Node.js context
    • Increase coverage against all interfaces (exports in particular). Ideally this becomes a "matrix" where we repeat sets of integration tests across all interfaces.
    • Refactor non-Node.js-specific tests to allow them to run in a browser context. Node.js-specific tests include those which require the CLI or filesystem. Most everything else is fair game.
  2. Review current open pull requests
    • We need individuals familiar with Mocha's codebase. Got questions? Ask them in our chat room.
    • Pull requests must have supporting tests. The only exceptions are pure cosmetic or non-functional changes.
    • Pull request contributors must sign the CLA.
  3. Close old, inactive issues and pull requests
    • A bot should do this. We need a bot. Got a bot?
  4. Triage issues
    • If we run into "critical" bugs, they need fixing.
    • "Critical" means Mocha is broken w/o workarounds for a large percentage of users
    • Otherwise: respond to issues, close new dupe issues, confirm bugs, ask for more info, etc.

Once we gain ground on the above items, we can work together formalize our contribution guidelines and governance. For further info & ideas, please see our projects.

You needn't be a maintainer to submit a pull request for test coverage!

-- @boneskull, Jan 17 2016

Mocha test framework

Build Status Coverage Status Gitter OpenCollective OpenCollective
Mocha Browser Support h/t SauceLabs

Mocha is a simple, flexible, fun JavaScript test framework for node.js and the browser. For more information view the documentation.



Become a backer and show your support to our open source project.


Does your company use Mocha? Ask your manager or marketing team if your company would be interested in supporting our project. Support will allow the maintainers to dedicate more time for maintenance and new features for everyone. Also, your company's logo will show on GitHub and on our site--who doesn't want a little extra exposure? Here's the info.