zoukankan      html  css  js  c++  java
  • Selenium中解决输入法导致sendKeys输入内容与预期不一致的问题

    有时候由于系统输入法处于中文状态或英文状态输入内容与预期不一致的问题,我们采用文本内容拷贝的方式传递给相关元素,从而解决该问题,具体代码如下:

     /***
         * 通过拷贝的方式输入文字内容,防止输入法中英文切换导致输入内容不一样问题
         * @param webElement  元素
         * @param text   输入文字内容
         */
        public static void elementSendPaste(WebElement webElement, String text){
            webElement.clear();
            webElement.click();
            StringSelection selection=new StringSelection(text);
            Toolkit.getDefaultToolkit().getSystemClipboard().setContents(selection, null);
            Robot robot=null;
            try {
                robot=new Robot();
                robot.keyPress(KeyEvent.VK_CONTROL);
                robot.keyPress(KeyEvent.VK_V);
                robot.keyRelease(KeyEvent.VK_V);
                robot.keyRelease(KeyEvent.VK_CONTROL);
            } catch (AWTException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }

    引用如下:

    import org.openqa.selenium.WebElement;
    import java.awt.*;
    import java.awt.datatransfer.StringSelection;
    import java.awt.event.KeyEvent;
    原创帖,转载请注明出处及作者,标注严禁转载帖请勿转载,谢谢!
  • 相关阅读:
    &与&&的区别
    x^y=(x&~y)|(~x&y)证明
    a、b交换与比较
    x+y = ((x&y)<<1) + (x^y) 证明
    (x&y) + ((x^y)>>1)即x和y的算数平均值
    默认参数提升
    类型转换
    闲扯原码,补码和反码(转)
    C/C++中float和double的存储结构
    led设备驱动(s3c_led.c)
  • 原文地址:https://www.cnblogs.com/Bug-Hunter/p/15028882.html
Copyright © 2011-2022 走看看