Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用CTRL+;在输入字段中粘贴文本值;seleniumjava中的v?_Java_Selenium_Selenium Webdriver_Selenium Chromedriver - Fatal编程技术网

如何使用CTRL+;在输入字段中粘贴文本值;seleniumjava中的v?

如何使用CTRL+;在输入字段中粘贴文本值;seleniumjava中的v?,java,selenium,selenium-webdriver,selenium-chromedriver,Java,Selenium,Selenium Webdriver,Selenium Chromedriver,我想在SeleniumJava中使用CTRL+V将文本传递到输入字段。怎么做。只是我有一个字符串,所以不需要从某处复制字符串。 我正在试图找到一种方法?假设剪贴板中存在字符串值(使用CTRL+C),您可以将其作为字符串检索并传递到文本字段 Toolkit toolkit = Toolkit.getDefaultToolkit(); Clipboard clipboard = toolkit.getSystemClipboard(); Strin

我想在SeleniumJava中使用CTRL+V将文本传递到输入字段。怎么做。只是我有一个字符串,所以不需要从某处复制字符串。
我正在试图找到一种方法?

假设剪贴板中存在字符串值(使用CTRL+C),您可以将其作为字符串检索并传递到文本字段

  Toolkit toolkit = Toolkit.getDefaultToolkit();
            Clipboard clipboard = toolkit.getSystemClipboard();
            String copyFromClipboard= (String) clipboard.getData(DataFlavor.stringFlavor);
            System.out.println("String from Clipboard:" + result);
YourWebElement.sendkeys(copyFromClipboard);

Actions类:用于处理selenium提供的键盘和鼠标事件Actions类

keyDown():此方法在需要按特定键盘键时模拟键盘操作

keyUp():使用keyDown()方法按下的键盘键不会自动释放,因此keyUp()方法用于显式释放键

sendKeys():此方法向给定的web元素发送一系列击键

    Actions action = new Actions(driver);
    action.keyDown(keys.CONTROL);    
    action.sendKeys("c");
    action.keyUp(keys.CONTROL);
    action.build().perform(); // copy is performed
    
    action = new Actions(driver);
    action.keyDown(keys.CONTROL);
    action.sendKeys("v");
    action.keyUp(keys.CONTROL);
    action.build().perform(); // paste is performed

使用
.sendKeys()
用字符串填充输入字段可能存在重复的错误?为什么需要执行粘贴?@Ardesco在您想要尝试粘贴的测试环境中,我能想到的唯一可能的场景是测试输入元素是否专门设计为不允许该操作,但我同意,我怀疑这就是这个用户想要的。我知道在这种情况下它无论如何都不会工作,所以你永远不会知道你的命令是否正确……;)通过在允许粘贴的常规输入字段上测试它,您将知道它是否正常工作。将logc放入try/catch和/或在粘贴后立即检查输入的文本值将确定粘贴是否有效。