从Selenium客户端获取剪贴板中的数据



我想访问一些数据,当你点击按钮(Jscript(时,这些数据会被复制到网站上的剪贴板我使用Remotewebdriver(ChromeDriver(来控制测试用例,但找不到如何访问这些信息。

有人知道怎么做吗?

如果可能的话,使用c,但java解决方案也可以。

Thx

所以我不知道如何做到这一点,所以我的方法是用Jquery和CTRL+V将文本呈现到该框中,然后用webdriver返回值。不漂亮,但它工作

var javaScript = "$( ".d-modal-footer").html('<div><textarea id=errormessagecopy maxlength="5000" cols="80" rows="40"></textarea></div>');";
WebDriver.ExecuteJavaScript(javaScript);
var errormessagecopy = WebDriver.FindElement(By.Id("errormessagecopy"));
new Actions(WebDriver).MoveToElement(errormessagecopy).Click().KeyDown(OpenQA.Selenium.Keys.Control).SendKeys("v").KeyUp(OpenQA.Selenium.Keys.Control).Perform();
var errorText = WebDriver.ExecuteJavaScript<string>("return $("#errormessagecopy").val();");

您可以使用https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API但正如文档中所述,要从中读取值,您需要在浏览器中授予权限。获得权限后,只需在selenium的页面上执行js脚本并获取该值。

最新更新