在影子DOM中查找元素

ale*_*cxe 9 selenium css-selectors selenium-webdriver shadow-dom protractor

Protractor 1.7.0引入了一个新功能:一个新的定位器by.deepCss,有助于在shadow DOM中查找元素.

它涵盖了哪些用例?您何时想要到达影子DOM中的元素?


我提出这个问题的原因是我在这个问题的动机部分缺失了 - 我认为量角器主要是一个有助于模仿真实用户交互的高级框架.访问影子树听起来像是一个非常深层次的技术问题,为什么你想这样做让我感到困惑.

han*_*uan 5

为了回答你的问题,这是一个相关的问题:"影子dom提供哪些信息,查看原始HTML不是?"

以下代码段创建了一个shadom dom(通过chrome或firefox查看):

如果单击箭头,将打开一个包含所有日期的弹出窗口,您可以选择它.

现在假设您正在构建一个酒店预订应用程序,并且您制作了一个自定义阴影日期选择器,当房间不可用时,它会变黑(并且不允许用户选择)日期.

查看原始html,您会看到<input type="date">用户选择的值/日期.但是,您如何测试黑屏UI是否按预期工作?为此,您需要检查弹出窗口所在的阴影dom.