The transition from high-code tool Protractor to low-code tool Tosca - Sofius

The transition from high-code tool Protractor to low-code tool Tosca

Over the past few years, I have gained extensive experience with both the high-code tool Protractor and the low-code tool Tosca. My client decided last year to make the switch from Protractor to Tosca, and I would like to share my experiences and insights regarding this transition. In this blog article, I will discuss the differences between high-code and low-code tools, the advantages and disadvantages of both tools, and the challenges we faced during the implementation. Additionally, I will provide several key take-aways for organizations considering a similar transition.

High-code vs low-code: what is the difference?

When discussing the switch from Protractor to Tosca, it is important to first understand the difference between high-code and low-code tools.

High-code tools like Protractor offer a lot of flexibility through extensive customisation options. They allow testers to have a great deal of control over their test automation, but this comes with the necessity of writing (more) code. Protractor, for example, is an open-source tool for testing web applications, where you manually write code for test scenarios.

Low-code tools like Tosca, on the other hand, are more model-based, allowing testers with minimal coding knowledge to set up and execute their test cases. This makes low-code tools more accessible to testers with less technical experience and can ensure that test automation can be implemented faster.

In practice, this means that the transition from high-code to low-code also changes the way teams work and the technical skills required.

Protractor: the high-code tool

We have used Protractor in recent years for automating web applications. Protractor requires a deep knowledge of JavaScript and offers extensive customisation options. Tests in Protractor are often written in code, and a typical test consists of a number of lines that perform actions on a web page, such as clicking or entering data, and then performing verifications.

Advantages of Protractor:

  • Robustness: Protractor is a lightweight tool that works quickly and integrates well with Node.js. It offers the ability to execute thousands of tests rapidly.
  • Flexibility: It provides ample room for customisation and is suitable for technical testers who have experience with programming.

Disadvantages of Protractor:

  • Technical knowledge required: New testers often need time to become familiar with the tool, which increases the learning curve.
  • Logging and debugging: Due to the speed of software development, logging and detailed debugging are often neglected, which can lead to a lack of insight into the cause of a failed test.
  • End of Life: Protractor was declared end-of-life at the end of 2023, which forced us to switch to another tool, with all the accompanying challenges.

Tosca: The low-code tool

When Protractor reached its end-of-life, the choice was made for Tosca, a low-code test automation tool that enables model-based operation. Unlike Protractor, Tosca is more user-friendly and requires less technical knowledge to work with.

Advantages of Tosca:

  • User-Friendliness: Tosca offers an intuitive user interface that makes it possible to set up tests quickly, for example, by scanning web pages and then linking actions to them, without writing much code.
  • Versatility: Tosca supports various types of testing, such as web applications, APIs, PDFs, and even Salesforce and SAP. This makes it possible to integrate different systems into a single test scenario.
  • Implementation Speed: For teams with fewer technical testers, Tosca is quick to learn and easy to implement. Especially for simpler testing work, Tosca is highly efficient.

Disadvantages of Tosca:

  • Licensing Issues: Tosca is not an open-source tool, meaning that obtaining a license involves costs. This can be an obstacle to the proper implementation of the tool. I compared this to the simplicity of setting up Protractor, a tool you can have working within 10 minutes without a license.
  • Limitations in Control: Unlike Protractor, it is easier to perform detailed error analysis in Tosca. However, the tool lacks the four-eyes principle (or ‘four-eyes review’) via pull requests, which you could use with Protractor to ensure code quality.
  • Dependence on Tricentis: Tosca is a proprietary tool, which means you are dependent on the developer for updates and new features. With open-source tools, you can intervene more quickly yourself or seek help within the community.”

Unlike Protractor, Tosca is more user-friendly and requires less technical knowledge to work with.

The Implementation: from Protractor to Tosca

The transition from Protractor to Tosca was not a simple task. It is not possible to simply transfer Protractor tests to Tosca, as both tools operate very differently. We therefore truly had to start from scratch, but with a number of advantages in our toolkit.

Steps we took to ensure a smooth transition:

  • Training and Certification: We ensured that everyone within the team had the necessary knowledge by following Tricentis courses and certifications. This was essential to get everyone up-to-speed with Tosca quickly.
  • Hands-on Guidance: Tricentis sent trainers to our location to provide hands-on sessions, during which we automated specific test scenarios in Tosca.
  • Formation of a Project Group: We established a project group to select the tests we wanted to migrate and to define the best practices for Tosca.
  • Structure and Reusability: We set up a clear structure within Tosca so that everyone knew where they could find specific tests and data. This ensured that reusability and maintainability were guaranteed.

Conclusion: which tool is right for your team?

The transition from Protractor to Tosca has helped us leverage the power of low-code automation. Tosca has enabled our team to set up tests faster and more efficiently, even without deep technical knowledge. That being said, Tosca also has its own challenges, such as the dependency on licenses, quality control of the tests, and the fact that Tosca also has functional limitations.

For teams with less technical experience, Tosca can be an excellent choice, whereas high-code tools may be better suited for teams that require a lot of flexibility and customisation. The choice between high-code and low-code therefore depends on the needs and skills of your team.

Takeaways:

  • High-code tools like Protractor offer more flexibility but require deep technical knowledge.
  • Low-code tools like Tosca are more user-friendly, but you may encounter functional limitations.
  • Ensure proper training and guidance when implementing new tools, and establish a clear structure to ensure test automation runs smoothly.
  • Whether you choose a high-code or low-code tool, the most important thing is that the tool aligns well with the skills of your team and the requirements of your organization.

Are you facing the choice between a high-code or low-code testing tool? Or would you like to discuss which approach best suits your team and organization? Contact us. We are happy to share our practical experience and offer tailored advice.

Misschien vind je de volgende artikelen ook wel interessant