Web server app detects katalon chrome client and errors out

Hi all,

I am a newbie to Katalon. I was recently tasked to develop a web testing app that manages user profiles. However when I try to capture the the user work flow using Chrome client, it seems the server is detecting that I am running Chrome under Katalon and it refuses to process my Chrome browser requests (errors out)! How do I run Chrome under Katalon so that the server would process all Chrome request as normal?

Thanks for your help.

Katalon Studio or Katalon Recorder?

In the ~4 years I’ve been using Katalon Studio and helping out here on the forum, I’ve never heard of that happening to anyone.

Please respond with MUCH more information. Include screenshots of code, errors and the HTML from the page you are trying to test. READ THIS - it might help.

Hi Russ,

Thank you very much for getting back to me. I am also sorry for taking so long to get back to you. 2 days ago, there was an emergency that required my attention.

I am using Katalon Studio. I created my test case with the “Record Web” button (see attached image)Screenshot 2021-01-23 115506 .

I am not at liberty to upload screen shots of my company’s user profile web application. However, you can duplicate the issue on most banking web app and stock brokerage web apps. If you try to capture the login process on, let say etrade, using Katalon Studio with Chrome you wouldn’t be able to. But if you try login using Chrome standalone there is no problem. I’ve tested this on Wells Fargo, Bank of America, Etrade, and Tdameritrade. They all had the same problem.

Thanks,
James

What happens if you try a different browser?

I got the same result.

What is the error?

There is no error. The web server just detects that I am using Katalon with Chrome and refuses my login request. It just send me back to the login page. But if I just use standalone Chome, I login with no problem.

Why don’t you just try it? Use Katalon Studio with Chrome and try login to etrade, tdameritrade, wellsfargo or bank of ameritrade web site.

Just to clarify, I expect the server is detecting that I am running Chrome under Katalon. What I want to know is what is Chrome under Katalon sending to the server that allow the server to detect Katalon? Furthermore, how can I run Katalon with Chrome as if I am running Chrome standalone so that everything works as normal?

Recent versions of Chrome display notification bar at the top of the browser saying “Chrome is being controlled by automated test software”. This means Chrome is aware that it is controlled by automation test software (e.g, Katalon) or not.

Possibly, JavaScript can refer to the state if it wants to. I guess, the JavaScript on the web pages of your Application Under Test refers to the state, and it intentionally informs the server of the status if the Chrome is running under automation software or not.

Some articles on web describe how to switch that status control off. The following article is one of them.

How about trying this status control off? You might be able to trick the Etrade and other stirict guys.

A working example:

import org.openqa.selenium.WebDriver
import org.openqa.selenium.chrome.ChromeDriver
import org.openqa.selenium.chrome.ChromeOptions

import com.kms.katalon.core.webui.driver.DriverFactory
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI


ChromeOptions options = new ChromeOptions()
options.setExperimentalOption("excludeSwitches", ["enable-automation"].toArray())

System.setProperty("webdriver.chrome.driver", DriverFactory.getChromeDriverPath())
WebDriver driver = new ChromeDriver(options)
DriverFactory.changeWebDriver(driver)
WebUI.navigateToUrl("http://demoaut-mimic.kazurayam.com/")
WebUI.delay(3)
WebUI.closeBrowser()

In this case, Chrome will NOT display notification bar saying “Chrome is being controlled by automated test software”.

1 Like