unknown error: Element is not clickable at point (566, 128)

I resized the browser & katalon fails to click on the object. Are clicks on elements is always analog & its identified by the co-ordinates? Is there a way i can disable the analog detection of my objects on the web page?

I want the object to be identified with my id & not by relative positions.

Here is the line that fails everytime i resize the window &/or run my scripts in a machine with a different screen resolution

WebUI.click(findTestObject(‘Applicant/Workspace_OR/btn_SaveNote’))

1 Like

I am having the same issue, the button is on the screen. I have a wait for present and wait for clickable which both pass but still says it’s unclickable at point. I have just added scroll after wait for present and still same issue. I dont’ understand why this one element cannot be clicked.

Hi deepthi,

The web objects in Katalon (and Selenium) is identified by locators (id for example) and not by relative positions.

In your cases, the object is identified but cannot be clicked, maybe because it is off-screen.

To workaround this, you can try the keyword Scroll To Element to scroll to that element first before clicking.

2 Likes

Hi,
I have the same issue on Jenkins (System user) and on Chrome only. Setting Desired capabilities or maximizing windows does not take effect. Using “Scroll To Element” adds hundreds of code lines to already developed scripts isn’t good solution to the issue. It is not only scroll down; right aligned elements out of-screen as well. Please suggest better solution.

Hi there,

This is a known issue, so you should click on the element using javascript when you can’t do normal click. This should be enclosed in a custom keyword, so below is a sample of its:

import org.openqa.selenium.JavascriptExecutor
import org.openqa.selenium.WebDriver
import org.openqa.selenium.WebElement

import com.kms.katalon.core.annotation.Keyword
import com.kms.katalon.core.testobject.TestObject as TestObject
import com.kms.katalon.core.webui.common.WebUiCommonHelper
import com.kms.katalon.core.webui.driver.DriverFactory
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI

@Keyword
def clickUsingJS(TestObject to, int timeout) {

	try {
		WebUI.click(to)
	}
	catch (Exception e) {
		WebDriver driver = DriverFactory.getWebDriver()
		WebElement element = WebUiCommonHelper.findWebElement(to, timeout)
		JavascriptExecutor executor = ((driver) as JavascriptExecutor)
		executor.executeScript('arguments[0].click()', element)
	}
	throw(e)
}
3 Likes

Ah you don’t need above code. chromedriver 2.32 has applied this fix on Chrome 61+, so please:

  1. Update your Chrome browser to 61+
  2. Download chromedriver 2.32 : https://sites.google.com/a/chromium.org/chromedriver/downloads and then replace existing chromedriver of Katalon Studio, e.g: C:\Katalon_Studio_4.8\configuration\resources\drivers\chromedriver
1 Like

Hi Vinh, i tried, click does not work with the latest chrome driver.

Updated to chromedriver 2.32 as suggested by Vinh and works fine now. Thanks

it doesn’t work for me.

Hi there,

There are two possible solutions provided above:

  1. Use chromedriver 2.32
  2. Create a new custom keyword to execute click method using Javascript.

Please try one of them

Updating chromedriver solved the issue for me.

Thank you. I added the scroll to element & the issue is resolved. Is it possible to update the click keyword in the upcoming releases to include this scenario? Coz, my code now has to include the scroll to element before each click statement?

1 Like

Use chrome headless mode and set a large enough window size.

Because headless mode chrome render webpage in memory, it is not restricted to the physical screen. So you can set as large window size as you can.

I have the same issue where an element is present but it does not get clickable. If I run from current step it works.

Can I get the location on a Mac on where to replace the chromedriver? Thanks!

I had the same problem. I solved it by adding a delay (2-5 sec.) before the step that was failing.

Thanks Adrian, i solved my issue after adding a delay(5).

Hi - my colleague suggested I change my screen resolution down.
I was using a high Res but when I changed to 1366 x 768, suddenly elements were clickable.
Note that they WERE visible and could be identified using Focus for example, but Click consistently failed.
I did not have time to replace Click with JavaScript version… luckily the display change fixed it. Unsure if the Res above is a strict requirement but worth a try.

After updating chromedriver didn’t solve the issue for me I tried adding delays before each click and that did the trick.

Setting the project default Delay between actions also worked, but slows things down significantly.

Updating the driver worked for me …

2 Likes

Hanh Tran said:

Hi there,

This is a known issue, so you should click on the element using javascript when you can’t do normal click. This should be enclosed in a custom keyword, so below is a sample of its:

import org.openqa.selenium.JavascriptExecutorimport org.openqa.selenium.WebDriverimport org.openqa.selenium.WebElementimport com.kms.katalon.core.annotation.Keywordimport com.kms.katalon.core.testobject.TestObject as TestObjectimport com.kms.katalon.core.webui.common.WebUiCommonHelperimport com.kms.katalon.core.webui.driver.DriverFactoryimport com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI@Keyworddef clickUsingJS(TestObject to, int timeout) {    try {        WebUI.click(to)    }    catch (Exception e) {        WebDriver driver = DriverFactory.getWebDriver()        WebElement element = WebUiCommonHelper.findWebElement(to, timeout)        JavascriptExecutor executor = ((driver) as JavascriptExecutor)        executor.executeScript('arguments[0].click()', element)    }    throw(e)}

@Hanh Tran

This test case passed for me after using the custom keyword.

However the log viewer shows that the keyword failed. I have attached the error message for reference. Kindly help.

@Vinh @Russ @kazurayam… any help on this would be appreciated.

Thanks

Error.txt