diff --git a/src/org/labkey/test/components/domain/BaseDomainDesigner.java b/src/org/labkey/test/components/domain/BaseDomainDesigner.java index 63010e6828..5266101e72 100644 --- a/src/org/labkey/test/components/domain/BaseDomainDesigner.java +++ b/src/org/labkey/test/components/domain/BaseDomainDesigner.java @@ -4,6 +4,7 @@ import org.labkey.test.Locator; import org.labkey.test.components.Component; import org.labkey.test.components.WebDriverComponent; +import org.labkey.test.util.selenium.ScrollUtils; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; @@ -66,7 +67,8 @@ public boolean isSaveButtonEnabled() */ public Object clickSave() { - getWrapper().clickAndWait(elementCache().saveButton); + // Selenium sometimes doesn't think the save button needs to be scrolled into view but the click does nothing. + getWrapper().clickAndWait(ScrollUtils.scrollIntoView(elementCache().saveButton)); return null; } diff --git a/src/org/labkey/test/components/ui/domainproperties/EntityTypeDesigner.java b/src/org/labkey/test/components/ui/domainproperties/EntityTypeDesigner.java index 497b004857..6308060144 100644 --- a/src/org/labkey/test/components/ui/domainproperties/EntityTypeDesigner.java +++ b/src/org/labkey/test/components/ui/domainproperties/EntityTypeDesigner.java @@ -122,6 +122,12 @@ public T setNameExpression(String nameExpression) { expandPropertiesPanel(); elementCache().nameExpressionInput.set(nameExpression); + if (nameExpression.contains("${genId}")) + { + // Wait for genId banner to avoid interfering with subsequent steps by shifting the page layout + // Non-fatal to let specific tests check for this + var _ = WebDriverWrapper.waitFor(this::isGenIdVisible, 1_000); + } return getThis(); }