首页 > 解决方案 > Selenium 无法访问网页上的任何元素

问题描述

我正在使用 Specflow 和 Nunit 在 C# 中为我正在处理的一个新项目编写 Selenium 测试,并且在body任何地方都无法选择其中的任何内容

我尝试与之交互的 div:

可以访问身体

WaitUntil(SeleniumExtras.WaitHelpers.ExpectedConditions.ElementIsVisible(By.CssSelector("body")));

不能进行以下工作和 throe element not found 异常:

WaitUntil(SeleniumExtras.WaitHelpers.ExpectedConditions.ElementIsVisible(By.CssSelector("halo-root")));
WaitUntil(SeleniumExtras.WaitHelpers.ExpectedConditions.ElementIsVisible(By.CssSelector("halo-entry")));`
WaitUntil(SeleniumExtras.WaitHelpers.ExpectedConditions.ElementIsVisible(By.CssSelector("halo-navigation-container")));

ETC

错误:没有这样的元素:无法找到元素:{“method”:“css selector”,“selector”:“halo-root”}

所有帮助表示赞赏

ps 无法共享整个 SUT,因为它需要 vpn 访问。

标签: c#angularjsselenium

解决方案


首先检查您的html。我认为 body 标签必须存在于iframe中。如果它存在于 iframe 中,请先切换到 iframe,然后尝试对元素执行任何命令(等待或操作)。


推荐阅读