问题描述
当您单击按钮(Jscript)时,我想访问一些复制到网站剪贴板上的数据 我使用Remotewebdriver(ChromeDriver)来控制测试用例,但找不到如何访问此信息。
有人知道吗?
如果可以使用c#,但也可以使用Java解决方案。
Thx
解决方法
您可以使用https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API,但是如文档中所述,您需要从浏览器中授予权限以从中读取值。获得许可后,只需从硒页面上执行js脚本并获取该值即可。
,所以我不知道该怎么做,所以我的方法是使用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();");