Compatibility with Test Automation Frameworks
Healenium is a versatile visual testing and self-healing framework that can be seamlessly integrated with several popular test automation frameworks, enhancing your ability to create robust and reliable automated tests. In this section, we'll explore how Healenium can be used in conjunction with the following frameworks:
Serenity
Serenity is a popular open-source library for writing high-quality, maintainable acceptance criteria tests. Healenium can be seamlessly integrated into Serenity-based projects, enabling automatic healing of your UI tests. To start using Healenium with WebdriverIO, follow the guidance:
  1. Install Healenium-Proxy with or without using Docker.
  2. Configure a Remote Web Driver to connect to Healenium with URL http://<hlm-proxy-host>:<hlm-proxy-port>. In the case of a local launch: http://localhost:8085
webdriver {
  driver = remote
  remote {
    url="http://localhost:8085"
    driver=chrome
  }
}
3. Execute the tests.
Robot Framework
Robot Framework is an open-source automation framework that provides an easy-to-read tabular syntax. By combining Robot Framework with Healenium, you can create maintainable and self-healing test suites. To use Healenium with Robot Framework, follow the guidance:
  1. Install Healenium-Proxy with or without using Docker.
  2. Configure a Remote Web Driver to connect to Healenium with URL http://<hlm-proxy-host>:<hlm-proxy-port>. In the case of a local launch: http://localhost:8085
Open Remote Chrome Browser
    Open Browser    ${PAGE_URL}  ${BROWSER}  remote_url=http://localhost:8085
3. Execute the tests.
Robot Framework always uses multiple element search (findElements). Since Healenium disables healing for multiple element searches (findElements) by default, you need to specify -FIND_ELEMENTS_AUTO_HEALING=true in the healenium-backend service.
WebdriverIO
WebdriverIO is a leading JavaScript test automation framework that provides an easy-to-use API for automating web applications. When combined with Healenium, WebdriverIO tests become more resilient and capable of self-healing. To start using Healenium with WebdriverIO, follow the guidance:
  1. Install Healenium-Proxy with or without using Docker.
  2. Configure a Remote Web Driver to connect to Healenium with URL http://<hlm-proxy-host>:<hlm-proxy-port>. In the case of a local launch: http://127.0.0.1:8085
    services: [],
    // host/port/protocol your hlm-proxy service
    hostname: '127.0.0.1',
    port: 8085,
    protocol: 'http'
3. Execute the tests.
Cucumber BDD
Cucumber is a widely-used behavior-driven development (BDD) framework that allows you to write tests in plain language. Integrating Healenium with Cucumber can enhance your BDD tests by adding self-healing capabilities to them. To get started with Healenium and Cucumber, follow the steps:
  1. Install Healenium-Proxy with or without using Docker.
  2. Configure a Remote Web Driver to connect to Healenium with URL http://<hlm-proxy-host>:<hlm-proxy-port>. In the case of a local launch: http://localhost:8085
ChromeOptions options = new ChromeOptions();
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:8085"), options);
3. Execute the tests.
Browserstack
Leveraging the strength of Browserstack, a widely-used cloud testing platform, you can enhance your web application testing with Healenium. It's important to note that Healenium can exclusively integrate with Browserstack using the legacy approach, which involves specific configuration settings. Browserstack provides a versatile testing environment, while Healenium offers self-healing capabilities, making it a powerful combination.
  1. Install Healenium-Proxy with or without using Docker.
  2. If you are using Docker Compose for Healenium, locate the docker-compose-appium.yaml file
    2.1. Replace the SELENIUM_SERVER_URL and APPIUM_SERVER_URL environment variables of the healenium-proxy service with the following URL
https://User_Name:Access_Key@hub.browserstack.com/wd/hub
2.2. Replace User_Name with your BrowserStack User Name and Access_Key with your BrowserStack Access Key.
3. If you are not using Docker, navigate to the shell-installation/selenium-grid directory.
3.1. Open the start_healenium.sh script.
3.2. Replace the SELENIUM_SERVER_URL and APPIUM_SERVER_URL environment variables with the following URL:
https://User_Name:Access_Key@hub.browserstack.com/wd/hub
3.3. Replace User_Name with your BrowserStack User Name and Access_Key with your BrowserStack Access Key.
4. Configure a Remote Web Driver to connect to Healenium with URL http://<hlm-proxy-host>:<hlm-proxy-port>. In the case of a local launch: http://localhost:8085
ChromeOptions options = new ChromeOptions();
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:8085"), options);
3. Execute the tests.
About Healenium
Contacts
  • Anna_Chernyshova@epam.com - Project Manager
  • Dmitriy_Gumeniuk@epam.com - Project Supervisor