Grunt tasks for running a standalone Selenium server using the popular selenium-standalone package
This is a fork of the original project using the latest versions of dependent modules, especially selenium-standalone
, which needed a fix for usage with the latesr Selenium web driver.
This plugin requires Grunt >=1.0.0
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 @prantlf/grunt-selenium-standalone --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('@prantlf/grunt-selenium-standalone');
In your project's Gruntfile, add a section named selenium_standalone
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
selenium_standalone: {
options: {
stopOnExit: true
}
your_target: {
seleniumVersion: '3.141.59',
seleniumDownloadURL: 'http://selenium-release.storage.googleapis.com',
drivers: {
chrome: {
version: '81.0.4044.69',
arch: process.arch,
baseURL: 'http://chromedriver.storage.googleapis.com'
},
firefox: {
version: '0.26.0',
arch: process.arch,
baseURL: 'https://github.com/mozilla/geckodriver/releases'
},
safari: {
version: '2.48',
arch: process.arch,
baseURL: 'https://selenium-release.storage.googleapis.com'
},
edge: {
version: '6.17134',
arch: 'ia32',
baseURL: 'https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/'
},
ie: {
version: '3.150',
arch: 'ia32',
baseURL: 'http://selenium-release.storage.googleapis.com'
}
}
}
}
});
For each target of the task selenium_standalone
you can issue multiple commands with command verbs.
The supported command verbs are:
- install: installs the web drivers which were specified for a given target
- start: starts the selenium server
- stop: stops the selenium server
For each target, you can specify if the selenium server should stop automatically when the executing Grunt task run completes or fails. The default is false
.
With Chrome:
grunt test
With Firefox:
BROWSER=firefox grunt test
- 1.0.1: Fixed an issue with passing the
seleniumDownloadURL
config property through - 1.0.0: Updates to better support option pass-through to the underlying
selenium-standalone
module - 0.1.0: initial implementation. Commands: install, start, stop are implemented.