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;
    原创帖,转载请注明出处及作者,标注严禁转载帖请勿转载,谢谢!
  • 相关阅读:
    easyui
    H+ Se7en WebUI
    WEB IM
    PowerDesigner 导出 Excel
    SSO跨域 CodeProject
    ICU 是一种说不出的痛啊
    C#的Main(String[] args)参数输入问题
    C# TabControl标签的隐藏
    在foreach的判断条件里执行方法会有效率问题吗?
    C#编程命名规范推荐
  • 原文地址:https://www.cnblogs.com/Bug-Hunter/p/15028882.html
Copyright © 2011-2022 走看看