This repository will hold multiple Node.js based automation frameworks and examples which will help you run tests with Node.js based automation frameworks locally and or in Sauce Labs.
DISCLAIMER
The code in these scripts is provided on an "AS-IS" basis without warranty of any kind, either express or implied, including without limitation any implied warranties of condition, uninterrupted use, merchantability, fitness for a particular purpose, or non-infringement. These scripts are provided for educational and demonstration purposes only, and should not be used in production. Issues regarding these scripts should be submitted through GitHub. These scripts are maintained by the Technical Services team at Sauce Labs.
Please contact the Sauce Labs Sales Team for support and information.
Most of the Sauce Labs features will be explained with WebdriverIO, the preferred Node.js framework when using Sauce Labs.
- selenium-webdriver with Jasmine/Mocha/CucumberJS*
- WebdriverIO with Jasmine/Mocha/CucumberJS*
- WebdriverIO with Appium for Native/Hybrid Apps
- WebdriverIO with Appium for Mobile Web (Chrome/Safari)
- WebdriverIO for Desktop Web (Selenium, but officially WebDriver)
- WebdriverIO Async Mode and TypeScript with Best Practices, including the use of Page Objects
- Examples
- WebdriverIO and Sync Mode with Best Practices
- WebdriverIO and Chrome Extensions
- WebdriverIO and CucumberJS
- WebdriverIO Visual E2E
- WebdriverIO and extendedDebugging
- WebdriverIO and Sauce Connect
- WebdriverIO and Sauce Labs Front-End Performance
- WebdriverIO with Up and Downloading Files
- WebdriverIO, Sauce Labs and W3C
- WebdriverIO with Typescript
- WebdriverIO with Deque Axe Accessibility
- SauceCTL Testrunner Toolkit
- Screener Runner (DEPRECATED!! Move to Visual E2E)
- NightWatch
- NightWatch for Desktop Web (Selenium, but officially WebDriver)
- NightWatch for Mobile Web (Chrome/Safari)
- Protractor with Jasmine
- Protractor for Desktop Web (Selenium)
- Protractor for Mobile Web (Appium)
- Puppeteer with Jest
* The connection to Sauce Labs doesn't depend on using Mocha, Jasmine or CucumberJS. Please check the frameworks page of WebdriverIO on how to implement a different framework then the used framework here in this repository.
In order to run these scripts you must complete the following prerequisite steps:
Select the button below to try this demo in Gitpod
After the gitpod session launches, navigate to the terminal and run the following commands to save your Sauce Labs Credentials to gitpod as environment variables:
eval $(gp env -e SAUCE_USERNAME=******) eval $(gp env -e SAUCE_ACCESS_KEY=******)
Click the following link if you're unsure how to access your Sauce Labs credentials. Also, if you start a new terminal in gitpod, you have to run the following command to reset envrionment variables:
eval $(gp env -e)
For more information consult the gitpod documentation
-
Clone the Repository and set your Sauce Labs Credentials:
git clone https://github.com/saucelabs-training/demo-js.git export SAUCE_USERNAME=******** export SAUCE_ACCESS_KEY=*******
-
Please check all README.md files in each framework example to see what you need to do to get the tests running.