首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无头(HtmlUnitDriver)浏览器测试在selenium中的限制是什么?

无头(HtmlUnitDriver)浏览器测试在selenium中的限制是什么?
EN

Stack Exchange QA用户
提问于 2016-02-24 07:18:23
回答 2查看 8.9K关注 0票数 2

我使用无头浏览器(HtmlUnitDriver)自动化脚本,但我想知道无头(HtmlUnitDriver)浏览器的局限性,例如:

  1. 无头浏览器能处理IFrames吗?
  2. 无头浏览器能执行上传文件功能吗?
  3. 无头浏览器能处理警报,弹出窗口吗?

就像上面的问题一样,我想知道可以使用实际浏览器执行但不能使用无头浏览器(HtmlUnitDriver)执行的所有功能。

EN

回答 2

Stack Exchange QA用户

发布于 2016-02-24 15:12:38

无头浏览器可以完成您提到的所有事情。目前,围绕无头浏览器的主要讨论是基于速度和准确性。

无头浏览器的一些优点:

  • 能够同时运行比非无头驱动程序更多的实例。
  • 可以在数据驱动测试中使用大量工厂生成或手工创建的测试变量。
  • 对于大多数任务,运行时间最多可以减少50% .
  • 可以在不占用计算机屏幕上下文的情况下执行。

一些弱点:

  • 由于页面加载过快,很难在定位元素上调试不一致的故障。
  • 非预期的交互(由于浏览器的速度/无头状态而失去自动UI测试与集成或单元测试的好处)
  • 当驱动程序切换到will单元时,非头驱动程序的代码并不总是工作。也就是说,在ChromeDriver和FirefoxDriver之间切换通常在相同代码的成功率上是相当一致的,但是切换到HtmlUnit可能需要额外的倾向。

权衡:

  • 速度和一致性-更高的故障率,不像失败时的截图,或者像飞碟这样的工具,记录了整个过程。
  • 更具体的代码与更一般的代码--一些页面/元素需要在无头浏览器中进行特定的等待和裁剪,而为非头浏览器编写代码则非常简单。
票数 2
EN

Stack Exchange QA用户

发布于 2017-09-07 09:42:17

无头浏览器几乎无法处理iframes。我发现,如果您的iframe包含一个完整的工作流html,则无头驱动程序无法区分具有相同css的不同“页面”上的两个元素,而非头驱动程序则可以区分其中的两个元素。

票数 0
EN
页面原文内容由Stack Exchange QA提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://sqa.stackexchange.com/questions/17233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档