0
点赞
收藏
分享

微信扫一扫

java selenium robot操作

妖妖妈 2022-08-02 阅读 61

package com.gloryroad.Demo;



import java.awt.Robot;

import java.awt.Toolkit;

import java.awt.datatransfer.StringSelection;

import java.awt.event.KeyEvent;



import org.openqa.selenium.By;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.firefox.FirefoxDriver;

import org.openqa.selenium.support.ui.ExpectedConditions;

import org.openqa.selenium.support.ui.WebDriverWait;

import org.testng.annotations.AfterMethod;

import org.testng.annotations.BeforeMethod;

import org.testng.annotations.Test;



/**

* Robot对象操作键盘

* @author UC217288

*

*/

public class RobotTestSelenium {



String url="http://www.sogou.com";

public WebDriver driver;

@BeforeMethod

public void setUp(){

driver=new FirefoxDriver();

driver.get(url);


}



@AfterMethod

public void tearDown(){

driver.close();

}


@Test

public void testRobotOperatorMethod(){

WebDriverWait wait=new WebDriverWait(driver, 10);

wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.id("query")));

driver.findElement(By.id("query")).click();

sendCtrlVcpBoerd("光荣之路");

pressTabkey();

pressEnterKey();

try {

Thread.sleep(5000);

} catch (Exception e) {

// TODO: handle exception

}



}

/**

* 把数据放到剪贴板上

* @param strings

*/

public void sendCtrlVcpBoerd(String strings)

{

//声明StringSelection对象,

StringSelection sleSelection=new StringSelection(strings);

//使用Toolkit对象的setContents方法将字符串放到剪贴板中去;

Toolkit.getDefaultToolkit().getSystemClipboard().setContents(sleSelection, null);

//声明Robot对象

Robot rot=null;

try {

rot=new Robot();

} catch (Exception e) {

// TODO: handle exception

e.printStackTrace();

}

rot.keyPress(KeyEvent.VK_CONTROL);

rot.keyPress(KeyEvent.VK_V);

rot.keyRelease(KeyEvent.VK_CONTROL);

rot.keyRelease(KeyEvent.VK_V);


}

/**

* 制作Tab键

*/

public void pressTabkey(){


Robot rot=null;

try {

rot=new Robot();

} catch (Exception e) {

// TODO: handle exception

e.printStackTrace();

}


rot.keyPress(KeyEvent.VK_TAB);

rot.keyRelease(KeyEvent.VK_TAB);



}


/**

* 制作Enter键

*/

public void pressEnterKey(){

Robot rot=null;

try {

rot=new Robot();

} catch (Exception e) {

// TODO: handle exception

e.printStackTrace();

}


rot.keyPress(KeyEvent.VK_ENTER);

rot.keyRelease(KeyEvent.VK_ENTER);



}

}

举报

相关推荐

0 条评论