Selenium webdriver 如何从Geb/Groovy打印禁用的文本?

Selenium webdriver 如何从Geb/Groovy打印禁用的文本?,selenium-webdriver,groovy,geb,Selenium Webdriver,Groovy,Geb,我们正在自动化UI应用程序,我们的UI应用程序中存在禁用的文本,因此我们需要验证禁用的文本。在验证之前,我必须打印禁用的文本,请指导我如何使用Geb/Groovy打印文本。 请找到我突出显示的HTML标记的图像是禁用的文本 BNSF0000712570 BNSF0000712570您应该尝试使用.css选择器的By如下:- def text = driver.findElement(By.cssSelector("td.x-grid3-td-elementvalue").text 或 注意:-

我们正在自动化UI应用程序,我们的UI应用程序中存在禁用的文本,因此我们需要验证禁用的文本。在验证之前,我必须打印禁用的文本,请指导我如何使用Geb/Groovy打印文本。 请找到我突出显示的HTML标记的图像是禁用的文本

BNSF0000712570


BNSF0000712570您应该尝试使用.css选择器的
By
如下:-

def text = driver.findElement(By.cssSelector("td.x-grid3-td-elementvalue").text

注意:-如果仍然无法获取文本,则需要共享表格HTML而不是屏幕截图,这就是为什么,这可能是最好的定位器


希望对您有所帮助:)

您应该尝试使用.css选择器的
,如下所示:-

def text = driver.findElement(By.cssSelector("td.x-grid3-td-elementvalue").text

注意:-如果仍然无法获取文本,则需要共享表格HTML而不是屏幕截图,这就是为什么,这可能是最好的定位器


希望有帮助:)

如果有多个元素与By.cssSelector查询中使用的类匹配,则上面的选择器将生成多个结果,即元素

要仅获取包含“BNSF0000712570”的元素,我建议您尝试在包含禁用文本的div上使用“ext:qtip”属性来获取它(我假设每个包含禁用文本的元素都是唯一的):

def myText = $(“div[ext:qtip=‘Id: 0001’]”).text();
println myText;
assert myText == "BNSF0000712570";

@Saurabh Gar:为什么要使用WebDriver“By”类选择器?使用Geb,您可以使用多种更简单的方法来编写选择器,例如,与上面使用的方法类似。

如果有多个元素与By.cssSelector查询中使用的类匹配,则上面的选择器将生成多个结果,即元素

要仅获取包含“BNSF0000712570”的元素,我建议您尝试在包含禁用文本的div上使用“ext:qtip”属性来获取它(我假设每个包含禁用文本的元素都是唯一的):

def myText = $(“div[ext:qtip=‘Id: 0001’]”).text();
println myText;
assert myText == "BNSF0000712570";

@Saurabh Gar:为什么要使用WebDriver“By”类选择器?使用Geb,您可以使用多种更简单的方法来编写选择器,例如,如上所述。

感谢Saurab的快速回复,我尝试使用css选择器,但它不起作用。禁用文本BNSF0000712570@GopalaKrishnan,请参见下面的HTML。什么是不工作??有什么例外吗?谢谢Saurab的快速回复,我尝试使用css选择器,它不工作。禁用文本BNSF0000712570@GopalaKrishnan,请参见下面的HTML。什么是不工作??有什么例外吗??