- Node.js - Programming Language
- Mocha - Node.js test frameworks
- Chai - Node.js test assertion/framework
- Browserify - To be able unit test everything locally and then inject it into the extension scope
- Webdriver.io - Node.js bindings and DSL for Selenium
- selenium-standalone - Node.js wrapper runnnig and fetching the Standalone selenium server and its dependencies (ChromeFriver etc...)
- ChromeDriver -Selenium driver for commanding Chrome
- xvfb (for headless Chrome in the CI) - Virtaul frame buffer for X server
- Travis CI - the CI
- Add this line to your
/etc/hosts
127.0.0.1 localhost fourth.third.second.first third.second.first
- Install NPM dependecies
$ npm install
- Install Selenium Drivers
$ npm run selenium-install
- Spin up the Standalone Selenium Server
$ npm run selenium-start
- Run the tests suite
$ npm test
- Chrome Extension Cross-Origin XHR
- Chrome Extension Background page
- Chrome Extension Manifest File format
- Chrome Extension Permissions in manifest.json
- Web page to Chrome Extension communication
- Chrome Extension Debugging
- Chrome Extension HTTP interception API
- Chrome Debugger Protocol
- Chrome Extension Debugger API