Package com.thoughtworks.selenium

Examples of com.thoughtworks.selenium.Selenium

  • link=textPattern: Select the link (anchor) element which contains text matching the specified pattern.
  • css=cssSelectorSyntax: Select the element using css selectors. Please refer to CSS2 selectors, CSS3 selectors for more information. You can also check the TestCssLocators test in the selenium test suite for an example of usage, which is included in the downloaded selenium core package.

    Currently the css selector locator supports all css1, css2 and css3 selectors except namespace in css3, some pseudo classes(:nth-of-type, :nth-last-of-type, :first-of-type, :last-of-type, :only-of-type, :visited, :hover, :active, :focus, :indeterminate) and pseudo elements(::first-line, ::first-letter, ::selection, ::before, ::after).

  • Without an explicit locator prefix, Selenium uses the following default strategies:

    Element Filters

    Element filters can be used with a locator to refine a list of candidate elements. They are currently used only in the 'name' element-locator.

    Filters look much like locators, ie.

    filterType=argument

    Supported element-filters are:

    value=valuePattern

    Matches elements based on their values. This is particularly useful for refining a list of similarly-named toggle-buttons.

    index=index

    Selects a single element based on its position in the list (offset from zero).

    String-match Patterns

    Various Pattern syntaxes are available for matching string values:

    If no pattern prefix is specified, Selenium assumes that it's a "glob" pattern.

    For commands that return multiple values (such as verifySelectOptions), the string being matched is a comma-separated list of the return values, where both commas and backslashes in the values are backslash-escaped. When providing a pattern, the optional matching syntax (i.e. glob, regexp, etc.) is specified once, as usual, at the beginning of the pattern.


        //todo: uncomment when the  JSFC-3629 is fixed
        @Ignore
         @Test
        public void _testAjaxTabbedPaneInsideAjaxTabbedPane() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/tabbedpane/tabbedPaneIn.jsf");

            assertTrue(selenium.isElementPresent("fn:firstItem"));
            assertTrue(selenium.isVisible("fn:firstItem"));
            assertFalse(selenium.isElementPresent("fn:secondItem"));

            assertTrue(selenium.getText("fn:firstHeader").equals("First tab"));
            assertTrue(selenium.getText("fn:secondHeader").equals("Second tab"));
            assertTrue(selenium.getText("fn:firstItem_firstHeader").equals("First tab"));
            assertTrue(selenium.getText("fn:firstItem_secondHeader").equals("Second tab"));
            assertTrue(selenium.getText("fn:firstItem_firstContent").equals("Some text on the first tab"));
            selenium.click("fn:firstItem_secondHeader");
            OpenFacesAjaxLoadingMode.getInstance().waitForLoad();
            assertTrue(selenium.getText("fn:firstItem_secondContent").equals("Some text on the second tab"));

            selenium.click("fn:secondHeader");
            OpenFacesAjaxLoadingMode.getInstance().waitForLoad();
            assertTrue(selenium.isElementPresent("fn:secondItem"));
            assertTrue(selenium.isVisible("fn:secondItem"));
            assertTrue(selenium.getText("fn:secondItem_firstHeader").equals("First tab"));
            assertTrue(selenium.getText("fn:secondItem_secondHeader").equals("Second tab"));
            assertTrue(selenium.getText("fn:secondItem_firstContent").equals("Some text on the first tab"));
            selenium.click("fn:secondItem_secondHeader");
            OpenFacesAjaxLoadingMode.getInstance().waitForLoad();
            assertTrue(selenium.getText("fn:secondItem_secondContent").equals("Some text on the second tab"));
        }
    View Full Code Here


    * @author Darya Shumilina
    */
    public class DropDownClientSideEvents extends OpenFacesTestCase {
         @Test
        public void testDropDownEvents() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/dropdown/dropDown.jsf");

            DropDownFieldInspector keypressField = dropDownField("formID:keypressID");
            // onkeypress
            keypressField.field().keyPress(KeyEvent.VK_Z);

            assertTrue(selenium.isTextPresent("onkeypress works"));
            assertTrue(selenium.isTextPresent("keypress"));

            // onclick
            element("formID:clickID").click();
            assertTrue(selenium.isTextPresent("onclick works"));
            assertTrue(selenium.isTextPresent("click"));

            // ondblclick
            element("formID:doubleclickID").doubleClick();
            assertTrue(selenium.isTextPresent("ondblclick works"));
            assertTrue(selenium.isTextPresent("dblclick"));

            // onmousedown
            element("formID:mousedownID").mouseDown();
            assertTrue(selenium.isTextPresent("onmousedown works"));
            assertTrue(selenium.isTextPresent("mousedown"));

            // onmouseover
            element("formID:mouseoverID").mouseOver();
            assertTrue(selenium.isTextPresent("onmouseover works"));
            assertTrue(selenium.isTextPresent("mouseover"));

            // onmouseup
            element("formID:mouseupID").mouseUp();
            assertTrue(selenium.isTextPresent("onmouseup works"));
            assertTrue(selenium.isTextPresent("mouseup"));

            // onmouseout
            element("formID:mouseoutID").mouseOut();
            assertTrue(selenium.isTextPresent("onmouseout works"));
            assertTrue(selenium.isTextPresent("mouseout"));

            // onmousemove
            element("formID:mousemoveID").mouseMove();
            assertTrue(selenium.isTextPresent("onmousemove works"));
            assertTrue(selenium.isTextPresent("mousemove"));

            //todo: uncomment if JSFC-1431 is fixed

            // onchange
            DropDownFieldInspector changeField = dropDownField("formID:changeID");
            changeField.field().type("Red");
            sleep(100);
            assertTrue(selenium.isTextPresent("onchange works"));
            assertTrue(selenium.isTextPresent("change"));

            // onfocus
            sleep(100);
            assertTrue(selenium.isTextPresent("onfocus works"));
            assertTrue(selenium.isTextPresent("focus"));

            // onblur
            DropDownFieldInspector keyDownField = dropDownField("formID:keydownID");
            sleep(100);
            assertTrue(selenium.isTextPresent("onblur works"));
            assertTrue(selenium.isTextPresent("blur"));

            // onkeydown
            keyDownField.field().keyDown(KeyEvent.VK_Z);
            assertTrue(selenium.isTextPresent("onkeydown works"));
            assertTrue(selenium.isTextPresent("keydown"));

            // onkeyup
            DropDownFieldInspector keyupField = dropDownField("formID:keyupID");
            keyupField.field().keyUp(KeyEvent.VK_Z);
            assertTrue(selenium.isTextPresent("onkeyup works"));
            assertTrue(selenium.isTextPresent("keyup"));

            //todo: uncomment it if JSFC-1436 is fixed
    /*    // ondropdown
        selenium.click("formID:dropdownID" + BUTTON_SUFFIX);
        assertTrue(selenium.isVisible("formID:dropdownID--popup"));
    View Full Code Here

    * @author Darya Shumilina
    */
    public class TabSetClientSideEvents extends OpenFacesTestCase {
         @Test
        public void testTabSetClientSideEvents() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/tabset/tabSet.jsf");

            //onclick
            element("test_form:onclickTabSetID").click();
            assertTrue(selenium.isTextPresent("onclick works"));
            assertTrue(selenium.isTextPresent("click"));

            //ondblclick
            element("test_form:ondblclickTabSetID").doubleClick();
            assertTrue(selenium.isTextPresent("ondblclick works"));
            assertTrue(selenium.isTextPresent("dblclick"));

            //onmousedown
            element("test_form:onmousedownTabSetID").mouseDown();
            assertTrue(selenium.isTextPresent("onmousedown works"));
            assertTrue(selenium.isTextPresent("mousedown"));

            //onmouseover
            element("test_form:onmouseoverTabSetID").mouseOver();
            assertTrue(selenium.isTextPresent("onmouseover works"));
            assertTrue(selenium.isTextPresent("mouseover"));

            //onmouseup
            element("test_form:onmouseupTabSetID").mouseUp();
            assertTrue(selenium.isTextPresent("onmouseup works"));
            assertTrue(selenium.isTextPresent("mouseup"));

            //onmouseout
            element("test_form:onmouseoutTabSetID").mouseOut();
            assertTrue(selenium.isTextPresent("onmouseout works"));
            assertTrue(selenium.isTextPresent("mouseout"));

            //onmousemove
            element("test_form:onmousemoveTabSetID").mouseMove();
            assertTrue(selenium.isTextPresent("onmousemove works"));
            assertTrue(selenium.isTextPresent("mousemove"));

            //onchange
            tabSet("test_form:onchangeTabSetID").tabs().get(1).click();
            assertTrue(selenium.isTextPresent("onchange works"));
            //todo: uncomment if JSFC-2696 and JSFC-2697 fixed
    /*    assertTrue(selenium.isTextPresent("change"));*/
        }
    View Full Code Here

            chart.assertVisible(true);
        }

         @Test
        public void testConfirmationInside() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/foldingpanel/confirmationIn.jsf");

            tabSet("fn:loadingModes").setTabIndex(2, ServerLoadingMode.getInstance());
            ConfirmationInspector confirmationElement = confirmation("fn:conf1");
            confirmationElement.assertElementExists(false);
    View Full Code Here

            chart.assertElementExists();
        }

         @Test
        public void testConfirmationInside() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/foldingpanel/confirmationIn.jsf");
            tabSet("fn:loadingModes").setTabIndex(1, ServerLoadingMode.getInstance());

            ConfirmationInspector confirmationElement = confirmation("fn:conf1");
            confirmationElement.assertElementExists();
    View Full Code Here

            asTagOutput.assertText("true");
        }

         @Test
        public void testClientSideEvents() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/inputtext/inputTextEvents.jsf");

            // onfocus
            element("formID:focusBlur").click();
            assertTrue(selenium.isTextPresent("onfocus works"));
            assertTrue(selenium.isTextPresent("focus"));

            // onclick
            element("formID:clickDblclick").click();
            assertTrue(selenium.isTextPresent("onclick works"));
            assertTrue(selenium.isTextPresent("click"));

            // onblur
            selenium.fireEvent("formID:focusBlur", "blur");
            assertTrue(selenium.isTextPresent("onblur works"));
            assertTrue(selenium.isTextPresent("blur"));

            // onmouseover
            element("formID:mouseoverMouseout").mouseOver();
            assertTrue(selenium.isTextPresent("onmouseover works"));
            assertTrue(selenium.isTextPresent("mouseover"));

            // onmouseout
            element("formID:mouseoverMouseout").mouseOut();
            assertTrue(selenium.isTextPresent("onmouseout works"));
            assertTrue(selenium.isTextPresent("mouseout"));

            // onmouseup
            element("formID:mouseupMousedown").mouseUp();
            assertTrue(selenium.isTextPresent("onmouseup works"));
            assertTrue(selenium.isTextPresent("mouseup"));

            // onmousedown
            element("formID:mouseupMousedown").mouseDown();
            assertTrue(selenium.isTextPresent("onmousedown works"));
            assertTrue(selenium.isTextPresent("mousedown"));

            InputTextInspector keyChangeInput = inputText("formID:keyChange");

            // onkeypress
            keyChangeInput.keyPress(KeyEvent.VK_O);
            assertTrue(selenium.isTextPresent("onkeypress works"));
            assertTrue(selenium.isTextPresent("keypress"));

            // onkeydown
            keyChangeInput.keyDown(KeyEvent.VK_P);
            assertTrue(selenium.isTextPresent("onkeydown works"));
            assertTrue(selenium.isTextPresent("keydown"));

            // onkeyup
            keyChangeInput.keyUp(KeyEvent.VK_E);
            assertTrue(selenium.isTextPresent("onkeyup works"));
            assertTrue(selenium.isTextPresent("keyup"));

            // onchange
            keyChangeInput.type("change");
            selenium.fireEvent("formID:keyChange", "blur");
            assertTrue(selenium.isTextPresent("onchange works"));
            assertTrue(selenium.isTextPresent("change"));

            // ondblclick
            element("formID:clickDblclick").doubleClick();
            assertTrue(selenium.isTextPresent("ondblclick works"));
            assertTrue(selenium.isTextPresent("dblclick"));

            // onmousemove
            element("formID:mousemove").mouseMove();
            assertTrue(selenium.isTextPresent("onmousemove works"));
            assertTrue(selenium.isTextPresent("mousemove"));
        }
    View Full Code Here

    * @author Darya Shumilina
    */
    public class HintLabelClientSideEvents extends OpenFacesTestCase {
         @Test
        public void testHintLabelClientSideEvents() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/hintlabel/hintLabel.jsf");

            //onclick
            selenium.click("formID:clickID");
            assertTrue(selenium.isTextPresent("onclick works"));
            assertTrue(selenium.isTextPresent("click"));

            //ondblclick
            selenium.doubleClick("formID:doubleclickID");
            assertTrue(selenium.isTextPresent("ondblclick works"));
            assertTrue(selenium.isTextPresent("dblclick"));

            //onmousedown
            selenium.mouseDown("formID:mousedownID");
            assertTrue(selenium.isTextPresent("onmousedown works"));
            assertTrue(selenium.isTextPresent("mousedown"));

            //onmouseover
            selenium.mouseOver("formID:mouseoverID");
            assertTrue(selenium.isTextPresent("onmouseover works"));
            assertTrue(selenium.isTextPresent("mouseover"));

            //onmouseup
            selenium.mouseUp("formID:mouseupID");
            assertTrue(selenium.isTextPresent("onmouseup works"));
            assertTrue(selenium.isTextPresent("mouseup"));

            //onmouseout
            selenium.mouseOut("formID:mouseoutID");
            assertTrue(selenium.isTextPresent("onmouseout works"));
            assertTrue(selenium.isTextPresent("mouseout"));

            //onmousemove
            selenium.mouseMove("formID:mousemoveID");
            assertTrue(selenium.isTextPresent("onmousemove works"));
            assertTrue(selenium.isTextPresent("mousemove"));

        }
    View Full Code Here

        //todo: uncomment this test if JSFC-1440 fixed
        @Ignore
         @Test
        public void _testHintLabelTooltipPartClientSideEvents() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/hintlabel/hintLabel.jsf");

            //onclick
            HintLabelInspector clickHintLabel = hintLabel("formID:clickID");
            clickHintLabel.showHintLabel();
            clickHintLabel.hint().click();
            assertTrue(selenium.isTextPresent("onclick works"));
            assertTrue(selenium.isTextPresent("click"));

            //ondblclick
            HintLabelInspector doubleClickHintLabel = hintLabel("formID:doubleclickID");
            doubleClickHintLabel.showHintLabel();
            doubleClickHintLabel.doubleClick();
            assertTrue(selenium.isTextPresent("ondblclick works"));
            assertTrue(selenium.isTextPresent("dblclick"));

            //onmousedown
            HintLabelInspector mouseDownHintLabel = hintLabel("formID:mousedownID");
            mouseDownHintLabel.showHintLabel();
            mouseDownHintLabel.hint().mouseDown();
            assertTrue(selenium.isTextPresent("onmousedown works"));
            assertTrue(selenium.isTextPresent("mousedown"));

            //onmouseover
            HintLabelInspector mouseOverHintLabel = hintLabel("formID:mouseoverID");
            mouseOverHintLabel.showHintLabel();
            mouseOverHintLabel.hint().mouseOver();
            assertTrue(selenium.isTextPresent("onmouseover works"));
            assertTrue(selenium.isTextPresent("mouseover"));

            //onmouseup
            HintLabelInspector mouseUpHintLabel = hintLabel("formID:mouseupID");
            mouseUpHintLabel.showHintLabel();
            mouseUpHintLabel.hint().mouseUp();
            assertTrue(selenium.isTextPresent("onmouseup works"));
            assertTrue(selenium.isTextPresent("mouseup"));

            //onmouseout
            HintLabelInspector mouseOutHintLabel = hintLabel("formID:mouseoutID");
            mouseOutHintLabel.showHintLabel();
            mouseOutHintLabel.hint().mouseOut();
            assertTrue(selenium.isTextPresent("onmouseout works"));
            assertTrue(selenium.isTextPresent("mouseout"));

            //onmousemove
            HintLabelInspector mouseMoveHintLabel = hintLabel("formID:mousemoveID");
            mouseMoveHintLabel.showHintLabel();
            mouseMoveHintLabel.hint().mouseMove();
            assertTrue(selenium.isTextPresent("onmousemove works"));
            assertTrue(selenium.isTextPresent("mousemove"));
        }
    View Full Code Here

    */
    public class HintLabelTest extends OpenFacesTestCase {

         @Test
        public void testReRenderThroughA4J() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/hintlabel/hintLabel_a4j.jsf");

            ElementInspector hintLabel = element("formID:hintLabelID");
            String oldValue = hintLabel.text();
            hintLabel.mouseOver();
            String oldHintBody = selenium.getBodyText();
            String[] oldHintValue = oldHintBody.split("<!--");
            String oldHint = oldHintValue[0];
            element("formID:refresher").click();
            RichFacesAjaxLoadingMode.getInstance().waitForLoad();
            String newValue = hintLabel.text();
            hintLabel.mouseOver();
            String newHintBody = selenium.getBodyText();
            String[] newHintValue = newHintBody.split("<!--");
            String newHint = newHintValue[0];
            assertFalse(newHint.equals(oldHint));
            assertFalse(newValue.equals(oldValue));
        }
    View Full Code Here

    import org.seleniuminspector.ElementInspector;

    public class DynamicImageClientSideEvents extends OpenFacesTestCase {
         @Test
        public void testDynamicImageClientSideEvents() {
            Selenium selenium = getSelenium();
            testAppFunctionalPage("/components/dynamicimage/dynamicImage_clientEvents.jsf");

            ElementInspector dynamicImage = element("form1:dynamicImage1");

            //onclick
            dynamicImage.click();
            assertTrue(selenium.isTextPresent("click"));

            //ondblclick
            dynamicImage.doubleClick();
            assertTrue(selenium.isTextPresent("dblclick"));

            //onmousedown
            dynamicImage.mouseDown();
            assertTrue(selenium.isTextPresent("mousedown"));

            //onmouseup
            dynamicImage.mouseUp();
            assertTrue(selenium.isTextPresent("mouseup"));

            //onmouseover
            dynamicImage.mouseOver();
            assertTrue(selenium.isTextPresent("mouseover"));

            //onmouseout
            dynamicImage.mouseOut();
            assertTrue(selenium.isTextPresent("mouseout"));

            //onmousemove
            dynamicImage.mouseMove();
            assertTrue(selenium.isTextPresent("mousemove"));

        }
    View Full Code Here

    TOP

    Related Classes of com.thoughtworks.selenium.Selenium

    Copyright © 2018 www.massapicom. All rights reserved.
    All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.