Pré-requisitos
Instale o Selenium WebDriver:
bash
Copiar código
npm install selenium-webdriver
- Configure o WebDriver: Certifique-se de ter o driver apropriado para o navegador que deseja usar (por exemplo, ChromeDriver para o Google Chrome). Adicione-o ao seu PATH.
Código: Teste de Login com Selenium WebDriver
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class LoginTest {
public static void main(String[] args) {
// Configurar o caminho do ChromeDriver (substitua pelo caminho correto)
System.setProperty(“webdriver.chrome.driver”, “caminho/para/chromedriver”);
// Criar uma instância do WebDriver (neste caso, Chrome)
WebDriver driver = new ChromeDriver();
try {
// 1. Acessar a página de login
driver.get(“https://example.com/login”); // Substitua pela URL da sua página de login
// 2. Localizar o campo de email ou username
WebElement emailField = driver.findElement(By.id(“email”)); // Substitua ‘email’ pelo ID do campo na sua página
emailField.sendKeys(“usuario@example.com”); // Substitua pelo email de teste
// 3. Localizar o campo de senha
WebElement passwordField = driver.findElement(By.id(“password”)); // Substitua ‘password’ pelo ID do campo
passwordField.sendKeys(“suaSenhaSecreta”); // Substitua pela senha de teste
// 4. Clicar no botão de login
WebElement loginButton = driver.findElement(By.id(“loginButton”)); // Substitua ‘loginButton’ pelo ID do botão
loginButton.click();
// 5. Verificar se o login foi bem-sucedido
// Aguarde o título ou elemento específico da página após o login
Thread.sleep(5000); // Espera explícita (use WebDriverWait para algo mais robusto)
if (driver.getTitle().equals(“Dashboard”)) { // Substitua “Dashboard” pelo título esperado
System.out.println(“Login realizado com sucesso!”);
} else {
System.out.println(“Erro no login.”);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
// Fechar o navegador
driver.quit();
}
}
}
Explicação do Código
- Configuração do driver:
- Configura o caminho do ChromeDriver com System.setProperty.
- Cria uma instância do navegador com ChromeDriver.
- Navegação para a página de login:
- O método get() abre a URL especificada.
- Localização de elementos:
- Usa o método findElement() com seletores como By.id, By.name ou By.cssSelector para localizar elementos HTML.
- Interação com os elementos:
- Usa sendKeys() para preencher os campos de entrada.
- Usa click() para clicar no botão de login.
- Validação do login:
- Compara o título da página com o esperado ou verifica se um elemento específico foi carregado.
- Finalização:
- O método quit() encerra o navegador.
Aprimoramentos possíveis
- Uso de WebDriverWait: Para substituir Thread.sleep e aguardar condições específicas.
- Arquitetura de testes: Divida o código em funções ou use frameworks como TestNG ou JUnit.
Variáveis de ambiente: Substitua credenciais explícitas por variáveis de ambiente.