Socket
Socket
Sign inDemoInstall

@wdio/mocha-framework

Package Overview
Dependencies
185
Maintainers
3
Versions
327
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @wdio/mocha-framework

A WebdriverIO plugin. Adapter for Mocha testing framework.


Version published
Weekly downloads
300K
decreased by-16.4%
Maintainers
3
Install size
80.7 MB
Created
Weekly downloads
 

Readme

Source

WDIO Mocha Framework Adapter

A WebdriverIO plugin. Adapter for Mocha testing framework.

Installation

The easiest way is to keep @wdio/mocha-framework as a devDependency in your package.json, via:

npm install @wdio/mocha-framework --save-dev

Instructions on how to install WebdriverIO can be found here.

Configuration

Following code shows the default wdio test runner configuration...

// wdio.conf.js
module.exports = {
  // ...
  framework: 'mocha',

  mochaOpts: {
    ui: 'bdd'
  }
  // ...
};

Note that interfaces supported are bdd, tdd and qunit. If you want to provide a custom interface, it should expose methods compatible with them and be named ending with -bdd, -tdd or -qunit accordingly.

mochaOpts Options

Options will be passed to the Mocha instance. See the list of supported Mocha options here.


mochaOpts.require (string|string[])

The require option is useful when you want to add or extend some basic functionality.
For example, let's try to create an anonymous describe:

wdio.conf.js

{
  suites: {
    login: ['tests/login/*.js']
  },

  mochaOpts: {
    require: './hooks/mocha.js'
  }
}

./hooks/mocha.js

import path from 'path';

let { context, file, mocha, options } = module.parent.context;
let { describe } = context;

context.describe = function (name, callback) {
	if (callback) {
		return describe(...arguments);
	} else {
		callback = name;
		name = path.basename(file, '.js');

		return describe(name, callback);
	}
}

./tests/TEST-XXX.js

describe(() => {
	it('Login form', function () => {
		this.skip();
	});
});

Output

TEST-XXX
   ✓ Login form

mochaOpts.compilers (string[])

Use the given module(s) to compile files. Compilers will be included before requires.

CoffeeScript and similar transpilers may be used by mapping the file extensions and the module name.

{
  mochaOpts: {
    compilers: ['coffee:foo', './bar.js']
  }
}

For more information on WebdriverIO see the homepage.

Keywords

FAQs

Last updated on 20 Apr 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc