OXYGEN
HomeGitHubReleasesCommunity
  • Welcome to Oxygen
  • About
    • What is Oxygen?
    • Getting Started (Videos)
      • Oxygen IDE Controls Overview
      • Recording a Web Test
      • Oxygen Commands Explained
    • Getting help
  • Download and work with Oxygen
    • Download & Installation
      • Oxygen IDE Installation
      • Oxygen for Mobile Installation
      • Oxygen for Windows Desktop Automation Setup
      • Oxygen for Mac Installation
        • Mac Installation Troubleshooting
      • Oxygen CLI Installation
      • Java Installation Instructions
      • Recording Troubleshooting
    • Start working with Oxygen
      • Getting Started - Web
        • Introduction - Web Testing
        • Recording a Web Test
        • Creating a Web Test
        • Sample Project - Web Test
      • Getting Started - Mobile
        • Introduction - Mobile Testing
        • Recording a Test on Mobile
        • Creating a Test - Mobile
        • Sample Project - Mobile
      • Getting Started - Oxygen for Windows Desktop Automation
      • Getting Started- Oxyge CLI
        • Running a Test Script on Windows
        • Running Multiple Tests (Suites) on Windows
    • Oxygen Modules
      • assert
      • date
      • db
      • email
      • eyes
      • http
      • log
      • mailinator
      • mob
      • pdf
      • proxy
      • serial
      • shell
      • soap
      • twilio
      • utils
      • web
      • win
    • Test Parameters
  • Cloud Providers
    • Sauce Labs
    • Lambda Test
    • TestObject
  • Advanced programming in Oxygen
    • Project Configuration
    • Locating Elements
    • Page Objects
    • Environments
    • Code Components
Powered by GitBook
On this page
  • Key Features
  • Supported platforms

Was this helpful?

  1. About

What is Oxygen?

Oxygen is an open-source automation platform that simplifies the work with Selenium and Appium. With Oxygen, manual testers and QA engineers can write automation tests within minutes.

PreviousWelcome to OxygenNextGetting Started (Videos)

Last updated 4 years ago

Was this helpful?

Oxygen significantly simplifies writing and running automation tests of any kind. It's an open source framework and tool-set built on top of , , , and . It implements many commonly recurring patterns out-of-the-box and hides back-end complexities behind a concise API. Oxygen test scripts are written in JavaScript and is compatible with . Oxygen is comprised of for each of the different functionalities that it supports. It also has native - , with its built-in implementation.

Oxygen is made up of two components: Oxygen CLI - Command Line Interface and Oxygen IDE - Integrated Development Environment, a GUI (Graphic User Interface) application.

  • Oxygen CLI - Is a module and command-line toolset for running tests and generating reports either on a local workstation or as a part of Oxygen CLI can easily be integrated into any Node.js project or CI/CD tool, such as . Oxygen CLI lets you execute Test Suites containing multiple sets of test cases.

  • Oxygen IDE - Is a graphic user interface (GUI) application for Windows, Mac and Linux that used for recording, developing, and running tests on web browsers, mobile devices and windows desktop applications. Oxygen IDE is optional but is highly recommended for rapid test script development.

Key Features

  • Best-in-class Node.js based test automation framework, with built-in support for many modern technologies: Web, Mobile, Desktop, Database, REST API, email, SMS, PDF, shell, IoT and more. Expandable with user-created modules.

  • Supports desktop windows application, web, native mobile, hybrid, and mobile-browser applications.

  • Intuitive IDE tailored specifically for writing automation scripts.

  • Cross-browser test recording and execution.

  • Run your tests locally or on any test execution cloud provider.

  • Seamless integration and one-click test execution on browsers and devices available in your LambdaTest, Sauce Labs, TestObject, Testing Bot, and Perfecto account (no need to define capabilities).

  • Built-in parameterization for Data-Driven Testing.

  • Object Repository (Page Objects) that allows for writing easily maintainable tests.

  • Straight-forward integration with any CI/CD tool using Oxygen CLI.

Supported platforms

Oxygen supports the following platforms:

  • Android - Native, Hybrid, and Web

  • iOS - Native, Hybrid, and Web

  • Windows - Desktop, Chrome, Firefox, Internet Explorer (Support for Microsoft EDGE coming soon in an upcoming version)

  • Linux - Chrome, Firefox

  • OS X - Safari, Chrome, Firefox

Oxygen test scripts are written in JavaScript:

// Define capabilities
var capabilities = {
    browserName: 'chrome',
    'goog:chromeOptions': {
        args: [
            '--headless',
            '--no-sandbox',
            '--disable-notifications',
        ],
    }
}

// Login into a web site (desktop web application).
web.init(capabilities);
web.open('http://example.org');

web.click('link=login');
web.type('id=username', 'USERNAME');
web.type('id=password', 'PASSWORD');
web.assertTitle('TITLE');

// Get value from a data base and validate that it matches the one we see on the screen.
db.setConnectionString('Driver={SQL Server};Server=DESKTOP-NAME\\SQLEXPRESS;Database=db;');

var userEmailDb = db.executeQuery("SELECT email FROM users WHERE username = 'username';");
var userEmailEl = web.getText("id=userEmail");
assert.equal(userEmailEl, userEmailDb);

// Launch native application running on a mobile device, click a button, validate that user is logged in.
web.click('//*[@id="profile"]');
web.assertText('id=user_email', userEmailDb);
Selenium
Appium
WebdriverIO
WinAppDriver
ECMAscript 6
numerous modules
support for BDD
Behavior-Driver Development
Cucumber
Node.js
CI/CD process
Jenkins