Como marcar um CheckBox Selenium WebDrive

1,303 views
Skip to first unread message

Glauber Fernando de Oliveira

unread,
Apr 1, 2016, 3:48:18 PM4/1/16
to Selenium Brasil
Preciso marcar uma opção na tela.

Estou usando:

public void testCheckbox() throws Exception
{
WebElement comboboxElement = driver.findElement(By.name("tipoPlano"));
driver.findElement(By.xpath("//*[@name='tipoPlano']")).click();
Select combobox = new Select(comboboxElement);    
combobox.selectByValue("3");
}


Campos da página  <input name="tipoPlano" value="3" onclick="habilitarTipoTecnologia();" type="radio">
Selecionar.png

Andre Damasceno Dias

unread,
Apr 1, 2016, 4:03:57 PM4/1/16
to Glauber Fernando de Oliveira, Selenium Brasil
Boa tarde,

O que está acontecendo? Qual o erro?

Não estou com o eclipse aberto, então posso estar errado, mas o que está fazendo a linha que possui o comando "driver.findElement(By.xpath("//*[@name='tipoPlano']")).click();"

Pelo que percebi essa linha não selecionou nenhum item, por ser uma combo que você está tentando selecionar nas linhas abaixo, o erro pode estar ai

Caso não resolva manda o erro para analisarmos 


Andre Damasceno Dias
MBA, CTFL
Celular: (21) 98758-0608 
  
Play the game, test the game

--
Visite em https://groups.google.com/d/forum/selenium-brasil
---
Você recebeu essa mensagem porque está inscrito no grupo "Selenium Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para selenium-bras...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/selenium-brasil.
Para mais opções, acesse https://groups.google.com/d/optout.

Glauber Fernando de Oliveira

unread,
Apr 1, 2016, 4:19:26 PM4/1/16
to Selenium Brasil, glauber....@gmail.com
package testeautomatizado;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.util.Scanner;
import java.util.concurrent.TimeUnit;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.support.ui.WebDriverWait;

import com.itextpdf.text.Document;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;

public class teste {

WebDriver driver;
String line;
Scanner in;
String pagina;
String prtCampo;
String prtImgOne;
String prtImgTwo;
Document evidenciaDoc;
//Image imgPrimeira;
//Image imgSegunda;
@Before
public void setUp(){
driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(90, TimeUnit.SECONDS);
}
@After
public void tearDown() {
System.out.println("Executado com sucesso");
}

@Test
public void testCase() throws Exception {
pagina = "*****************************************";
driver.get(pagina);
evidenciaDoc = new Document();
PdfWriter.getInstance(evidenciaDoc, new FileOutputStream("**"));
evidenciaDoc.open();
//inserir titulo da evidência
evidenciaDoc.add(new Paragraph("Evidência **"));
PrintScreenTela imgTela = new PrintScreenTela();
inserirImagemPDF insetEvidenc = new inserirImagemPDF();
WebElement eUsuario = driver.findElement(By.name("j_username"));
eUsuario.sendKeys("*****");
prtCampo = "campoUsuario";
imgTela.screenTela(prtCampo,driver);
//screenTela(prtCampo);
prtImgOne = prtCampo;
Thread.sleep(100);
WebElement eSenha = driver.findElement(By.name("j_password"));
eSenha.sendKeys("*****");
prtCampo = "campoSenha";
imgTela.screenTela(prtCampo,driver);
//screenTela(prtCampo);
prtImgTwo = prtCampo;
//inserir as imagens no arquivo de evidência
insetEvidenc.inserirEvidencia(prtImgOne, prtImgTwo,evidenciaDoc);
//inserir a segunda pagina da evidência
evidenciaDoc.newPage();
prtImgOne = null;
prtImgTwo = null;
driver.findElement(By.name("button")).click();
Thread.sleep(6000);
WebElement comboboxElement = driver.findElement(By.name("tipoPlano"));
driver.findElement(By.xpath("//*[@name='tipoPlano']")).click();
Select combobox = new Select(comboboxElement);    
combobox.selectByValue("6");
}

Estou fazendo dessa forma, mas ele não marca o Rádio conforme anexo.

<input name="tipoPlano" value="3" onclick="habilitarTipoTecnologia();" type="radio">

Existe alguma outra forma de fazer  ?

Andre Damasceno Dias

unread,
Apr 4, 2016, 1:12:34 PM4/4/16
to Glauber Fernando de Oliveira, Selenium Brasil
Boa tarde,

Pelo que eu percebi você tá dando dois cliques no mesmo campo, seria isso?

Primeiro clique
driver.findElement(By.xpath("//*[@name='tipoPlano']")).click();

Segundo clique
combobox.selectByValue("3");





Andre Damasceno Dias
MBA, CTFL
Celular: (21) 98758-0608 
  
Play the game, test the game

Reply all
Reply to author
Forward
0 new messages