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;
    原创帖,转载请注明出处及作者,标注严禁转载帖请勿转载,谢谢!
  • 相关阅读:
    基于NodeJS的全栈式开发
    Android 反编译apk 详解
    AngularJS 中文资料+工具+库+Demo 大搜集
    Mongodb集群搭建的三种方式
    Ubuntu下解决bash 没有那个文件或目录的方法
    ubuntu12.04 安装配置jdk1.7
    CentOS怎样查看系统信息
    Ubuntu 安装 Redis
    Redis快速入门
    js去掉双引号
  • 原文地址:https://www.cnblogs.com/Bug-Hunter/p/15028882.html
Copyright © 2011-2022 走看看