What is Oxygen?

Oxygen is an open source framework and tool-set built on top of Appium, WebdriverIO, and Selenium that significantly simplifies writing and running web automation tests. It implements many commonly recurring patterns out-of-the-box and hides complexities of the above backends behind a concise API.

Oxygen comes in two flavors:

  • Oxygen IDE - Integrated development environment for recording, developing, and running tests.
  • Oxygen CLI - Console application for running tests and generating reports.

Both applications support test execution on the following platforms:

  • Android - Native, Hybrid, and Web
  • iOS - Native, Hybrid, and Web
  • Windows - Chrome, Internet Explorer
  • Linux - Chrome
  • OS X - Chrome

Oxygen test scripts are written in JavaScript:

// Login into a web site (desktop web application).
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.
var userEmailDb = db.query("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.init(capabilities);
web.click('//*[@id="profile"]');
web.assertText('id=user_email', userEmailDb);

Key Features

Here is a brief summary of Oxygen Framework features:

  • Concise automation API with built-in support for databases, web services, email services, ...
  • Intuitive IDE tailored specifically for writing automation scripts.
  • Cross-browser test recording.
  • Built-in parameterization for Data Driven Testing.
  • Object Repository allowing to write easily maintainable tests.
  • Console application for integration with Continuous Integration systems.
  • Support for desktop web and mobile native, hybrid, and web applications.