通过Webdriver从JavaScript警报中检索文本

Retrieve the text from a JavaScript alert via Webdriver

本文关键字:检索 文本 Webdriver JavaScript 通过      更新时间:2023-09-26

我正在创建一系列Webdriver测试,其主要目的是确保web应用程序页面的验证,因此这围绕着确保警报发生,但更重要的是显示的文本是正确的,因此触发了正确的验证。

然而,我似乎无法从警报中获取文本。

我似乎找不到任何关于从警报中检索文本的信息,所有的研究返回如何简单地接受警报。

到目前为止,我有:

UnhandledAlertException alertText = UnhandledAlertException.GetAlertText();
Assert.That(alertText, Is.EqualTo("You must select the user's Primary Role"));  

但是"GetAlertText"不是一个被识别的东西,我不确定我是否需要得到另一个文件并引用它包含这个函数,或者如果它根本不存在。

我很确定有一个内置的获取警报文本功能,但我似乎是错的。

谢谢,汤姆

尝试使用这个Alert类。

public String getAlert()
{
    Alert alert = driver.switchTo().alert();
    String alertText = alert.getText();
    alert.accept();
    return alertText;
}

从java脚本Alert函数返回Alert的文本消息

如果一个警告是与某种js框架,看起来像错误,但它的弹出,然后使用xpath来获取该定位器的文本。

如果您确定警报是javascript,那么可以获得以下警告文本

string alertText = ((OpenQA.Selenium.IAlert)driverObj).Text;