Java Selenium ile Otomasyon

Yeni Proje oluşturulur ayarlar bu şekilde olabilir.
<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.

--

--