‐ suporte curso selenium textfield - sandersbr/automacao-selenium GitHub Wiki

import java.util.List;

import org.junit.Assert;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.Select;

public class TestarTextField {
    
    @Test
    public void testeTextField() {
        
        /*
         * PASSOS:
         * 
         * 01. INSTANCIAR O NAVEGADOR;     
         * 02. INFORMAR O CAMINHO PARA ONDE O NAVEGADOR DEVE IR;  
         * 03. IDENTIFICAR O ELEMENTO(EXEMPLO: CAMPO DE TEXTO) QUE IREMOS TESTAR;         
         * 04. LOCALIZAR ESSE ELEMENTO;
         * ...
         * 00. MATAR A INSTANCIAD DO NAVEGADOR;
         *   
         */
        
        System.setProperty("webdriver.chrome.driver", "C:/driver/chromedriver.exe");                                        // PASSO 00
        WebDriver driver = new ChromeDriver();                                                                              // PASSO 01
        driver.get("file:///"+System.getProperty("user.dir")+"/src/main/resources/exemploFormularios/componentes.html");    //PASSO 02.
        //driver.get("http://localhost:8080/grpforfc");                                                                     //
        driver.findElement(By.id("elementosForm:nome")).sendKeys("Teste de escrita");                                       //
        //driver.findElement(By.id("elementosForm:nome")).getAttribute("value");                                            //
        Assert.assertEquals("Teste de escrita", driver.findElement(By.id("elementosForm:nome")).getAttribute("value"));     //

        driver.quit();
        
    }
    
    @Test
    public void deveInteragirComTextarea() {
        
        System.setProperty("webdriver.chrome.driver", "C:/driver/chromedriver.exe"); // PASSO 00
        WebDriver driver = new ChromeDriver(); // PASSO 01
        driver.get("file:///"+System.getProperty("user.dir")+"/src/main/resources/exemploFormularios/componentes.html"); //PASSO 02.        
        // campo com ele mento id="elementosForm:sugestoes";
        driver.findElement(By.id("elementosForm:sugestoes")).sendKeys("teste texto campo \n area");
        //driver.findElement(By.id("elementosForm:sugestoes")).getAttribute("value");
        Assert.assertEquals("teste texto campo \n area", driver.findElement(By.id("elementosForm:sugestoes")).getAttribute("value"));
        //driver.quit();
        
    }
    
    @Test
    public void deveInteragirComRadioButton(){
        
        //SETAR O CAMINHO DO CHROMEDRIVER.EXE NA PROPRIEDADE
        System.setProperty("webdriver.chrome.driver","C:/driver/chromedriver.exe");
        //INSTANCIAR O CHROMEDRIVER 
        WebDriver driver = new ChromeDriver();
        //INFORMAR PARA O DRIVER PARA ONDE ELE DEVE IR
          // exemplo: navegador acesse um arquivo que está dentro do diretório do usuário do projeto, indo pelos recursos até o arquivo
        driver.get("file:///" + System.getProperty("user.dir") + "/src/main/resources/exemploFormularios/componentes.html");
        //ENCONTRAR O RADIO BUTTON NA PÁGINA WEB
          //*[@id="elementosForm:sexo:0"]
        //PEDIR PARA O DRIVER ENCONTRAR O ELEMENTO E EM SEGUIDA CLICAR
        driver.findElement(By.id("elementosForm:sexo:0")).click();
        //VERIFICAR QUE REALMENTE ESSE ELEMENTO ESTÁ MARCADO/CLICADO
        //driver.findElement(By.id("elementos:sexo:0")).isSelected();
        //FAZER A CHECAGEM
        Assert.assertTrue(driver.findElement(By.id("elementosForm:sexo:0")).isSelected());
        
        driver.quit();
        
        
    }
    
    @Test
    public void deveInteragirComCheckBox(){
        
        //SETAR O CAMINHO DO CHROMEDRIVER.EXE NA PROPRIEDADE
        System.setProperty("webdriver.chrome.driver","C:/driver/chromedriver.exe");
        //INSTANCIAR O CHROMEDRIVER 
        WebDriver driver = new ChromeDriver();
        //INFORMAR PARA O DRIVER PARA ONDE ELE DEVE IR
          // exemplo: navegador acesse um arquivo que está dentro do diretório do usuário do projeto, indo pelos recursos até o arquivo
        driver.get("file:///" + System.getProperty("user.dir") + "/src/main/resources/exemploFormularios/componentes.html");
        //ENCONTRAR O CHECK BOX NA PÁGINA WEB
          //*[@id="elementosForm:comidaFavorita:2"]
        //PEDIR PARA O DRIVER ENCONTRAR O ELEMENTO E EM SEGUIDA CLICAR/MARCAR
        driver.findElement(By.id("elementosForm:comidaFavorita:2")).click();
        //VERIFICAR QUE REALMENTE ESSE ELEMENTO ESTÁ MARCADO/CLICADO
        //driver.findElement(By.id("elementosForm:comidaFavorita:2")).isSelected();
        //FAZER A CHECAGEM
        Assert.assertTrue(driver.findElement(By.id("elementosForm:comidaFavorita:2")).isSelected());
        
        driver.quit();
        
        
    }
    
      // TEST:
      // SELECIONAR UMA OPÇÃO DO COMBOBOX E VERIFICAR A OPÇÃO QUE FOI SELECIONADA
      // PRIMEIRO PRECISAMOS DESCOBRIR O ID DELE
      // *[@id="elementosForm:escolaridade"]
    
    @Test
    public void deveInteragirComComboBox(){
        
        
        System.setProperty("webdriver.chrome.driver","C:/driver/chromedriver.exe");    //SETAR O CAMINHO DO CHROMEDRIVER.EXE NA PROPRIEDADE         
        WebDriver driver = new ChromeDriver();    //INSTANCIAR O CHROMEDRIVER        
        driver.get("file:///" + System.getProperty("user.dir") + "/src/main/resources/exemploFormularios/componentes.html");    //INFORMAR PARA O DRIVER PARA ONDE ELE DEVE IR // exemplo: navegador acesse um arquivo que está dentro do diretório do usuário do projeto, indo pelos recursos até o arquivo        
        
        //driver.findElement(By.id("elementosForm:escolaridade"));    //ENCONTRAR O COMBOBOX NA PÁGINA WEB *[@id="elementosForm:escolaridade"]
        WebElement elemento = driver.findElement(By.id("elementosForm:escolaridade"));
        Select combo = new Select(elemento);
        //combo.selectByIndex(2);
        //combo.selectByValue("superior");
        combo.selectByVisibleText("2o grau completo");        
        
        Assert.assertEquals("2o grau completo",combo.getFirstSelectedOption().getText());
        
        
        //driver.quit();
        
        
    }
  
  @Test
  public void deveVerificarValoresCombo(){      
      
      System.setProperty("webdriver.chrome.driver","C:/driver/chromedriver.exe");         
      WebDriver driver = new ChromeDriver();        
      driver.get("file:///" + System.getProperty("user.dir") + "/src/main/resources/exemploFormularios/componentes.html");     

      WebElement elemento = driver.findElement(By.id("elementosForm:escolaridade"));
      Select combo = new Select(elemento);
      //ATÉ AQUI ELE ENCONTRA O COMBO E TRANSFORMA EM UMA INSTANCIA DO SELECT
      // A PARTIR DAQUÍ 
      //VAMOS VERIFICAR OS VALORES QUE ESTÃO DISPONÍVEIS NO COMBO
      List<WebElement> options = combo.getOptions();
      // O QUE EU POSSO FAZER?
      // EXEMPLO 1 - VERIFICAR A QUANTIDADE DE OPÇÕES DA LISTA
      Assert.assertEquals(8, options.size());
      // EXEMPLO 2 - VERIFICAR SE ALGUMA DETERMINADA OPÇÃO ESTÁ DISPONÍVEL NO COMBO
      boolean encontrou = false;
      for(WebElement option: options){
          if(option.getText().equals("Mestrado")) {
              encontrou = true;
              break;
          }
      }
      Assert.assertTrue(encontrou);
      
      //driver.quit();

  }
  
  @Test
  public void deveVerificarValoresComboMultiplo(){      
      
      System.setProperty("webdriver.chrome.driver","C:/driver/chromedriver.exe");         
      WebDriver driver = new ChromeDriver();        
      driver.get("file:///" + System.getProperty("user.dir") + "/src/main/resources/exemploFormularios/componentes.html");     

      WebElement elemento = driver.findElement(By.id("elementosForm:escolaridade"));
      Select combo = new Select(elemento);
      //ATÉ AQUI ELE ENCONTRA O COMBO E TRANSFORMA EM UMA INSTANCIA DO SELECT
      // A PARTIR DAQUÍ 
      // VAMOS VERIFICAR OS VALORES QUE ESTÃO DISPONÍVEIS NO COMBO
      
      
      //driver.quit();

  }
    
}

⚠️ **GitHub.com Fallback** ⚠️