Socket
Socket
Sign inDemoInstall

gulp-wdio

Package Overview
Dependencies
261
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    gulp-wdio

gulp plugin for wedriver.io with built-in selenium and browserstack support


Version published
Weekly downloads
8
increased by300%
Maintainers
1
Created
Weekly downloads
 

Readme

Source

Build Status

gulp-wdio

Same as gulp-webdriver with three key differences:

  • built-in browserstack support
  • built-in selenium support
  • included webdriver.io package (so you wouldn't have to)

So you could just simple do –

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

gulp.task('e2e', () => {
  return gulp.src('path/to/wdio.conf.js').pipe(wdio({

    // Omit "type" property if you want start wdio without additional layers
    type: 'selenium',  // or "browserstack"
    wdio: {} // Same arguments as with `wdio --help`
  }));
});

Instead of something like this (taken from gulp-webdriver test script) –

// For local selenium
import gulp from 'gulp'
import selenium from 'selenium-standalone'
import webdriver from '../lib/index'

export default options => {
    let errorLog = options.errorHandler('Selenium start')

    gulp.task('selenium:start', done => {
        selenium.install({
            logger (message) {
                process.stdout.write(`${message} \n`)
            },
            progressCb: (totalLength, progressLength) => {
                process.stdout.write(`Downloading drivers ${Math.round(progressLength / totalLength * 100)}% \r`)
            }
        }, err => {
            if (err) return done(err)

            selenium.start({
                spawnOptions: {
                    stdio: 'ignore'
                }
            }, (err, child) => {
                selenium.child = child
                errorLog(err)
                done()
            })
        })
    })

    gulp.task('test', ['selenium:start'], () => {
        return gulp.src(`${options.test}/wdio.*`)
            .pipe(webdriver({
                logLevel: 'verbose',
                waitforTimeout: 12345,
                framework: 'mocha',
                // only for testing purposes
                cucumberOpts: {
                    require: 'nothing'
                }
            })).once('end', () => {
                selenium.child.kill()
            })
    })
}

Keywords

FAQs

Last updated on 05 Mar 2017

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