
Research
Malicious npm Packages Impersonate Flashbots SDKs, Targeting Ethereum Wallet Credentials
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
grunt-protractor-webdriver
Advanced tools
grunt plugin for starting Protractor's bundled Selenium Webdriver

grunt plugin for starting Protractor's bundled Selenium WebDriver
This Grunt task starts a Selenium WebDriver, blocks until it's ready to accept connections, and then leaves it running in the background until the Grunt process finished. During startup it checks for already running WebDriver instances and at the end of the Grunt process also shuts down the Selenium server to not leave you with any zombies.
grunt-protractor-webdriver is capable to handle parallelized tasks in case you use helpers like grunt-concurrent. That way you are able to work around the missing feature in Protractor that it's currently not able to run the tests against multiple browsers in parallel. See the Gruntfile.js for an example on how to do that.
This plugin requires Grunt ~0.4.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 grunt-protractor-webdriver --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-protractor-webdriver');
In your project's Gruntfile, add a section named protractor_webdriver to the data object passed into grunt.initConfig().
grunt.initConfig({
protractor_webdriver: {
options: {
// Task-specific options go here.
},
your_target: {
// Target-specific file lists and/or options go here.
},
},
});
Type: String
Default value: webdriver-manager start
Customize the way how the Selenium WebDriver is started. By default it assumes the presence of the webdriver-manager script (which comes bundled with Protractor) on the PATH.
Type: String
Default value: ``
Customize the path to the actual command that starts the the Selenium WebDriver. By default it assumes the presence of your script on the PATH.
Type: Boolean
Default value: false
Whether or not to keep the Selenium server process alive when no more browser session are connected.
grunt.initConfig({
protractor_webdriver: {
your_target: {
options: {
path: '/path/to/',
command: 'custom-webdriver-manager start',
},
},
},
});
By default the output of the Selenium WebDriver is not being piped to the console by the protractor_webdriver task. In case you need detailed information about its state, just run your Grunt tasks with the --verbose flag.
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.
path configuration. Fix for issue #3. Always use node now to execute the webdriver_manager commands.keepAlive also in case of exception being thrown by the Selenium process. Alternative implementation for original PR #5.keepAlive.Protractor v.20.1..on('error'), .on('uncaughtException') and .on('SIGINT').Selenium is already running message on failure. Ensure waiting for all browser sessions to be deleted before shutdown.Copyright (c) 2014 Steffen Eckardt. Licensed under the MIT license.
FAQs
grunt plugin for starting Protractor's bundled Selenium Webdriver
The npm package grunt-protractor-webdriver receives a total of 2,175 weekly downloads. As such, grunt-protractor-webdriver popularity was classified as popular.
We found that grunt-protractor-webdriver demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
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.

Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.

Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.

Security News
Following last week’s supply chain attack, Nx published findings on the GitHub Actions exploit and moved npm publishing to Trusted Publishers.