Skip to content
Anna Chernyshova edited this page May 20, 2021 · 9 revisions

Welcome to the healenium-web guide!

Healenium-web provides an ability to improve stability of Selenium-based test cases, handling changes of updated web elements

Healenium allows to overcome the problem of instability of automatic tests automatically and spend less time supporting tests. So, team have more time for product testing and increase coverage with new automation scripts. It supports healing either for Web or Mobile.

Self-healing capabilities can be easily configured by just wrapping your Selenium driver with SelfHealingDriver. Usage of ML algorithm for page changes identification will help to find controls (new locators) for updated pages and fix your tests in a runtime.

Friendly reporting and Locator-updater plugin for Intellij IDE brings visibility of controls state and provides an ability to update your “broken” locators with new values automatically in the code base.

Capabilities

  • Minimize maintenance time of test automation code, related to updated web pages and non-functional fails
  • Improve E2E automated scenario stability
  • Reduce amount of non-product related fails
  • More time to cover new functionality with tests
  • Kind of ML algorithm that analyses current web-page state for changes
  • In real time finds a new locator that best matches the target one if it was not found
  • Perform action with updated locator successfully
  • Applicable for mobile testing as well;

HOW IT WORKS

  • Handles NoSuchElement test failures: In runtime replaces failed control with a new value that matches the best and performs an action with replaced control successfully;
  • Supports advanced features: Parallel test run, Remote test run, Iframes, Actions, Selenide integration;

ARCHITECTURE DIAGRAM

Healenium includes several components:

Healenium-Web- library that implements Selenium and serves as dependency in Test Automation Framework

Healenium-backend - service that stores and process healing-related information

Tree-comparing - library with healing algorithm implementation

Healenium-report - Maven or Gradle report that listens test suit run

Healenium IDEA plugin - plugin to update healed locators in codebase

REPORTING AND CODE BASE UPDATES

  • Provides visibility of controls state: Detailed reporting with fixed control values and screenshots;
  • Updates test code base: Intellij IDE plugin to update controls with new values in the code base just in 2-clicks;

GIT REPOSITORIES STRUCTURE

https://github.com/healenium/healenium-backend - Healenium Backend https://github.com/healenium/healenium-idea - Intellij IDEA Plugin https://github.com/healenium/healenium-report-gradle - Gradle report for report generation https://github.com/healenium/healenium-report-mvn - Maven report for report generation https://github.com/healenium/healenium-example - Usage Example

CONTACTS

Anna_Chernyshova@epam.com - Project manager

Dzmitry_Humianiuk@epam.com - Project supervisor

Aliaksei_Ashukha@epam.com - Key Developer

Sponsored by Epam Licensed under Apache license 2.0