如何在WebDriver测试中将ExpectedConditions类与实现的类组合在一起

时间:2013-05-29 23:42:13

标签: java selenium webdriver conditional-statements implements

我有不同的类来实现ExpectedCondition;其中之一,AttributeContainsCondition,如下所示。在我的测试中,我试图使用条件点之类的东西,并查看ExpectedCondition中可用的所有方法以及我创建的实现ExpectedCondition的所有类。

所以在我的测试中,我试图添加一些内容来从ExpectedCondition中获取所有方法以及我创建的实现ExpectedCondition的所有类。我正在导入我创建类的位置。

public class AttributeContainsCondition implements ExpectedCondition<Boolean>{

    private final WebElement element;
    private final String attributeName, expectedValue;

    public AttributeContainsCondition(WebElement element, String attributeName, String expectedValue){
        this.element = element;
        this.attributeName = attributeName;
        this.expectedValue = expectedValue;
    }

    public Boolean apply(WebDriver input){
        return StringUtils.contains(element.getAttribute(attributeName), expectedValue);
    }
}

测试文件:这不起作用

import org.openqa.selenium.support.ui.ExpectedConditions;
public class VerifyInfoTest extends mainTest {
    ExpectedConditions condition = new ExpectedConditions<boolean>(); ????

所以,如果我使用condition.xxxx,我应该看到来自ExpectedConditions和的方法 我创建的所有实现它的类

谢谢:)

1 个答案:

答案 0 :(得分:0)

如果您想在wait.until

中使用AttributeContainsCondition,请说明

您可以通过以下方式使用它:

boolean result = wait.until(new AttributeContainsCondition(
      yourWebElement,
      "yourAttributeName",
      "yourExpectedValue"));