Java Selenium ile Otomasyon
Published in
Jun 27, 2024
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.10.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.22.0</version>
</dependency>
</dependencies>
pom.xml dosyası içeriği dependencies bu şekilde olabilir.
Şimdi ilk web sayfasını açalım.
import org.junit.jupiter.api.Test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class LoginTests {
@Test
void hepsiburadaLoginTesti(){
WebDriver driver = new ChromeDriver();
driver.get("https://www.hepsiburada.com");
}
}
Bu şekilde çalıştırılabilir.
Başarılı şekilde açıldığını gördük.
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class LoginTests {
WebDriver driver;
@BeforeEach
void setup(){
driver = new ChromeDriver();
driver.manage().window().maximize();
}
@Test
void hepsiburadaLoginTesti() throws InterruptedException{
driver.get("https://www.hepsiburada.com");
Thread.sleep(2000); // Statik bir şekilde bekleme yapılıyor.
driver.findElement(By.id("myAccount")).click();
Thread.sleep(2000);
driver.findElement(By.id("login")).click();
Thread.sleep(2000);
driver.findElement(By.id("txtUserName")).sendKeys("");
Thread.sleep(2000);
driver.findElement(By.id("txtPassword")).sendKeys("");
Thread.sleep(2000);
driver.findElement(By.id("btnLogin")).click();
}
// @AfterEach
// void tearDown(){
// driver.close();
// }
}
Thread.sleep yerine WebDriverWait kullanılarak sayfa dinamikleştirilebilir.