Security News
ESLint is Now Language-Agnostic: Linting JSON, Markdown, and Beyond
ESLint has added JSON and Markdown linting support with new officially-supported plugins, expanding its versatility beyond JavaScript.
Pipe scripts to browsers using the Selenium WebDriver protocol.
Repository: https://github.com/mantoni/min-webdriver
npm install min-wd
Put a config file name .min-wd
in your project directory:
{
"hostname": "localhost",
"port": 4444,
"browsers": [{
"name": "internet explorer",
"version": "10"
}, {
"name": "chrome"
}]
}
Alternatively, add a webdriver
property with the configs to your
package.json
file.
Assuming my-script.js
contains this:
console.log('Hello %s!', 'browser');
process.exit(0);
Use with browserify:
$ browserify -p min-wd my-script.js
= internet explorer 9 ========================================================
Hello browser!
= chrome * ===================================================================
Hello browser!
Export your SauceLabs credentials:
export SAUCE_USERNAME="your-user-name"
export SAUCE_ACCESS_KEY="your-access-key"
Enable SauceLabs in your .min-wd
file:
{
"sauceLabs": true,
"browsers": [...]
}
By default, min-webdriver will folk a new browser and inject the given script
straight away without loading any web page. If you want to run your test cases
in the context of a web page, you can configure the start page in the .min-wd
file:
{
"url": "http://my-test-page"
}
Testing with Mocha requires mocaccino:
$ browserify -p mocaccino -p min-wd my-test.js
If this is your use case, make sure to give Mochify a try.
The default timeout for the log polling script is 10 seconds. If you have long
running test cases that don't print anything for more than 10 seconds, you can
increase the timeout by adding a timeout
property to your config:
"timeout": 20000
min-webdriver
injects your script directly into the default page launched by
the Selenium driver. In some cases browsers behave strangely in this context.
Work around this by specifying a URL to a simple web page that is loaded before
running the tests:
{
"browsers": [{
"name": "Internet Explorer",
"version": "9",
"url": "http://my-server/doctype.html"
}]
}
With this content in the doctype.html
:
<!DOCTYPE html><html><head><meta encoding="utf-8"></head><body></body></html>
You can also specify a "url"
for all browser on the root level.
Loading a page before injecting the scripts is solving these issues:
JSON
because the Selenium default page makes
IE switch to quirks modeSECURITY_ERR: DOM Exception 18
because setting cookies is not
allowed for file://
URLsaccess to the Indexed Database API is denied in this context
MIT
2.2.2
FAQs
Minimal WebDriver that pipes stdin to browsers
The npm package min-wd receives a total of 870 weekly downloads. As such, min-wd popularity was classified as not popular.
We found that min-wd 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.
Security News
ESLint has added JSON and Markdown linting support with new officially-supported plugins, expanding its versatility beyond JavaScript.
Security News
Members Hub is conducting large-scale campaigns to artificially boost Discord server metrics, undermining community trust and platform integrity.
Security News
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.