Selenium htmlUnit动态内容不起作用

时间:2016-03-03 21:11:58

标签: javascript selenium-webdriver htmlunit selenium-firefoxdriver webshim

我正在尝试为一个网站创建selenium测试。简而言之,当用户打开网站时,CMS会向页面添加一些动态元素(HTML + JS)。

当我在FF驱动程序上运行测试时 - 一切正常。

FF驱动程序配置:

DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
desiredCapabilities.setCapability(CapabilityType.ELEMENT_SCROLL_BEHAVIOR,1);
return new FirefoxDriver(desiredCapabilities);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);

在这种情况下,某些页面部分。

driver.getPageSource()

http://pastebin.com/P3F6HsDP

如您所见,动态块确实存在。

但是在HtmlUnit的情况下:

HtmlUnitDriver htmlUnitDriver = new HtmlUnitDriver();
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);

...动态区块不存在http://pastebin.com/b4iRGzjM

您能否建议我如何解决或分享一些想法?

我试过了:

  htmlUnitDriver.setJavascriptEnabled(true);

但我收到以下错误:http://pastebin.com/qRazGjGY

1 个答案:

答案 0 :(得分:0)

没有解决这个问题。所以,我盯着使用Remote Driver + PhantomJS。 HTMLunit不支持所有JS库。