selenium - HtmlUnit 的稳定性和速度如何

标签 selenium selenium-rc webdriver htmlunit selenium-webdriver

我正在从 selenium-1 升级到 selenium-2 并尝试新的 HtmlUnit 驱动程序。我已经尝试了一些基本的测试(打开一个页面,get_text,..),它似乎

  • 极慢(我认为 chrome/FF 远程驱动程序比它快)
  • 非常不稳定(使用 HTMLUNIT 和 HTMLUNITWITHJS 打开 yahoo.com 都导致错误)

  • 我很高兴听到你对它的印象。我希望你会发现我错了(我可以没有(1)速度但(2)稳定性至关重要)?是否有 HtmlUnit 与 selenium 驱动程序的速度比较?

    最佳答案

    根据我的经验,HtmlUnit 比 Firefox 快得多,明显快于 chrome(它是最快的带有 selenium 2.0rc2 的完整浏览器)。 HtmlUnit 不需要下载外部资源,如果您在没有 BrowserVersion 的情况下使用它,则默认情况下禁用 javascript:

    WebDriver driver = new HtmlUnitDriver();
    

    但是,如果您传入浏览器版本,则它已启用,但运行速度较慢,因为它将下载 javascript 文件:
    WebDriver driver = new HtmlUnitDriver(BrowserVersion.FIREFOX_3_6);
    

    话虽如此,javascript 无法与真正的浏览器相提并论。谷歌和雅虎的主页不能正常工作。现代浏览器可以容忍某些 javascript 错误(漏洞利用/黑客攻击),而 HtmlUnit 则不能。

    我通常在不需要大量 javascript 的页面/流上使用 HtmlUnitDriver,我只需要验证页面上存在的元素/数据(不是动态加载的)。

    关于selenium - HtmlUnit 的稳定性和速度如何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6402282/

    相关文章:

    java - Selenium,在使用 Java 运行 chrome 测试时创建简单的对话框

    C# selenium chromedriver 单击允许在此设备上存储文件

    testing - Selenium 发送文本

    c# - 使用 Selenium 2 查找嵌套 iFrame

    java - 如何将 ant 参数传递给 junit/selenium 测试?

    python - 为不同的文件下载更新 download.default_directory chromedriver

    python - 无法使用 python 中的 selenium webdriver 发送 key

    google-chrome - 在 headless (headless) debian 系统上通过 Selenium 启动 google-chrome

    java - selenium RC 基本测试不适用于 iexplore,但适用于 FF 等

    javascript - 不同的 html 来源