PyTest vs Robot - Which automation testing framework to choose?

PyTest vs Robot - Which automation testing framework to choose?

Are you confused about which framework to start within python?

Let’s understand what these frameworks are and how to choose between them with their usage.

Robot Framework

Robot Framework is an open-source, keyword-driven test automation framework for Acceptance Testing and Acceptance Test-Driven Development (ATDD). A keyword-driven test approach means capabilities implemented in python can be extended by its test libraries.

Acceptance Testing with Robot Framework:

The test cases in Robot Framework are user-oriented and are not too technical. That is, it has an easy-to-use syntax for test data that allows you to automate tests using keywords.

Acceptance Test-Driven Development:

Acceptance test-driven development (ATDD) is an important agile practice merging requirement gathering with acceptance testing. It is simple enough so that also non­-programmers can create and understand test cases. 

Why Robot Framework?

This framework is mostly used as a less technical skill is required as compared to programming-language based frameworks Therefore, Can be used by team members that have less experience in programming.

For example, Product owners could express acceptance tests using the framework, without having to know the details of how the product is implemented.

Also, a well experienced technical person can also write keywords in their language of choice to test small functions as for unit testing and integration testing.

Some brief useful points for Robot Framework:

  1. Because of its keyword-driven approach, Robot Framework can be used to test the following application:
    a. Desktop applications
    b. Web applications
    c. Mobile applications, and SOAP-based services.
  2. It is possible to write tests that work cross-platform (ie: the same test case can be used to test both an android and iOS application, or for testing a web application that can be executed on Google Chrome, Mozilla Firefox, and Safari).
  3. One of the great strengths of the robot framework is that it is highly extensible.
    For example:
    a. You can plug in a library in Pytest to use selenium to run a browser.
    b. You can plug in a database library to directly access databases.