Robot com Inserção de Imagem - Selenium com JUnit

64 views
Skip to first unread message

Luana Matias

unread,
Sep 16, 2019, 12:52:30 PM9/16/19
to Selenium Brasil
Olá, pessoal!

Será que podem me ajudar, por gentileza?

Estou automatizando um sistema onde preciso pegar a imagem que tenho no windows (na pasta de imagens) e anexá-la em tela. Estou usando o Selenium com Java.

Até aí, tudo bem, usei a classe Robot, porém quando termina de executar o teste, meu teclado do windows fica todo desorientado. Nada mais funciona até que eu tecle Ctrl + Z.

Alguém tem alguma sugestão do que possa ser?

Segue meu código:

public void insereImagem() throws AWTException {
 
 
try{

 
// Clica no botão para fazer o upload e abre a tela do windows
 driver
.findElement(By.name("campoUpload")).click();
 
 
// Documentação: https://docs.oracle.com/javase/7/docs/api/java/awt/datatransfer/StringSelection.html
 
StringSelection ss = new StringSelection("C:\\Users\\Luana\\Pictures\\imagem.jpg");
 
 
// Documentação: https://docs.oracle.com/javase/7/docs/api/java/awt/Toolkit.html
 
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null);


 
// Documentação: https://docs.oracle.com/javase/7/docs/api/java/awt/Robot.html
 
Robot robot = new Robot();
 robot
.delay(1000);
 
 
 
// Documentação: https://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html
 robot
.keyPress(KeyEvent.VK_CONTROL);
 robot
.keyPress(KeyEvent.VK_V);
 robot
.keyPress(KeyEvent.VK_CONTROL);
 robot
.keyPress(KeyEvent.VK_ENTER);
 
 
}
 
catch(AWTException e) {
 e
.printStackTrace();
 
}
 
}

Luana Matias

unread,
Sep 16, 2019, 1:18:21 PM9/16/19
to Selenium Brasil
Pessoal, todo o código anterior foi jogado fora quando vi que em apenas uma linha eu resolvia meu problema:

 driver.findElement(By.name("campoUpload")).sendKeys("C:" + File.separator + "Users" + File.separator
 
+ "Luana" + File.separator + "Pictures" + File.separator + File.separator + "imagem.jpg");

Somente isso!
Obrigada!
Reply all
Reply to author
Forward
0 new messages