Security News
Input Validation Vulnerabilities Dominate MITRE's 2024 CWE Top 25 List
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Test your JavaScript in 800+ browsers.
Airtap is an easy way to test your JavaScript in browsers, using a TAP-producing harness like tap
or tape
. Start testing your code locally in seconds and seamlessly move to cloud based browsers powered by Sauce Labs for better coverage.
Airtap is different than other cross browser test runners in its simplicity and ability to easily run your test suite in many browsers without having them installed locally. It lets you iterate quickly during development and provide good browser coverage before release without worrying about missing a supported browser.
Don't just claim your JavaScript supports "all browsers", prove it with tests!
This project is a fork of the amazing Zuul. Please note that our API is currently unstable and some documentation may be out of date. Anyone is welcome and encouraged to contribute towards 1.0.0 via a pull request.
With npm do:
npm install airtap --save-dev
If you are upgrading or migrating from zuul: please see the upgrade guide.
Airtap works out of the box with tap
and tape
. If you're already using these, setup will be trivial.
Airtap has 3 modes of operation: locally, cloud browsers, and continuous integration. You should make sure that airtap is working locally before you try to run the other two.
Airtap will do all the hard work of setting up your test harness, support files, and cloud browser integration so you can just focus on writing your tests.
All you need is an entry point for your tests like test.js
. When iterating on your tests during development, simply use --local
mode to see your tests run in a browser.
See the included example for a simple test. Run it by issuing the following command in the example directory:
airtap --local 8080 test.js
It will print a URL that you can open in any local browser to run the tests. Make changes to the code as needed. No need to restart airtap, just refresh your browser.
The reason we go through all this trouble in the first place is to seamlessly run our tests against all those browsers we don't have installed. Luckily, Sauce Labs runs quite a few browsers and we can easily task airtap to test on those.
See the Cloud Testing guide to get your tests running in the cloud. TLDR: save your credentials to ~/.airtaprc
, add browsers to .airtap.yml
and issue:
airtap test.js
Airtap itself is also tested in Sauce Labs.
No testing setup would be complete without a badge for passing or failing tests. After making sure your tests all pass in the cloud from your local machine, we will configure our tests to pass from Travis when we commit changes. See the Travis CI guide.
Lots of folks! Collectively, packages that depend on Airtap get 10's of millions of downloads per month!
memdown
webtorrent
(and dependencies)simple-peer
buffer
stream-http
Airtap is an OPEN Open Source Project. This means that:
Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.
See the contribution guide for more details.
Airtap consumes a YAML config file. See the airtap.yml guide for all of the goodies this file provides.
It includes advanced usage like how to run an additional server to support tests that make ajax requests.
Cross-browser Testing Platform and Open Source <3 Provided by Sauce Labs.
MIT © Roman Shtylman, Zuul contributors and Airtap contributors.
[0.0.5] - 2018-05-05
lib/get-saucelabs-browser.js
and lib/flatten-browserlist.js
by using sauce-browsers
module (@lpinca)status
and results
to stats
for consistency (@vweevers)server-destroy
module (@vweevers)ZuulReporter
(@vweevers)SauceBrowser#browser
to webdriver
(@vweevers)AbstractBrowser
(@vweevers)frameworks/
to client/
(@ralphtheninja).stats
to AbstractBrowser
(@ralphtheninja)debug()
over console.log()
(@vweevers)zuul
naming (@ralphtheninja)test-local-electron
script (@vweevers)AbstractBrowser
and implementations (@vweevers)tags
option (@vweevers)FAQs
Run TAP unit tests in 1789+ browsers
The npm package airtap receives a total of 2,457 weekly downloads. As such, airtap popularity was classified as popular.
We found that airtap demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers 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
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.
Research
Security News
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.