Selenium使用By.linkText()找不到<p:calendar>日

时间:2016-06-28 18:39:21

标签: java selenium primefaces

尝试使用Selenium执行一些测试时,似乎没有找到弹出日历中的日期来点击它们。

日历代码。

p:calendar id="fechaSalida" value="#{trip.departureDate}" required="true"
                            pattern="MM/dd/yyyy HH:mm:ss">
                            <p:ajax event="dateSelect" listener="#{controllerTrips.alterDate}"
                            readonlyInput="true"
                            update="@all" />
                        </p:calendar>

Selenium测试代码。

WebElement element = driver.findElement(By.linkText("31")); 
    element.click();

    WebElement number = wait.until(ExpectedConditions
            .elementToBeClickable(By.linkText("31")));
    number.click();

1 个答案:

答案 0 :(得分:1)

您可以使用xpath:By.xpath("//*[contains(text(), '31')]")

或者如果您需要p:日历,则可以使用By.id("fechaSalida")