Grunt task for se-runner
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Grunt task for se-runner

Getting Started

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-se-runner --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:


NPM package

SeRunner task

Run this task with the grunt seRunner command.


In your project's Gruntfile, add a section named seRunner to the data object passed into grunt.initConfig().

  seRunner: {
    options: {
      // Task-specific options go here.
    your_target: {
      // Target-specific file lists and/or options go here.



Type: Array Default value: []

A list of WebDriver capabilities to start on the Selenium hub.


Type: Number Default value: 1

Number of concurrent processes that will be run.


Type: Object Default value: {}

Any values specified here will be added to the context that is passed into each test suite.


Type: Array Default value: []

A list of dependencies to load before running the tests.


Type: Function Default value: See example below

Provides a way to change how the WebDriver is instantiated or switch to a different WebDriver implementation. This function will be passed into a separate process and as such can contain no references to a different scope than its own. You can however use the Node.Js require() function inside of the driverFactory.create function. It will also be bound to the configuration object so you will have access to any values in there through the this property.


Type: String Default value: jasmine

Which test framework to use. The test runner will load the framework adaptor: se-runner-framework-[Framework]. All framework adaptors need to be installed separately.


Type: String Default value: INFO

Possible values are: NONE, ERROR, WARNING, INFO & DEBUG.


Type: Array Default value: []

A list of files or globbing patterns to find tests to be run.


Type: Number Default value: 60000

Default timeout in milliseconds. This value will also be passed to the framework adaptor (if not overridden in the framework specific configuration).


Type: String Default value:

Url to the Selenium Hub to connect to.


Type: Object Default value: {}

Any values given here will be passed into the framework adaptor.


Type: Boolean Default value: true

Whether the framework adaptor should report to the console as things are happening or not.


Type: Array Default value: []

A list of dependencies for the framework adaptor to load before running the tests.


Type: Number Default value: 60000

Overrides the default timeout for the framework adaptor only.

Usage Examples

SeRunner BrowserStack Example

For a full, ready to run, example using se-runner with grunt-se-runner and se-runner-framework-jasmine, see se-runner-browserstack-example.


  seRunner: {
    options: {
        capabilities: [],
        context: {},
        dependencies: [],
        driverFactory: {
            create: function (capabilities) {
                return new (require('selenium-webdriver')).Builder()
        framework: 'jasmine',
        logLevel: 'INFO',
        tests: [],
        timeout: 60000,
        selenium: {
            hub: ''
        jasmine: {
            consoleReporter: true,
            dependencies: [],
            timeout: 60000


In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.

Release History

  • 2017-04-13 v1.2.0 Output total SeRunner execution time.
  • 2017-04-11 v1.1.3 Update SeRunner dependency to 1.2.3.
  • 2017-04-10 v1.1.2 Update SeRunner dependency to 1.2.2 and added link in README to se-runner-browserstack-example.
  • 2017-04-10 v1.1.1 Update SeRunner dependency to 1.2.1.
  • 2016-12-09 v1.1.0 Indicate grunt success/failure based on result from SeRunner.
  • 2016-06-13 v1.0.1 Fixed peerDependencies.
  • 2016-05-10 v1.0.0 Initial version.