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;
    原创帖,转载请注明出处及作者,标注严禁转载帖请勿转载,谢谢!
  • 相关阅读:
    AGC023C Painting Machines
    LG3834 可持久化线段树1
    又是一天
    ARC103F Distance Sums
    CF1053E Euler tour
    UOJ22 外星人
    洛谷4248 AHOI2013差异 (后缀数组SA+单调栈)
    洛谷2408不同字串个数/SPOJ 694/705 (后缀数组SA)
    CF49E Common ancestor(dp+dp+dp)
    洛谷4051 JSOI2007 字符加密(SA)
  • 原文地址:https://www.cnblogs.com/Bug-Hunter/p/15028882.html
Copyright © 2011-2022 走看看