diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/infra/webdriver/WidgetContext.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/infra/webdriver/WidgetContext.java index f520d771c13222cc630020b9f79dc4ed1e4bb871..50da9ad351aaf88d014b6eb800b43fc18d8de6fc 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/infra/webdriver/WidgetContext.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/infra/webdriver/WidgetContext.java @@ -43,6 +43,11 @@ public class WidgetContext element.click(); } + public boolean isInteractable() + { + return element.isDisplayed() && element.isEnabled(); + } + public String getAttribute(String key) { return element.getAttribute(key); diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SampleTypeTest.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SampleTypeTest.java index b6718c197f4bdb46b68e8216c9d6686150a7c239..0a1cae216761b7ef25d1decbd400b0f43ef8903d 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SampleTypeTest.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SampleTypeTest.java @@ -57,7 +57,7 @@ public class SampleTypeTest extends SeleniumTest assertThat(sampleBrowser(), doesNotShowInToolBar(sampleType)); } - @Test(enabled = false) + @Test public void changingSampleTypeToBeListableMakesItVisibleInSampleBrowserDropDownMenu() { SampleType sampleType = create(aSampleType().thatIsNotListable()); diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SeleniumTest.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SeleniumTest.java index 53f00be5167a2bb4c6e27672db888d2b284afe2c..c4e56016f368d8f08505995f5f29ea043b488a9f 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SeleniumTest.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SeleniumTest.java @@ -18,12 +18,14 @@ package ch.systemsx.cisd.openbis.uitest.suite; import static org.hamcrest.CoreMatchers.not; +import java.awt.Toolkit; import java.io.File; import java.io.IOException; import java.lang.reflect.Method; import java.util.concurrent.TimeUnit; import org.hamcrest.Matcher; +import org.openqa.selenium.Dimension; import org.openqa.selenium.TakesScreenshot; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; @@ -89,7 +91,7 @@ import ch.systemsx.cisd.openbis.uitest.type.VocabularyBuilder; public abstract class SeleniumTest { - public static int IMPLICIT_WAIT = 20; + public static int IMPLICIT_WAIT = 30; public static String ADMIN_USER = "selenium"; @@ -105,7 +107,7 @@ public abstract class SeleniumTest protected GuiApplicationRunner openbis; - private ApplicationRunner openbisApi; + private static ApplicationRunner openbisApi; @BeforeSuite public void initWebDriver() throws Exception @@ -144,6 +146,13 @@ public abstract class SeleniumTest setImplicitWaitToDefault(); delete(new File("targets/dist")); driver.manage().deleteAllCookies(); + + Toolkit toolkit = Toolkit.getDefaultToolkit(); + Dimension screenResolution = + new Dimension((int) toolkit.getScreenSize().getWidth(), (int) toolkit + .getScreenSize().getHeight()); + driver.manage().window().setSize(screenResolution); + driver.get(startPage); uid = new DictionaryUidGenerator(new File("resource/corncob_lowercase.txt")); diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/DropDown.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/DropDown.java index 72fd3dbaa96446d920e10d35a39c842de5a7fdf6..e777021d776b2886194c6900e5ee8727be38eaea 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/DropDown.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/DropDown.java @@ -74,7 +74,14 @@ public class DropDown implements AtomicWidget, Fillable private List<WebElement> getChoiceElements() { context.click(); - return SeleniumTest.driver.findElements(By.className("x-combo-list-item")); + List<WebElement> wlist = + SeleniumTest.driver.findElements(By.className("x-combo-list-item")); + if (wlist.size() == 0) + { + System.out.println("dropdown retry"); + return getChoiceElements(); + } + return wlist; } @Override diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/Text.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/Text.java index 625a3d5e6bb08d056f87fd9beeee7f46cae32b2e..b707344d499a7f2dc604633289f3706e0360b01c 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/Text.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/Text.java @@ -18,7 +18,6 @@ package ch.systemsx.cisd.openbis.uitest.widget; import ch.systemsx.cisd.openbis.uitest.infra.webdriver.WidgetContext; - /** * @author anttil */ @@ -39,6 +38,20 @@ public class Text implements AtomicWidget, Fillable public void append(String text) { + if (context.isInteractable() == false) + { + System.out.println("text retry"); + try + { + Thread.sleep(500); + } catch (InterruptedException ex) + { + // TODO Auto-generated catch block + ex.printStackTrace(); + } + append(text); + return; + } context.sendKeys(text); }