Speeding up test execution in Katalon Studio

Hello!
I am using Katalon studio to run a test that registers an account in my system, creates a profile and then fills out a 400 question survey.
If i were to do this manually it would probably take around 15 minutes, and my running the katalon script and do it in about 7.
Is there a way to speed up this process? I do not need to see the browser pop up and watch it manually scroll through the buttons, so i would be fine if it was just testing it in the back end and not showing me, or is the 7 minutes the fasted it and be and it is not something Katalon can change, rather it is at the mercy for how fast my system and computer loads various pages?

also: a majority of the questions for the survey are on the same page and do not need to be selected in order, could those be run in parallel?

FYI: all the “Execution” settings right now are the default meaning i do not have any lag time between steps

Thank you!

  1. Read the Execution Log in detail. Find out in the Log which step of execution takes long time, or which step is executed repeatedly and as a sum takes long. Without good study of the log, you wouldn’t be able to make your test faster.
  2. Use Headless browser, rather than Headed browser. Headless browser runs a bit quicker than the Headed one. See Headless Browsers Execution | Katalon Docs
  3. Check if you use WebUI.delay(some fixed seconds). If yes, you have room to speed up your test. Replace WebUI.delay(n) with other WebUI.waitFor... keywords that accept timeout as argument. Using the timeout, you can minimize the delay.
  4. You can make your test run far faster by reducing the amout of messages displayed in the Log Viewer. See Log Viewer slows down your tests. How to prevent it? I suppose that, if you close the Log Viewer completely so that no log messages are displayed, then your test will run faster: 15 minutes => 2 minutes.
  5. You may want to configure the project so that it disables TestOps integration and TestCloud integration provided that you do not need them. These services elicit bulky data transfer (test execution log, screenshots, etc) from the local PC to remote servers in the background. These services may force you wait for some minutes in addition to the actual duration of test execution. Be aware, the duration for communicating with TestOps and TestCloud will NOT be recorded in the test execution log. So you would be tricked and wouldn’t notice that the backend services tend to slow your work down.

You shouldn’t seek for “parallelism”.

Katalon’s Test Suite Collection features Parallel execution. On a single PC box, it won’t make the your tests run faster at all, it might be even slower than a sequetial execution. The Parallel Execution feature is just useless.

I have every tried to make use of multi-threading in a Test Case execution. See

Multi-threading did not help speeding up. Muti-threading is difficult to implement. Multi-threading is fragile, it breaks so easily.

In case that your test runs 15 hours you might desparately require parallelism. Then you would need to split your task into several portions and distribute the processings on to multiple machines: 2 boxes, 4 boxes, 8 boxes, … When all of distributed processes finished, you need to aggregate the test results and compile them into one. You need a Map-Reduce architecture like Hadoop. Katalon Studio does not support such approach at all. You have to invent all for yourself. I suppose you don’t want such crazy complex idea now.

1 Like

Hi @swinston,
You also may have the smart wait function enabled which can slow down test case execution. Check out this link for more details:

You may need to use one or more of the following afterwards:

*[WebUI] Wait For Page Load | Katalon Docs
*[WebUI] Wait For Element Present | Katalon Docs (my preference over visible)
*[WebUI] Wait For Element Visible | Katalon Docs

To turn off SmartWait you would use WebUI.disableSmartWait as the first keyword in your test case; if needed you can turn it back on again with WebUI.enableSmartWait.

Good luck,
Dave

An API test will be quicker than a UI test, assuming it can be done. Create your first API test with Katalon Studio | Katalon Docs

1 Like

thank you!