目前有一个 autocomplete 控件,输入搜索关键字,下拉列表列出可能需要查询的文字。
自动化代码需要等待所有推荐的下拉列表内容都显示出来。
我是判断下拉列表的内容大小,如果等于或者大于期望的数量,就认为全部显示。

我用 java 这样实现:

public static void waitForElementsAllDisplayed(List<WebElement> wes, int size) {
    new WebDriverWait(Grid.driver(), 2 * 60, 3 * 1000).until(new Function<WebDriver, Boolean>() {
        @Override
        public Boolean apply(WebDriver webDriver) {
                int currentSize = wes.size();
                System.out.println("waitForElementsAllDisplayed method, current list size: " + currentSize);
            return currentSize >= size;
        }
    });
}

现在想用 macaca 的 waitForElementsByXPath 实现,不知道

waitForElementsByXPath(value, asserter, timeout, pollFreq, cb)

asserter 如何写?


↙↙↙阅读原文可查看相关链接,并与作者交流