Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
browserevent
Advanced tools
Plugin for the WebdriverIO project to listen on client side browser events
This is an experimental feature that helps you to listen on events within the browser. It
is currently only supported in Chrome browser (other browser will eventually follow).
To register an event call the addEventListener
command. If an event gets invoked it returns
almost the complete event object that got caught within the browser. Only the Window
attribute
will be removed to avoid circular references. All objects from type HTMLElement
will be
replaced by their xPath. This will help you to query and identify this element with WebdriverIO.
First install this plugin via NPM by executing
$ npm install browserevent
Then just require the module and enhance your client object.
var client = require('webdriverio').remote({ desiredCapabilities: { browserName: 'chrome' } }),
browserevent = require('browserevent');
// by passing the client object as argument the module enhances it with
// the `addEventListener` and `removeEventListener` command
browserevent.init(client);
After that you can use addEventListener
to register events on one or multiple elements
and removeEventListener
to remove them.
Example
client
.url('http://google.com')
.addEventListener('dblclick','#hplogo', function(e) {
console.log(e.target); // -> 'id("hplogo")'
console.log(e.type); // -> 'dblclick'
console.log(e.clientX, e.clientY); // -> 239 524
})
.doubleClick('#hplogo') // triggers event
.end();
Note: this is still an experimental feature. Some events like hover
will not be recorded
by the browser. But events like click
, doubleClick
or custom events are working flawlessly.
You can also use this feature in cloud environments like Sauce Labs
when using a secured tunnel that proxies the port 5555
. But be aware of possible delays due
to slow connections between client and cloud server. Your click listener could outlast some
selenium requests until it gets fired. I haven't faced this problem if the standalone server
runs on my local machine.
Please fork, add specs, and send pull requests! In lieu of a formal styleguide, take care to maintain the existing coding style.
FAQs
Plugin for the WebdriverIO project to listen on client side browser events
We found that browserevent 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
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.