Java ile Selenium WebDriver Başlangıç

Merhaba arkadaşlar, bu yazımda yeni başlayanlar için Java ile Selenium WebDriver aracını kullanarak test otomasyon projesi oluşturmayı anlatacağım.

Java programlama dili için IDE olarak JetBrains firmasına ait olan IntelliJ IDEA programının ücretsiz sürümü olan Community sürümünü kullanacağım. IntelliJ IDEA programını çalıştırdığınızda aşağıdaki gibi bir hoşgeldin sayfasıyla karşılaşırsınız. Bu ekrandan Create New Project seçeneğine tıklayın.

IntelliJ IDEA Welcome Page

New Project ekranından proje tipi olarak Maven seçin ve Next butonuna tıklayın.

IntelliJ IDEA New Project Page

Sonraki ekranda projenize GroupId ve ArtifactId vererek Next butonuna tıklayın.

IntelliJ IDEA New Project Page

Sonraki ekranda yer alan Project name alanına bir önceki ekranda ArtifcatId alanına yazdığımız default olarak dolu gelmektedir isteğe göre değiştirilebilir. Ayrıca Project location alanında projenin dosyalarının diskte hangi bölüme kaydedileceğini seçip Finish butonuna tıklayın.

IntelliJ IDEA New Project Page

Proje otomatik olarak oluşturulmuş olacaktır. Sağ alt köşede çıkan uyarıya
Enable Auto-import seçeneğine tıklayarak Pom.xml dosyasına ekleyeceğimiz kütüphanelerin otomatik olarak indirilip projeye eklenmesini sağlayabilirsiniz. Ben bu seçeneği aktif hale getiriyorum.

IntelliJ IDEA Enable-Auto-Import Feature

Kullanılacak Kütüphanelerin Projeye Dahil Edilmesi

Test projemizde Selenium WebDriver ve JUnit kütüphanelerini kullanıyor olacağız. Bunun için Pom.xml dosyasının içerisine bu kütüphaneleri eklememiz gerekmektedir. Selenium WebDriver ve JUnit kütüphanelerine ait maven repository bilgileri aşağıdaki gibidir:

<dependency>
    <groupid>org.seleniumhq.selenium</groupid>
    <artifactid>selenium-java</artifactid>
    <version>3.141.59</version>
</dependency>
<dependency>
    <groupid>junit</groupid>
    <artifactid>junit</artifactid>
    <version>4.12</version>
    <scope>test</scope>
</dependency>

Selenium WebDriver ve JUnit kütüphanelerini Pom.xml dosyasına ekledikten sonra otomatik olarak kütüphane dosyaları indirilecek ve projeye dahil edilecektir. İlgili düzenlemelerden sonra Pom.xml dosyasının son şekli aşağıdaki gibi olacaktır.

Pom.xml

Kütüphanelerin proje dahil edilmesinden sonra oluşturacağımız test senaryolarının hangi tarayıcıda simüle edilmesini istiyorsak ilgili tarayıcının driver dosyasını indirmemiz gerekmektedir. Ben bu projede Google Chrome tarayıcısını kullanacağım. Google Chrome driver dosyasına buradan ulaşabilirsiniz. Diğer tarayıcıların driver dosyalarına da buradan ulaşabilirsiniz.

İndirdiğim driver dosyasını RAR’dan çıkardıktan sonra C sürücüsünün altına driver adında bir klasör oluşturdum ve chromedriver.exe dosyasını buraya kopyaladım.

Chromedriver path

Test bölümünün altında java adında bir klasör bulunmaktadır bu klasörün üzerine sağ tıklayın New / Java Class seçeneğine tıklayın.

IntelliJ IDEA Create New Class

Oluşturacağınız class için bir isim verin ve OK butonuna tıklayın.


IntelliJ IDEA Create New Class

LoginPageTest class’ına ait kodlar aşağıdaki gibidir. Burada dikkat edilmesi gereken nokta chromedriver.exe dosyasının yolunu doğru girmeniz gerekmektedir.

import org.junit.Assert;
import org.junit.Before;
import org.junit.After;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class LoginPageTest {

    protected WebDriver driver;
    public static String loginUrl = "http://localhost:8383/DemoLogin/index.html";

    @Before
    public void setUp() {
        System.setProperty("webdriver.chrome.driver", "C:/driver/chromedriver.exe");
        driver = new ChromeDriver();
        driver.manage().window().maximize();
    }

    @Test
    public void correctLogin() {
        driver.get(loginUrl);
        driver.findElement(By.id("kullaniciAdi")).sendKeys("admin");
        driver.findElement(By.id("parola")).sendKeys("123456");
        driver.findElement(By.id("btnGirisYap")).click();
        Assert.assertEquals(driver.getTitle(), "Home Page");
    }

    @After
    public void tearDown() {
        driver.quit();
    }
}

Basit bir oturum açma sayfasına doğru kullanıcı adı ve parola girerek login olmayı test etmiş olduk sizde bu şekilde projelerinizde Selenium Web Driver kütüphanesini kullanabilirsiniz. Test sonucu da aşağıdaki gibidir.

Test sonucu

Faydalı olması dileğiyle…