All Projects → sindresorhus → Gulp Mocha

sindresorhus / Gulp Mocha

Licence: mit
Run Mocha tests

Programming Languages

javascript
137047 projects - #8 most used programming language

Projects that are alternatives of or similar to Gulp Mocha

tropic
🍍 Test Runner Library
Stars: ✭ 29 (-92.25%)
Mutual labels:  mocha, test-runner
Baretest
An extremely fast and simple JavaScript test runner.
Stars: ✭ 364 (-2.67%)
Mutual labels:  mocha, test-runner
Mochify.js
☕️ TDD with Browserify, Mocha, Headless Chrome and WebDriver
Stars: ✭ 338 (-9.63%)
Mutual labels:  mocha, test-runner
Public
Repository for wallaby.js questions and issues
Stars: ✭ 662 (+77.01%)
Mutual labels:  mocha, test-runner
Gulp Jasmine
Run Jasmine tests in Node.js
Stars: ✭ 110 (-70.59%)
Mutual labels:  gulp-plugin, test-runner
Karma
Spectacular Test Runner for JavaScript
Stars: ✭ 11,591 (+2999.2%)
Mutual labels:  mocha, test-runner
Enzyme
JavaScript Testing utilities for React
Stars: ✭ 19,781 (+5189.04%)
Mutual labels:  mocha, test-runner
atom-mocha
Mocha test runner in Atom
Stars: ✭ 13 (-96.52%)
Mutual labels:  mocha, test-runner
Grunt Mocha
[MOVED] Grunt task for running mocha specs in a headless browser (PhantomJS)
Stars: ✭ 371 (-0.8%)
Mutual labels:  mocha, test-runner
Rxjs Marbles
An RxJS marble testing library for any test framework
Stars: ✭ 267 (-28.61%)
Mutual labels:  mocha
Gulp Inline Css
Inline linked css in an html file. Useful for emails.
Stars: ✭ 264 (-29.41%)
Mutual labels:  gulp-plugin
Gulp Zip
ZIP compress files
Stars: ✭ 262 (-29.95%)
Mutual labels:  gulp-plugin
Ember Cli Page Object
This ember-cli addon eases the construction of page objects on your acceptance and integration tests
Stars: ✭ 272 (-27.27%)
Mutual labels:  mocha
Ward
A modern Python test framework designed to help you find and fix flaws faster.
Stars: ✭ 350 (-6.42%)
Mutual labels:  test-runner
Eftest
Fast and pretty Clojure test runner
Stars: ✭ 367 (-1.87%)
Mutual labels:  test-runner
Ember Exam
Run your tests with randomization, splitting, and parallelization for beautiful tests.
Stars: ✭ 262 (-29.95%)
Mutual labels:  mocha
Eth Gas Reporter
Gas usage per unit test. Average gas usage per method. A mocha reporter.
Stars: ✭ 330 (-11.76%)
Mutual labels:  mocha
Cadence Web
Web UI for visualizing workflows on Cadence
Stars: ✭ 261 (-30.21%)
Mutual labels:  mocha
Sazerac
Data-driven unit testing for Jasmine, Mocha, and Jest
Stars: ✭ 322 (-13.9%)
Mutual labels:  mocha
Wpt
Test suites for Web platform specs — including WHATWG, W3C, and others
Stars: ✭ 3,573 (+855.35%)
Mutual labels:  test-runner

gulp-mocha

Run Mocha tests

Keep in mind that this is just a thin wrapper around Mocha and your issue is most likely with Mocha.

Install

$ npm install --save-dev gulp-mocha

Usage

const gulp = require('gulp');
const mocha = require('gulp-mocha');

exports.default = () => (
	gulp.src('test.js', {read: false})
		// `gulp-mocha` needs filepaths so you can't have any plugins before it
		.pipe(mocha({reporter: 'nyan'}))
);

API

mocha(options?)

options

Type: object

Options are passed directly to the mocha binary, so you can use any its command-line options in a camelCased form. Arrays and key/value objects are correctly converted to the comma separated list format Mocha expects. Listed below are some of the more commonly used options:

ui

Type: string
Default: bdd
Values: bdd tdd qunit exports

Interface to use.

reporter

Type: string
Default: spec Values: Reporters

Reporter that will be used.

This option can also be used to utilize third-party reporters. For example, if you npm install mocha-lcov-reporter you can then do use mocha-lcov-reporter as value.

reporterOptions

Type: object
Example: {reportFilename: 'index.html'}

Reporter specific options.

globals

Type: string[]

List of accepted global variable names, example ['YUI']. Accepts wildcards to match multiple global variables, e.g. ['gulp*'] or even ['*']. See Mocha globals option.

timeout

Type: number
Default: 2000

Test-case timeout in milliseconds.

bail

Type: boolean
Default: false

Bail on the first test failure.

checkLeaks

Type: boolean
Default: false

Check for global variable leaks.

grep

Type: string

Only run tests matching the given pattern which is internally compiled to a RegExp.

require

Type: string[]

Require custom modules before tests are run.

compilers

Type: string
Example: js:babel-core/register

Specify a compiler.

FAQ

Test suite not exiting

If your test suite is not exiting it might be because you still have a lingering callback, most often caused by an open database connection. You should close this connection or do the following:

exports.default = () => (
	gulp.src('test.js')
		.pipe(mocha())
		.once('error', err => {
			console.error(err);
			process.exit(1);
		})
		.once('end', () => {
			process.exit();
		})
);

Or you might just need to pass the exit option:

exports.test = () => (
	gulp.src(['test/**/*.js'], {read: false})
		.pipe(mocha({reporter: 'list', exit: true}))
		.on('error', console.error)
);
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected]