November 3, 2023

Case Study: How we migrated java selenium tests to python robot framework

Background: Recently we worked on a project to migrate around 810+ cases which were written in java+testng+maven+jenkins stack to python+robotframework+gitlab stack. Stakeholders wanted to switch to Python and robot framework due to the following reasons: Process: When I looked into Java code, I knew there were a lot of things where we were testing things in the wrong way, after analyzing the whole code, I […]

March 31, 2023

How to run selenium 3 tests on zalenium docker containers

By using Zalenium Docker containers for running chrome/browser drivers and selenium grid, you can run your selenium tests without the need for any dependency such as chrome, chrome driver or webdrivermanager locally. When you use zalenium, you can view the live execution of tests through built-in vnc viewer, view test results in the dashboard with video and chromedriver logs, and control chrome instances easily through […]

June 13, 2021

Getting Started With Locust: A Python Based Performance Testing Tool

Last year in one of the consulting assignments, I was asked to perform performance testing on an application using locust, client wanted to integrate load testing within backend code which was written in python. Initially, I suggested JMeter but the client said a valid point that they want something that can easily be maintained by developers later on without much training. I understood their point […]

June 6, 2021

Top 20 Best Practices For Writing Better Automation Test Code

Programming Language Wise: Follow Programming Language Guidelines( method name-getPayload(), class name- APIEndpoints, package name-com.testingsumo.backend.tests, variable name-authToken) Follow Oops Concepts Wherever Possible- Abstraction(base classes), Inheritance(multiple implementations of same things/multiple inheritances), Polymorphism(many forms with something different), Data Hiding(hide unnecessary/sensitive info), Encapsulation(Bind small entities into a single large entity) Reduce code duplication (think before writing new code, can I use/make changes in existing code?) Increase code reusability  Make […]

March 28, 2021

How to run selenium 4 grid tests on Docker containers

By using Docker containers for running chrome/browser drivers and selenium grid, you can run your selenium tests without the need for any dependency such as chrome, chrome driver or webdrivermanager locally. When you use a remote selenium grid, then it also makes your local debugging easy, you can point to remote URL and see why your tests are failing on remote without the need to […]

March 6, 2021

How to create a compressed tar file with the relative file path in python

Whether you are working on file-heavy applications or on logs heavy applications, compressing files to save storage is very useful for efficient files management as well as disk storage management. Recently I worked on a project which required compressing a set of files and folders and below are some useful things I noticed while creating a compressed tar file in python: Create a simple tar […]

January 2, 2021

Top 5 programming languages to learn as sdet in 2021

1. Java– Open doors for selenium, appium,winapp, restassurred, karate, katalon cucumber, testNG, and serenity. Easy to learn, a lot of community support and wrappers are available, complex problems are easily available on Google/StackOverflow, jobs are easily found especially in India subcontinent and southeast Asia. 2. Python– Open doors for selenium, appium,winapp, requests, robot, pytest,behave and tkinter. Python is also very helpful for scripting, data analysis, […]

December 12, 2020

How to make an impact on build quality as a sdet/automation engineer

As a sdet/automation engineer if you are working with QAs/Test engineer after the release is deployed in QA then it’s already too late for you to make an impact in build quality, you need to work with developers and help them automate their unit testing and integration testing cycle by running automation suite or by providing them utilities/test scripts which can help them to deliver […]