selenium - 硒测试在断言元素存在时失败,但它确实存在
问题描述
我运行了 Selenium 测试,但它在第 5 步失败,第 5 步指出:
assert element present: xpath=(//span[text()='France'])
但是页面上有<span>
元素,它包含“法国”,因为它是内容/文本。
当我单击“在页面中查找目标”(img #1)时,它实际上突出显示了页面上的元素,但是由于某种原因,当我运行它时测试用例失败了。
可能是什么原因 ?
img #1(“在页面中查找目标”按钮):
我正在使用 Selenium 版本 3.2.5 和 firefox-dist-de-60.1.0.ESR-windows。
与 span 元素相关的 HTML 部分如下所示:
<span id="application_label">Deutsch</span>
解决方案
- 检查元素是否不在 iframe 内。如果是这样,请使用 switchTo()。 如何使用 java 在 Selenium WebDriver 中处理 iframe
- 页面尚未加载,因此 selenium 无法检测到此元素。尝试使用 Thread.sleep(10000) 只是为了确保它完全加载然后放置断言。希望能帮助到你!
推荐阅读
- sql - 将不同表中的数据更新为空行并使用日期汇总数量
- c++ - 自定义 boost 序列化输入存档仅使用向量失败 (boost::archive::archive_exception)
- javascript - 错误类型错误:无法读取 null 的属性“样式”
- spring - com.mongodb.MongoSocketOpenException:使用 Spring Boot 和 mongodb 云打开异常套接字
- python - 如何在句子中找到每个单词可能被 n 个其他单词分隔的单词列表
- database - 在我的 odbc 驱动程序(3.5)中实现了 SQLExtendedFetch 函数,但是 odbc 驱动程序管理器仍然说驱动程序不支持这个函数
- python - Websocket:使用 Dart 客户端和 Autobahn-python 服务器
- javascript - 使用 reactjs 将 api 数据显示到前端(轮询)
- ios - 计算 CGRect 上的新大小和位置
- angular - Angular如何全局/应用范围模板