webdriverio/wdio-mocha-framework

Name: wdio-mocha-framework

Owner: WebdriverIO

Description: A WebdriverIO plugin. Adapter for Mocha testing framework.

Created: 2015-09-13 21:07:55.0

Updated: 2018-01-09 16:11:57.0

Pushed: 2018-01-19 16:29:56.0

Homepage: null

Size: 248

Language: JavaScript

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

WDIO Mocha Framework Adapter

Build Status Code Climate Test Coverage Dependency Status


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.


evDependencies": {
"wdio-mocha-framework": "~0.5.9"


You can simple do it by:

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…

dio.conf.js
le.exports = {
 ...
amework: 'mocha',

chaOpts: {
ui: 'bdd'

 ...

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


ites: {
login: ['tests/login/*.js']


chaOpts: {
require: './hooks/mocha.js'


./hooks/mocha.js

rt path from 'path';

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

ext.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

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

Output

-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.


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


Development

All commands can be found in the package.json. The most important are:

Watch changes:

m run watch

Run tests:

m test

n test with coverage report:
m run test:cover

Build package:

m build

For more information on WebdriverIO see the homepage.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.