3

我正在尝试为一个站点创建硒测试。简而言之,当用户打开网站时,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

4

1 回答 1

0

还没有解决这个问题。所以,我一直盯着使用远程驱动程序 + PhantomJS。HTMLunit 不支持所有的 JS 库。

于 2016-04-06T09:14:52.673 回答