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
Java 如何在运行Selenium测试时关闭键盘_Java_Selenium_Awtrobot - Fatal编程技术网

Java 如何在运行Selenium测试时关闭键盘

Java 如何在运行Selenium测试时关闭键盘,java,selenium,awtrobot,Java,Selenium,Awtrobot,我正在使用Java运行长时间的Selenium测试。一些操作包括使用Robot对象键入文本。当这些测试运行时,我有时必须停止使用键盘,或者阻止任何人打字 当机器人对象“敲击”按键时,是否有办法关闭或禁用用户键盘 Robot robot = null; try { robot = new Robot(); checkKeyboardIsEnglish(robot); for (char c : textToType.toCharArray(

我正在使用Java运行长时间的Selenium测试。一些操作包括使用Robot对象键入文本。当这些测试运行时,我有时必须停止使用键盘,或者阻止任何人打字

当机器人对象“敲击”按键时,是否有办法关闭或禁用用户键盘

 Robot robot = null;
    try {
        robot = new Robot();
        checkKeyboardIsEnglish(robot);
        for (char c : textToType.toCharArray()) {
            int keyCode = KeyEvent.getExtendedKeyCodeForChar(c);
            if (KeyEvent.CHAR_UNDEFINED == keyCode) {
                logger.error("Key code not found for character '" + c + "'");
            } else {
                try {
                    robot.keyPress(keyCode);
                    robot.delay(10);
                    robot.keyRelease(keyCode);
                    robot.delay(10);
                } catch (Exception e) {
                    if (c == '_') {
                        robot.keyPress(KeyEvent.VK_SHIFT);
                        robot.keyPress(KeyEvent.VK_MINUS);
                        robot.keyRelease(KeyEvent.VK_MINUS);
                        robot.keyRelease(KeyEvent.VK_SHIFT);
                    }
                    if (c == ':') {
                        robot.keyPress(KeyEvent.VK_SHIFT);
                        robot.keyPress(KeyEvent.VK_SEMICOLON);
                        robot.keyRelease(KeyEvent.VK_SEMICOLON);
                        robot.keyRelease(KeyEvent.VK_SHIFT);
                    }
                }
            }
        }
        robot.keyPress(KeyEvent.VK_ENTER);
        robot.keyPress(KeyEvent.VK_ENTER);
    } catch (Exception ex) {
        logger.error(ex.getMessage());
    }

有一些实用程序可以禁用/启用键盘,请看这是真的,但我需要Java代码来帮助我做到这一点,而不是插件或实用程序。有一些实用程序可以禁用/启用键盘,请看这是真的,但我需要Java代码来帮助我做到这一点,而不是插件或实用程序。