Sök…


Syntax

  • fördröjning (int ms)
  • keyPress (int keycode)
  • keyRelease (int keycode)
  • musMove (int x, int y)
  • musPress (int-knappar)
  • mouseRelease (int-knappar)
  • mouseWheel (int wheelAmt)

parametrar

Parameter detaljer
Fröken Tid att sova i millisekunder
nyckelkod Konstant att trycka på den angivna tangenten till exempel för att trycka på A kod är VK_A . Se mer information: https://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html
x, y Skärmkoordinater
knappar Knappmask; en kombination av en eller flera musknappmasker
wheelAmt Antal hack för att flytta mushjulet, negativt värde för att flytta upp / bort från användarens positiva värde för att flytta nedåt / mot användaren

Anmärkningar

Det här avsnittet innehåller detaljer om implementering av Robot API med Selenium Webdriver. Robotklassen används för att generera inbyggd systemingång när selen inte kan göra det, till exempel genom att trycka på höger musknapp, trycka på F1-tangenten etc.

Keypress-händelse med hjälp av Robot API (JAVA)

import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;

public class KeyBoardExample {
    public static void main(String[] args) {
        try {
            Robot robot = new Robot();
            robot.delay(3000);
            robot.keyPress(KeyEvent.VK_Q); //VK_Q for Q
        } catch (AWTException e) {
            e.printStackTrace();
        }
    }
}

Med selen

Ibland måste vi trycka på valfri knapp för att testa nyckelpresshändelsen i webbapplikationen. För en instans för att testa ENTER-tangenten på inloggningsformuläret kan vi skriva något liknande nedan med Selenium WebDriver

import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.Test;

public class LoginTest {
    
    @Test
    public void testEnterKey() throws InterruptedException
    {
        WebDriver driver=new FirefoxDriver();        
        Robot robot=null;        
        driver.get("test-url");
        driver.manage().window().maximize();
        driver.findElement(By.xpath("xpath-expression")).click();
        driver.findElement(By.xpath("xpath-expression")).sendKeys("username");
        driver.findElement(By.xpath("xpath-expression")).sendKeys("password");        
        try {
            robot=new Robot();
        } catch (AWTException e) {
            e.printStackTrace();
        }
        //Keyboard Activity Using Robot Class
        robot.keyPress(KeyEvent.VK_ENTER);
    }
}

Mushändelse med hjälp av robot API (JAVA)

Musrörelse:

import java.awt.Robot;
 
public class MouseClass {
 public static void main(String[] args) throws Exception {
     Robot robot = new Robot();
 
     // SET THE MOUSE X Y POSITION
     robot.mouseMove(300, 550);
     }
}

Tryck på vänster / höger musknapp:

import java.awt.Robot;
import java.awt.event.InputEvent;

public class MouseEvent {
 public static void main(String[] args) throws Exception {
     Robot robot = new Robot();

     // LEFT CLICK
     robot.mousePress(InputEvent.BUTTON1_MASK);
     robot.mouseRelease(InputEvent.BUTTON1_MASK);

     // RIGHT CLICK
     robot.mousePress(InputEvent.BUTTON3_MASK);
     robot.mouseRelease(InputEvent.BUTTON3_MASK);
     }
}

Klicka och bläddra i hjulet:

import java.awt.Robot;
import java.awt.event.InputEvent;
 
public class MouseClass {
 public static void main(String[] args) throws Exception {
     Robot robot = new Robot();
 
     // MIDDLE WHEEL CLICK
     robot.mousePress(InputEvent.BUTTON3_DOWN_MASK);
     robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK);
 
     // SCROLL THE MOUSE WHEEL
     robot.mouseWheel(-100);
     }
}


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow