Test Automation Amacı:
IDE'nin kötü yanları:
Selenium Webdriver test case oluşturmak ve çalıştırmak için kullanılan programlama arayüzü, RC de tarayıcıya erişmek için RC server a ihtiyaç duyar. Webdriver programlama arayüzüne sahiptir IDE si yoktur o yüzden Eclipse gibi IDE ye ihtiyaç duyulur.
RC varken ki çalışma mantığı: Yerel makinede Web Driver, uzak makinede RC server. Uzak makinede uygulamayı test ederken Web Driver'dan RC server'a komut gidecek, bu da tarayıcıyı otomatize edecek.
Selenium'un çalıştıracağı kodu tarayıcı kendinde bulunan tarayıcı driver'ını çalıştırarak gönderiyor kodu çalıştırmadan önce bu yüzden kullandığın tarayıcının driver'ını seçiyorsun. seleniumhq.org da var
Chromedriver.exe
Firefox için geckodriver.exe
IEdriver.exe
Selenium Webdriver tarayıcıyı direk çağırır.
Selenium Grid, aynı zamanda birçok makinede birçok test scripti çalıştırmak için kullanılır. Parallel çalıştırma, Hub-Node mimarisi yardımıyla gerçekleşir. Hub ve node jar dosyaları kullanılarak başlatılır..
Selenium 3 Kurulumu:
*Bu yazı 11 Ocak 2019 tarihinde yazılmıştır. Sonraki Selenium güncellemelerini içermez.
- elle ile yapılan işi azaltma
- tekrarlanan işleri azaltma
- zamandan kazanma
- testleri birçok kez tekrar çalıştırabilme
- Java, Python, C# ... dilleriyle
- Windows, Mac, Linux... işletim sistemleriyle (tarayıcı, JVM ya da Javascript desteği varsa)
- IE, Firefox, Chrome... tarayıcılarıyla uyumlu
- Sadece web app
- Raporlama özelliği yok -> ekstra uygulama ile TestNG gibi
- Image based testing için sınırlı destek -> ekstra uygulama Sikuli vb.
IDE'nin kötü yanları:
- Sadece Mozilla (Mozilla için eklenti programı)
- Sürekli değişen web uygulamalarında performans düşük
- Programlama mantığı yok, kendin kodla
- Data driven test yok
- No centralized maintenance of objects/elements
Selenium Webdriver test case oluşturmak ve çalıştırmak için kullanılan programlama arayüzü, RC de tarayıcıya erişmek için RC server a ihtiyaç duyar. Webdriver programlama arayüzüne sahiptir IDE si yoktur o yüzden Eclipse gibi IDE ye ihtiyaç duyulur.
RC varken ki çalışma mantığı: Yerel makinede Web Driver, uzak makinede RC server. Uzak makinede uygulamayı test ederken Web Driver'dan RC server'a komut gidecek, bu da tarayıcıyı otomatize edecek.
Selenium'un çalıştıracağı kodu tarayıcı kendinde bulunan tarayıcı driver'ını çalıştırarak gönderiyor kodu çalıştırmadan önce bu yüzden kullandığın tarayıcının driver'ını seçiyorsun. seleniumhq.org da var
Chromedriver.exe
Firefox için geckodriver.exe
IEdriver.exe
Selenium Webdriver tarayıcıyı direk çağırır.
Selenium Grid, aynı zamanda birçok makinede birçok test scripti çalıştırmak için kullanılır. Parallel çalıştırma, Hub-Node mimarisi yardımıyla gerçekleşir. Hub ve node jar dosyaları kullanılarak başlatılır..
Selenium 3 Kurulumu:
- Oracle Java SE indir (8.0)
- Selenium Server + Selenium server standalone indir
- Eclipse Java EE developers indir
- Eclipse'e Selenium jar larını ekle -> Project sağ tık - Build Path- Configure Build Path - Libraries'ten Add External Jars
- Selenium Standalone
- Selenium server
- Selenium server'ın lib'dekiler
- Selenium o an sayfada görülmeyen objeler için hata verir. Sayfayı aşağı ya da yukarı indirtmen gerekebilir kodda.
- Selenium'da elementleri bulmaya yarayan kodlar "by class" ın içine yazılmış o yüzden findelement fonksiyonunun argümanı by
- Selenium'daki element locator teknikleri:
- id
- name
- classname
- tagname
- cssSelector
- linkText
- partialLinkText
- xpath
- Sayfada hangi elemente ulaşmak istediğini Firebug gibi program yardımıyla ya da F12'ye basarak bulup koda öyle ekleyebilirsin.
*Bu yazı 11 Ocak 2019 tarihinde yazılmıştır. Sonraki Selenium güncellemelerini içermez.
Yorumlar
Yorum Gönder