如何自动化Angular JS应用程序并处理等待,即使用Selenium Webdriver和Java同步而不是使用量角



我需要使用selenium webdriver和java自动化Angular js应用程序。我还需要处理同步,即在我们处理它以用于非Angular JS应用程序时等待Angular Element。

请建议我一个可能找到Angular JS元素的解决方案,使用Selenium Webdriver和Java进行等待并执行操作。

谢谢。

这是我以前发现的时间,并且使用它很成功地等待Angular。

final String script = "var callback = arguments[arguments.length - 1];n" +
            "var rootSelector = 'body';n" +
            "var el = document.querySelector(rootSelector);n" +
            "n" +
            "try {n" +
            "    if (angular) {n" +
            "        window.angular.getTestability(el).whenStable(callback);n" +
            "    }n" +
            "    else {n" +
            "        callback();n" +
            "    }n" +
            "} catch (err) {n" +
            "    callback(err.message);n" +
            "}";
    ((JavascriptExecutor) getDriver()).executeAsyncScript(script, new Object[0]);

您可以尝试ngdriver:https://github.com/paul-hammant/ngwebdriver,并在selenium webdriver上使用buid。

最新更新