如何在另一个页面中重用 .getText 值 Java Selenium

问题描述

我正在尝试使用 .getText 并想在另一个页面搜索框)上使用检索到的文本。

我能得到任何帮助吗?

我使用的是 Java Selenium。

谢谢 提前。

解决方法

您可以使用 sessionStorage 并使用 getText() 添加数据存储文本 到会话存储,在该窗口中打开的同一站点的任何页面都可以访问它。

更新

SessionStorage 最多可以存储大约 5MB 的数据,这些数据将存储在浏览器中,并可用于将在该选项卡中打开的页面,这意味着一旦您关闭该选项卡,它将被删除且无法访问。它在选项卡关闭时过期。

String text = driver.findElement(By.xpath("//*[text()='Google offered in:  ']")).getText();
WebStorage s = (WebStorage) new Augmenter().augment(driver);
SessionStorage ss =s.getSessionStorage();
ss.setItem("Text",text);    
driver.findElement(By.name("q")).sendKeys(ss.getItem("Text"),Keys.ENTER);