Skip to content

[Bug] Suddenly unable to click elements that are considered clickable by WebDriverWait #2085

Open
@jgfmachado

Description

@jgfmachado

Description

I'm suddenly facing issues with elements that fail to be clicked, while WebDriverWait considers them to be clickable.

Trying to click those elements with the WebElement .click() method, returns a detail message that reads,

An unknown server-side error occurred while processing the command. Original error: unknown error: Element <div class="c-button__title">...</div> is not clickable at point (566, 483). Other element would receive the click: <div class="c-button--active" style="border-radius: 0.25rem;"></div>
  (Session info: chrome=69.0.3497.100)
  (Driver info: chromedriver=2.44.609538 (b655c5a60b0b544917107a59d4153d4bf78e1b90),platform=Windows NT 10.0.19045 x86_64)

with a cause that reads

org.openqa.selenium.WebDriverException: An unknown server-side error occurred while processing the command. Original error: unknown error: Element <div class="c-button__title">...</div> is not clickable at point (566, 483). Other element would receive the click: <div class="c-button--active" style="border-radius: 0.25rem;"></div>
  (Session info: chrome=69.0.3497.100)
  (Driver info: chromedriver=2.44.609538 (b655c5a60b0b544917107a59d4153d4bf78e1b90),platform=Windows NT 10.0.19045 x86_64)
Build info: version: '4.16.1', revision: '9b4c83354e'
System info: os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '17.0.7'
Driver info: io.appium.java_client.android.AndroidDriver
Command: [a22d7629-65b6-4c7c-86b6-132436a6c1e9, clickElement {id=0.7700422711264372-27}]
Capabilities {appium:appActivity: <omitted>, appium:appPackage: <omitted>, appium:autoGrantPermissions: true, appium:automationName: UIAutomator2, appium:databaseEnabled: false, appium:desired: {appActivity: <omitted>, appPackage: <omitted>, autoGrantPermissions: true, automationName: UIAutomator2, newCommandTimeout: 3600, platformName: ANDROID, udid: emulator-5554, uiautomator2ServerInstallTimeout: 60000}, appium:deviceApiLevel: 28, appium:deviceManufacturer: Google, appium:deviceModel: AOSP on IA Emulator, appium:deviceName: emulator-5554, appium:deviceScreenDensity: 160, appium:deviceScreenSize: 1280x800, appium:deviceUDID: emulator-5554, appium:javascriptEnabled: true, appium:locationContextEnabled: false, appium:networkConnectionEnabled: true, appium:newCommandTimeout: 3600, appium:pixelRatio: 1, appium:platformVersion: 9, appium:statBarHeight: 24, appium:takesScreenshot: true, appium:udid: emulator-5554, appium:uiautomator2ServerInstallTimeout: 60000, appium:viewportRect: {height: 728, left: 0, top: 24, width: 1280}, appium:warnings: {}, appium:webStorageEnabled: false, platformName: ANDROID}
Element: [[AndroidDriver:  on ANDROID (a22d7629-65b6-4c7c-86b6-132436a6c1e9)] -> xpath: //div[@class='c-button__title' and text()='Apply All']]
Session ID: a22d7629-65b6-4c7c-86b6-132436a6c1e9

Note that it didn't throw the expected ElementNotInteractableException exception.

Trying to instead click them through the Actions .click(WebElement target) method , I get,
Request failed with status code 501
with,

org.openqa.selenium.WebDriverException: Request failed with status code 501
Build info: version: '4.16.1', revision: '9b4c83354e'
System info: os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '17.0.7'
Driver info: io.appium.java_client.android.AndroidDriver
Command: [a22d7629-65b6-4c7c-86b6-132436a6c1e9, actions {actions=[org.openqa.selenium.interactions.Sequence@870a9f2]}]
Capabilities {appium:appActivity: com.eposnow.till.MainActivity, appium:appPackage: com.eposnow.till, appium:autoGrantPermissions: true, appium:automationName: UIAutomator2, appium:databaseEnabled: false, appium:desired: {appActivity: com.eposnow.till.MainActivity, appPackage: com.eposnow.till, autoGrantPermissions: true, automationName: UIAutomator2, newCommandTimeout: 3600, platformName: ANDROID, udid: emulator-5554, uiautomator2ServerInstallTimeout: 60000}, appium:deviceApiLevel: 28, appium:deviceManufacturer: Google, appium:deviceModel: AOSP on IA Emulator, appium:deviceName: emulator-5554, appium:deviceScreenDensity: 160, appium:deviceScreenSize: 1280x800, appium:deviceUDID: emulator-5554, appium:javascriptEnabled: true, appium:locationContextEnabled: false, appium:networkConnectionEnabled: true, appium:newCommandTimeout: 3600, appium:pixelRatio: 1, appium:platformVersion: 9, appium:statBarHeight: 24, appium:takesScreenshot: true, appium:udid: emulator-5554, appium:uiautomator2ServerInstallTimeout: 60000, appium:viewportRect: {height: 728, left: 0, top: 24, width: 1280}, appium:warnings: {}, appium:webStorageEnabled: false, platformName: ANDROID}
Session ID: a22d7629-65b6-4c7c-86b6-132436a6c1e9

If the same script is executed through ChromeDriver on Chrome Browser, I get the ElementNotInteractableException exception instead, and I am able to click it through the Actions class. That's why I suspected it was something with Appium.

Environment

  • Java 17
  • Appium 2.2.3
  • Windows 10
  • Node.js 18.13.0
  • Android 9
  • Reproducible on both physical pevice and pmulator

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions