Looking for suggestions for starting fresh

I don’t know what’s the best. Let me explain my way how to use Katalon Studio.

I always develop 2 sets of codes for quality assurance of a web app project. One is the “Unit tests”, another is the “Visual Inspection”. The two approaches complement each other. I use a term “test” as a code that enumerates some specific conditions to verify if the system works as expected. On the other hand, I use a term “inspection” as a code that expects nothing specific to occur but just observe as many page views and as often as possible to find anything unexpected has occured.

You know what “Unit tests” is — by PHPUnit, JUnit, Cucumber — which unit-testing framework you use, it does not matter. “Unit tests” starts with the low level of abstraction of program codes, and goes upward. The web app developers will (must) develop the Unit tests anyway.

What is “Visual inspection”? What sort of problems does “Visual inpection” aim to solve? See my post Visual Testing in Katalon Studio. Katalon’s Visual Testing feature may help you to implement something like this. But I personally don’t use the Katalon’s feature as I have developed my own solution.

I would begin my WebUI automation with “Visual inspection” and later I would add some detailed UI testing if necessary. However, before adding any verification, I always ask to myself: “should I implement this test as a part of the unit-testing driven by JUnit, or as a part of UI-testing driven by Selenium?”. I am inclined to implement the tests as a part of unit-testing by JUnit, not in the ui-test set by Selenium. Therefore my set of Selenium-based UI testing rarely grows large.

I think that the smaller the UI test set is the better because automated UI test requires human resources to maintain. If you develop your UI-testing detailed and large, it gets increasingly likely to break in future. Once broken, you would be possibly tempted to drop it off rather than trying to fix the breakages.

On the other hand, the code to perform “Visual inspection” is usually trivial: open the top page URL, navigate the menu to visit sub-pages and take screenshots; that’s all. My library helps comparing the screenshots and compiling reports. It has smaller risk of breakages. It’s maintenance cost is rather small. But it helps developers by notifying unexpected change (bugs) in page views. That’s enough for me.

1 Like