This is an automated email from the ASF dual-hosted git repository.

brusdev pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/artemis.git


The following commit(s) were added to refs/heads/main by this push:
     new e8f6cb237d ARTEMIS-5906 Fix console smoke tests on Firefox
e8f6cb237d is described below

commit e8f6cb237dacbea530e13ac1de12c0f59d040a28
Author: Domenico Francesco Bruscino <[email protected]>
AuthorDate: Thu Feb 19 15:21:03 2026 +0100

    ARTEMIS-5906 Fix console smoke tests on Firefox
    
    Firefox (GeckoDriver) strictly enforces that elements must be within
    the viewport before performing an Actions sequence. A simple .click()
    is more robust because the driver handles the scrolling logic
    internally.
---
 .../tests/smoke/console/pages/ArtemisPage.java     | 46 ++++++----------------
 .../tests/smoke/console/pages/LoginPage.java       |  4 +-
 .../tests/smoke/console/pages/QueuePage.java       |  4 +-
 .../tests/smoke/console/pages/QueuesPage.java      |  8 ++--
 .../tests/smoke/console/pages/SendMessagePage.java | 12 ++----
 .../smoke/console/pages/jmx/ArtemisTreePage.java   | 10 ++---
 .../smoke/console/pages/jmx/AttributesPage.java    |  4 +-
 7 files changed, 26 insertions(+), 62 deletions(-)

diff --git 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/ArtemisPage.java
 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/ArtemisPage.java
index 8877fc1346..5e090301a5 100644
--- 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/ArtemisPage.java
+++ 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/ArtemisPage.java
@@ -25,7 +25,6 @@ import org.openqa.selenium.By;
 import org.openqa.selenium.JavascriptExecutor;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
-import org.openqa.selenium.interactions.Actions;
 
 import static 
org.apache.activemq.artemis.tests.smoke.console.PageConstants.ADDRESSES_TAB;
 import static 
org.apache.activemq.artemis.tests.smoke.console.PageConstants.ALERT_LOCATOR;
@@ -57,17 +56,14 @@ public abstract class ArtemisPage extends ConsolePage {
       WebElement userDropdownMenuWebElement = 
driver.findElement(USER_DROPDOWN_MENU_LOCATOR);
 
       if (!logoutWebElement.isDisplayed()) {
-         Actions actions = new Actions(driver);
-         actions.moveToElement(userDropdownMenuWebElement).click().perform();
+         userDropdownMenuWebElement.click();
       }
 
       String logoutText = logoutWebElement.getText();
       Pattern pattern = Pattern.compile("Logout \\(([^\\)]+)\\)");
       Matcher matcher = pattern.matcher(logoutText);
 
-      Actions actions = new Actions(driver);
-
-      actions.moveToElement(userDropdownMenuWebElement).click().perform();
+      userDropdownMenuWebElement.click();
 
       if (matcher.find()) {
          return matcher.group(1);
@@ -79,9 +75,7 @@ public abstract class ArtemisPage extends ConsolePage {
    public AddressesPage getAddressesPage(int timeout) {
       WebElement queuesMenuItem = driver.findElement(ADDRESSES_TAB);
 
-      Actions actions = new Actions(driver);
-
-      actions.moveToElement(queuesMenuItem).click().perform();
+      queuesMenuItem.click();
 
       return new AddressesPage(driver);
    }
@@ -89,8 +83,7 @@ public abstract class ArtemisPage extends ConsolePage {
    public SendMessagePage getAddressSendMessagePage(String address, int 
timeout) {
       refresh(timeout);
       WebElement element = driver.findElement(ADDRESSES_TAB);
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
       List<WebElement> tdElements = 
driver.findElement(DATA_TABLE).findElement(By.xpath("//tr/td[contains(text(), 
'" + address + 
"')]")).findElement(By.xpath("./..")).findElements(TD_TAG_LOCATOR);
 
       tdElements.get(tdElements.size() - 
1).findElement(BUTTON_LOCATOR).click();
@@ -106,8 +99,7 @@ public abstract class ArtemisPage extends ConsolePage {
    public SendMessagePage getQueueSendMessagePage(String queue, int timeout) {
       refresh(timeout);
       WebElement element = driver.findElement(QUEUES_TAB);
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
       List<WebElement> tdElements = 
driver.findElement(DATA_TABLE).findElement(By.xpath("//tr/td/a[contains(text(), 
'" + queue + 
"')]")).findElement(By.xpath("./../..")).findElements(By.tagName("td"));
 
       tdElements.get(tdElements.size() - 
1).findElement(BUTTON_LOCATOR).click();
@@ -122,9 +114,7 @@ public abstract class ArtemisPage extends ConsolePage {
    public QueuesPage getQueuesPage(int timeout) {
       WebElement queuesMenuItem = driver.findElement(QUEUES_TAB);
 
-      Actions actions = new Actions(driver);
-
-      actions.moveToElement(queuesMenuItem).click().perform();
+      queuesMenuItem.click();
 
       waitForElementToBeVisible(QUEUES_TAB_SELECTED, timeout);
 
@@ -148,9 +138,7 @@ public abstract class ArtemisPage extends ConsolePage {
    public QueuesPage getQueuesPageFromMessageView(int timeout) {
       WebElement queuesMenuItem = 
driver.findElement(MESSAGE_VIEW_QUEUES_BUTTON);
 
-      Actions actions = new Actions(driver);
-
-      actions.moveToElement(queuesMenuItem).click().perform();
+      queuesMenuItem.click();
 
       waitForElementToBeVisible(QUEUES_TAB_SELECTED, timeout);
 
@@ -160,9 +148,7 @@ public abstract class ArtemisPage extends ConsolePage {
    public QueuesPage getQueuesPageFromMessagesView(int timeout) {
       WebElement queuesMenuItem = 
driver.findElement(MESSAGE_TABLE_QUEUES_BUTTON);
 
-      Actions actions = new Actions(driver);
-
-      actions.moveToElement(queuesMenuItem).click().perform();
+      queuesMenuItem.click();
 
       waitForElementToBeVisible(QUEUES_TAB_SELECTED, timeout);
 
@@ -171,30 +157,24 @@ public abstract class ArtemisPage extends ConsolePage {
 
    public LoginPage logout(int timeout) {
       WebElement logoutWebElement = 
driver.findElement(LOGOUT_DROPDOWN_LOCATOR);
-      Actions actions = new Actions(driver);
 
-      actions.moveToElement(logoutWebElement).click().perform();
+      logoutWebElement.click();
       WebElement userDropdownMenuWebElement = 
logoutWebElement.findElement(LOGOUT_MENU_ITEM_LOCATOR);
 
-      actions = new Actions(driver);
-
-      actions.moveToElement(userDropdownMenuWebElement).click().perform();
+      userDropdownMenuWebElement.click();
 
       return new LoginPage(driver);
    }
 
    public void enableColumn(String columnId) {
       WebElement element = driver.findElement(MANAGE_COLUMNS_BUTTON);
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
 
       element = driver.findElement(By.id("check-" + columnId));
-      actions = new Actions(driver);
 
-      actions.moveToElement(element).click().perform();
+      element.click();
       element = driver.findElement(SAVE_BUTTON);
-      actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
    }
 
    public Object postJolokiaExecRequest(String mbean, String operation, String 
arguments) {
diff --git 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/LoginPage.java
 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/LoginPage.java
index 575d9c2c93..1a50d5e115 100644
--- 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/LoginPage.java
+++ 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/LoginPage.java
@@ -19,7 +19,6 @@ package org.apache.activemq.artemis.tests.smoke.console.pages;
 import org.openqa.selenium.By;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
-import org.openqa.selenium.interactions.Actions;
 
 import static 
org.apache.activemq.artemis.tests.smoke.console.PageConstants.BRAND_LOCATOR;
 import static 
org.apache.activemq.artemis.tests.smoke.console.PageConstants.LOGIN_BUTTON_LOCATOR;
@@ -46,8 +45,7 @@ public class LoginPage extends ConsolePage {
       driver.findElement(USERNAME_LOCATOR).sendKeys(username);
       driver.findElement(PASSWORD_LOCATOR).sendKeys(password);
       WebElement element = driver.findElement(LOGIN_BUTTON_LOCATOR);
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
       waitForElementToBeVisible(LOGOUT_DROPDOWN_LOCATOR, timeout);
       
waitForElementToBeVisible(By.xpath("//button/span[contains(text(),'Status')]"), 
timeout);
 
diff --git 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/QueuePage.java
 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/QueuePage.java
index fca2c56182..b2dcb80307 100644
--- 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/QueuePage.java
+++ 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/QueuePage.java
@@ -19,7 +19,6 @@ package org.apache.activemq.artemis.tests.smoke.console.pages;
 import org.openqa.selenium.By;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
-import org.openqa.selenium.interactions.Actions;
 
 import static 
org.apache.activemq.artemis.tests.smoke.console.PageConstants.A_TAG_LOCATOR;
 import static 
org.apache.activemq.artemis.tests.smoke.console.PageConstants.COLUMN_MESSAGE_ID;
@@ -39,8 +38,7 @@ public class QueuePage extends ArtemisPage {
    public MessagePage getMessagePage(int index, int timeout) {
       int col = getIndexOfColumn(COLUMN_MESSAGE_ID);
       WebElement element = 
driver.findElement(TABLE_TAG_LOCATOR).findElements(TD_TAG_LOCATOR).get(col).findElement(A_TAG_LOCATOR);
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
       waitForElementToBeVisible(VIEW_MESSAGE_TITLE_LOCATOR, timeout);
 
       return new MessagePage(driver);
diff --git 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/QueuesPage.java
 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/QueuesPage.java
index 0e98df9a98..adb8111311 100644
--- 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/QueuesPage.java
+++ 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/QueuesPage.java
@@ -19,7 +19,6 @@ package org.apache.activemq.artemis.tests.smoke.console.pages;
 import org.openqa.selenium.By;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
-import org.openqa.selenium.interactions.Actions;
 
 public class QueuesPage extends ArtemisPage {
    private static final String MESSAGE_COUNT_COLUMN_NAME = "Message Count";
@@ -36,8 +35,7 @@ public class QueuesPage extends ArtemisPage {
       WebElement messagesCountWebElement = 
queueRowWebElement.findElements(By.tagName("td"))
          
.get(getIndexOfColumn(MESSAGE_COUNT_COLUMN_NAME)).findElement(By.tagName("a"));
 
-      Actions actions = new Actions(driver);
-      actions.moveToElement(messagesCountWebElement).click().perform();
+      messagesCountWebElement.click();
       waitForElementToBeVisible(QUEUES_PAGE_TITLE, timeout);
 
       return new QueuePage(driver);
@@ -63,7 +61,7 @@ public class QueuesPage extends ArtemisPage {
 
    public boolean searchQueues(String queueNameInResults) {
       WebElement element = driver.findElement(SEARCH_BUTTON_LOCATOR);
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();      return 
countQueue(queueNameInResults) == 1;
+      element.click();
+      return countQueue(queueNameInResults) == 1;
    }
 }
diff --git 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/SendMessagePage.java
 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/SendMessagePage.java
index 00b4947a56..cff3d8e5a9 100644
--- 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/SendMessagePage.java
+++ 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/SendMessagePage.java
@@ -50,16 +50,14 @@ public class SendMessagePage extends ArtemisPage {
    public void selectUseCurrentLogonUser() {
       if (!isUseCurrentLogonUserSelected()) {
          WebElement element = driver.findElement(USE_LOGIN_LOCATOR);
-         Actions actions = new Actions(driver);
-         actions.moveToElement(element).click().perform();
+         element.click();
       }
    }
 
    public void unselectUseCurrentLogonUser() {
       if (isUseCurrentLogonUserSelected()) {
          WebElement element = driver.findElement(USE_LOGIN_LOCATOR);
-         Actions actions = new Actions(driver);
-         actions.moveToElement(element).click().perform();
+         element.click();
       }
    }
 
@@ -76,10 +74,8 @@ public class SendMessagePage extends ArtemisPage {
 
    public void sendMessage() {
       WebElement element = 
driver.findElement(By.xpath("//button[contains(text(),'Send')]"));
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
       element = 
driver.findElement(By.xpath("//button[contains(text(),'Cancel')]"));
-      actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
    }
 }
diff --git 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/jmx/ArtemisTreePage.java
 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/jmx/ArtemisTreePage.java
index 7a7b9ae10e..37872b86c2 100644
--- 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/jmx/ArtemisTreePage.java
+++ 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/jmx/ArtemisTreePage.java
@@ -19,7 +19,6 @@ package 
org.apache.activemq.artemis.tests.smoke.console.pages.jmx;
 import org.apache.activemq.artemis.tests.smoke.console.pages.ConsolePage;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
-import org.openqa.selenium.interactions.Actions;
 
 import static 
org.apache.activemq.artemis.tests.smoke.console.PageConstants.BROKER_NODE_LOCATOR;
 import static 
org.apache.activemq.artemis.tests.smoke.console.PageConstants.BROKER_BUTTON_LOCATOR;
@@ -37,8 +36,7 @@ public class ArtemisTreePage extends ConsolePage {
    public void expandTree(int timeout) {
       waitForElementToBeVisible(EXPAND_BUTTON, timeout);
       WebElement element = driver.findElement(EXPAND_BUTTON);
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
       waitForElementToBeVisible(COLLAPSE_BUTTON, timeout);
    }
 
@@ -46,8 +44,7 @@ public class ArtemisTreePage extends ConsolePage {
    public void collapseTree(int timeout) {
       waitForElementToBeVisible(COLLAPSE_BUTTON, timeout);
       WebElement element = driver.findElement(COLLAPSE_BUTTON);
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
       waitForElementToBeVisible(EXPAND_BUTTON, timeout);
    }
 
@@ -57,8 +54,7 @@ public class ArtemisTreePage extends ConsolePage {
 
    public AttributesPage selectBrokerNode() {
       WebElement element = 
driver.findElement(BROKER_NODE_LOCATOR).findElement(BROKER_BUTTON_LOCATOR);
-      Actions actions = new Actions(driver);
-      actions.moveToElement(element).click().perform();
+      element.click();
       return new AttributesPage(driver);
    }
 }
diff --git 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/jmx/AttributesPage.java
 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/jmx/AttributesPage.java
index 16f978d4f6..2b4bf66e7f 100644
--- 
a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/jmx/AttributesPage.java
+++ 
b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/console/pages/jmx/AttributesPage.java
@@ -19,7 +19,6 @@ package 
org.apache.activemq.artemis.tests.smoke.console.pages.jmx;
 import org.openqa.selenium.JavascriptExecutor;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
-import org.openqa.selenium.interactions.Actions;
 
 import java.util.Iterator;
 import java.util.List;
@@ -42,8 +41,7 @@ public class AttributesPage extends ArtemisTreePage {
          List<WebElement> cols = row.findElements(TD_TAG_LOCATOR);
          if (cols.size() == 2 && name.equals(cols.get(0).getText())) {
             ((JavascriptExecutor) 
driver).executeScript("arguments[0].scrollIntoView();", cols.get(0));
-            Actions actions = new Actions(driver);
-            actions.moveToElement(cols.get(0)).click().perform();
+            cols.get(0).click();
             break;
          }
       }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to