webdriver获取变色的元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webdriver获取变色的元素相关的知识,希望对你有一定的参考价值。
在WebDriver中,可以使用javascript来获取变色的元素。JavaScript可以通过获取元素的颜色属性来判断元素是否变色。可以使用JavaScript的getComputedStyle()方法来获取元素的颜色属性,然后使用JavaScript的if语句来判断元素是否变色,如果变色,则执行相应的操作。此外,还可以使用JavaScript的addEventListener()方法来监听元素的变色事件,当发生变色时,可以执行相应的操作。 参考技术A 如果要使用Webdriver获取变色的元素,你可以使用Chrome Driver来进行操作。首先,使用Chrome Driver打开网站,然后使用Chrome Driver来寻找页面中变色的元素,并使用相应的API方法获取该元素的信息。使用 webdriver 从 javascript 警报中获取文本元素
【中文标题】使用 webdriver 从 javascript 警报中获取文本元素【英文标题】:Get text element from a javascript alert using webdriver 【发布时间】:2014-03-25 23:49:26 【问题描述】:我在 c# 中使用 selenium webdrive 来学习和编写自动化测试,我遇到过这种情况:
假设您有一个这样的网站:http://referencewebapp.qaautomation.net/register.php,然后您会收到带有错误消息的弹出窗口作为 javascript 警报(例如,如果您在未填写任何信息的情况下按注册)。我需要做的是检查警报中的错误消息(文本)。
我无法使用 driver.FindElement 或 drive.PageSource,因为我看不到它的源代码。我读到了关于尝试选择/更改框架(Selenium cannot get alert thrown in iframe),但我不知道 frameID 是如何。有什么办法可以找到并检查该文本吗?
感谢您的任何建议。
【问题讨论】:
【参考方案1】: driver.SwitchTo().Alert().Text;
应该是你所需要的。
【讨论】:
非常感谢!完成了这项工作!【参考方案2】:您可以尝试使用 selenium Alert 对象获取警报(对话框)的文本。
例如:
Alert alert = driver.switchTo().alert();
String alertText = alert.getText();
if (alertText.equals("error..."))
// Do Something...
// dismiss alert
alert.dismiss();
更多信息在selenium 2.0 documentation.
【讨论】:
谢谢,这很有帮助!以上是关于webdriver获取变色的元素的主要内容,如果未能解决你的问题,请参考以下文章
使用 webdriver 从 javascript 警报中获取文本元素