Debugging tip: Conditional breakpoints in IntelliJ platforms

Useful debugging feature in IntelliJ based IDEs: Put a breakpoint which stops only when a certain condition matches.

Using TestNG setup/teardowns with data provider combinations

Sometime back, I tried to update my Kotlin test code using TestNG to use data providers and Before/After annotations and it did not work immediately. After some research I found the solution. Here is a post, explaining how to use these constructs well with an example.

Using IntelliJ to speed up your dev workflow

Give your development experience superpowers!I do the bulk of my test automation development in Kotlin/Java or Python languages. After the programming language, a very important component for the dev workflow is a good IDE.While the purists generally rave about the use of Editors like Sublime, VSCode or even use of Vim/Emacs over full-fledged IDE's like…

Understanding reporting and logging in TestNG

TestNG is a popular test framework that needs no introduction in the JVM (Java virtual machine) ecosystem and can be used for automating your tests regardless of their size. For example: Large (functional) or medium/small level tests (Integration/Unit). It is a highly customizable framework and provides great flexibility around how you want to structure your…

How to do reverse lookup enum constant by value in Kotlin

    This is a neat trick I discovered recently enums are a very useful concept in programming and allow us to define constant values which can easily hold grouped data and even declare members I use them heavily in my automation code to define constant values and they work very well when we have…

Working with TestNG data providers in Kotlin

Photo by Juan Gomez on Unsplash Hello there, TestNG needs no introduction, It is one of the more popular test frameworks available in Java/JVM ecosystem and offers many advanced features like running tests in parallel, flexible annotations to do setups and teardowns at different levels and group tests and run them selectively. One of the more useful features…

How to setup a load test via Locust

Walkthrough of how we can use Locust to set up a simple test for a mocked API Locust.io website Hello there, Recently at my workplace, we had to ship the rewrite of an API from Ruby on rails to Go. This was a critical API for the business and we wanted to see how it…

Vol 2: How Kotlin eased my life in a Java world

2nd part in a series on how to write idiomatic Kotlin. Read the 1st part here. Mutable (var) and Immutable types (val) in Kotlin In Kotlin, variables are typically preferred to be declared as val and borrows these constructs from other languages. Consider below example We have a Robot Class with 3 properties which are val…