Selenium İle Web UygulamaTestlerini Otomatikleştirmek
“Web Test/QA Engineer“ nedir, ne iş yapar?                  ?
“Web Test/QA Engineer“ nedir, ne iş yapar?Her deployment sonrasında, tüm siteyi, daha önce test etmiş olmasınarağmen bir k...
“Web Test/QA Engineer“ nedir, ne iş yapar?Her deployment sonrasında, tüm siteyi, daha önce test etmiş olmasınarağmen bir k...
“Web Test/QA Engineer“ nedir, ne iş yapar?Her deployment sonrasında, tüm siteyi, daha önce test etmiş olmasınarağmen bir k...
“Web Test/QA Engineer“ nedir, ne iş yapar?Her deployment sonrasında, tüm siteyi, daha önce test etmiş olmasınarağmen bir k...
Bu sunumda ne yapmak istiyoruz?İnsan katmanını aradan çıkarıp,onların ekmeğini elinden almak                          Zaaa...
Bu sunumda ne yapmak istiyoruz? İnsan katmanını aradan çıkarıp,onların ekmeğini elinden almak                           Za...
“Agile Testing“Testi olmayan süreç, agile süreç midir?
“Agile Testing“                  Testi olmayan süreç, agile süreç midir?●   Test, yazılım geliştirme yaşam döngüsünün(SDLC...
Selenium nedir?●   Jason Huggins tarafından ThoughtWorksde doğmuştur●   Tarayıcıda çalışır●   Bu sayede son kullanıcı davr...
Selenium 2.x●    Selenium önceki sürümlerde, Selenium RC ile beraber kullanılıp, tarayıcıyaBrowserBot enjekte ediyordu.●  ...
Flash/Flex testleriSelenium, bazı eklentilerle, Flash/Flex uygulamalarının testlerine de imkan tanır●   http://code.google...
Selenium alternatifleri?HP QTP●Borland SilkTest●Watir → WatiX●Canoo●
Bölümleri●   Selenium Core●   Selenium RC / Selenium Webdriver●   Selenium Grid (Cloud? SouceLabs?)●   Selenium IDE●   Sel...
Komutlar●    Sayfa komutları → “Sayfa aç“ gibi komutlar●   Element komutları → Sayfadaki öğeyi bulma ilgili komutlar●   Ve...
Element bulma yöntemleri (Locator)●   id=foo → ID seçici●   name=foo → Form öğeleri için isme göre seçici●   link=Devam → ...
Selenium IDE (Firefox Eklentisi)●   Basitçe kullanıcı davranışlarını kayıt ediyor/oynatıyor●   Hızlıca fonskiyonel testler...
Selenium IDE (Firefox Eklentisi)●   Basitçe kullanıcı davranışlarını kayıt ediyor/oynatıyor●   Hızlıca fonskiyonel testler...
“Selenium in action!“Bir e-posta kayıt formu düşünün●   Bir e-posta girilmemişse "Lütfen bir e-posta adresi girin" uyarısı...
http://sonsuzdongu.github.com/owtg-2012-selenium/
Sorular? ?
Teşekkürlerhttp://sonsuzdongu.comhttp://github.com/sonsuzdonguhttp://twitter.com/sonsuzdongucomhttp://facebook.com/sonsuzd...
Upcoming SlideShare
Loading in …5
×

Selenium

2,674 views

Published on

Özgür Web Teknolojileri Günleri 2012'de yaptığım "Selenium ile Web Uygulaması Testlerini Otomatikleştirmek" sunumu

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,674
On SlideShare
0
From Embeds
0
Number of Embeds
33
Actions
Shares
0
Downloads
33
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

Selenium

  1. 1. Selenium İle Web UygulamaTestlerini Otomatikleştirmek
  2. 2. “Web Test/QA Engineer“ nedir, ne iş yapar? ?
  3. 3. “Web Test/QA Engineer“ nedir, ne iş yapar?Her deployment sonrasında, tüm siteyi, daha önce test etmiş olmasınarağmen bir kez daha elle gezen, test eden, bu işlemi desteklenen tüm tarayıcılar,işletim sistemleri ve cihazlar için tekrarlayan, oluşan hataları bıkmadanusanmadan raporlayan sabırlı canlılar.
  4. 4. “Web Test/QA Engineer“ nedir, ne iş yapar?Her deployment sonrasında, tüm siteyi, daha önce test etmiş olmasınarağmen bir kez daha elle gezen, test eden, bu işlemi desteklenen tüm tarayıcılar,işletim sistemleri ve cihazlar için tekrarlayan, oluşan hataları bıkmadanusanmadan raporlayan sabırlı canlılar. Quality “Assurance“?
  5. 5. “Web Test/QA Engineer“ nedir, ne iş yapar?Her deployment sonrasında, tüm siteyi, daha önce test etmiş olmasınarağmen bir kez daha elle gezen, test eden, bu işlemi desteklenen tüm tarayıcılar,işletim sistemleri ve cihazlar için tekrarlayan, oluşan hataları bıkmadanusanmadan raporlayan sabırlı canlılar. Quality “Assurance“ = Kalite “Güvencesi“ / “Teminatı“
  6. 6. “Web Test/QA Engineer“ nedir, ne iş yapar?Her deployment sonrasında, tüm siteyi, daha önce test etmiş olmasınarağmen bir kez daha elle gezen, test eden, bu işlemi desteklenen tüm tarayıcılar,işletim sistemleri ve cihazlar için tekrarlayan, oluşan hataları bıkmadanusanmadan raporlayan sabırlı canlılar. Quality “Assurance“ = Kalite “Güvencesi“ / “Teminatı“ Proje yönetimi tarafından belirlenen specleri doğrulayan "otomatize" testleri development ekibiyle birlikte hareket ederek yazan, ve daha sonra o bölüm değişmediği sürece o bölümü bir daha test etme gereği duymayan, kalan boş zamanlarında kahvesini alıp komikli kedi videoları izleyen, videolardan sıkılınca kendini geliştiren, sistemi daha sağlam olmasını "temenni eden" testler hazırlayan, bilge canlılar.
  7. 7. Bu sunumda ne yapmak istiyoruz?İnsan katmanını aradan çıkarıp,onların ekmeğini elinden almak Zaaa XD
  8. 8. Bu sunumda ne yapmak istiyoruz? İnsan katmanını aradan çıkarıp,onların ekmeğini elinden almak Zaaa XD Aynı şeyleri tekrar tekrar test eden insanları,“kararlı sistemleri temenni eden mühendislere“ dönüştürmek <3
  9. 9. “Agile Testing“Testi olmayan süreç, agile süreç midir?
  10. 10. “Agile Testing“ Testi olmayan süreç, agile süreç midir?● Test, yazılım geliştirme yaşam döngüsünün(SDLC) bir parçası olmalıdır.● Regression testler hayat kurtarır● Continous Integration araçları ● Jenkins ● Hudson ● Cruise Control
  11. 11. Selenium nedir?● Jason Huggins tarafından ThoughtWorksde doğmuştur● Tarayıcıda çalışır● Bu sayede son kullanıcı davranışlarını birebir simüle etme imkanı tanır.● Tüm güncel tarayıcılarda + iphone ve androidde de çalışır● Fonksiyonel, regression ve yük testleri(*) yapılabilir● Açık kaynak kodlu, özgür bir yazılımdır (Apache 2.0)● Ücretsizdir
  12. 12. Selenium 2.x● Selenium önceki sürümlerde, Selenium RC ile beraber kullanılıp, tarayıcıyaBrowserBot enjekte ediyordu.● BrowserBot bir JavaScript, dolayısıyla JavaScriptin sınırları dışına çıkılamıyordu ● Modal pencereler ● Same Origin Policy● Daha sonra Webdriver doğdu ● BrowserBotun yaptığı işleri tarayıcıların sağladığı APIlar ile yapabilmek için ● Şimdilerde bir W3 Draft● Daha temiz bir API
  13. 13. Flash/Flex testleriSelenium, bazı eklentilerle, Flash/Flex uygulamalarının testlerine de imkan tanır● http://code.google.com/p/flash-selenium/● http://code.google.com/p/flex-ui-selenium
  14. 14. Selenium alternatifleri?HP QTP●Borland SilkTest●Watir → WatiX●Canoo●
  15. 15. Bölümleri● Selenium Core● Selenium RC / Selenium Webdriver● Selenium Grid (Cloud? SouceLabs?)● Selenium IDE● Selenium Domain Specific Language (Selenese)
  16. 16. Komutlar● Sayfa komutları → “Sayfa aç“ gibi komutlar● Element komutları → Sayfadaki öğeyi bulma ilgili komutlar● Verification komutları → verifyTitle(“fooBar“)● Assertion komutları → assertTitle( “fooBar“)
  17. 17. Element bulma yöntemleri (Locator)● id=foo → ID seçici● name=foo → Form öğeleri için isme göre seçici● link=Devam → <a href=“foobar“>Devam</a> için seçici● //div/a → XPath seçici (IEde sorunlu, Dinamik DOM)● dom=document.getElementById(foo) → DOM seçici● css=foo[name*=foo] → CSS Seçici
  18. 18. Selenium IDE (Firefox Eklentisi)● Basitçe kullanıcı davranışlarını kayıt ediyor/oynatıyor● Hızlıca fonskiyonel testler yazmak için kullanılabilir● Birçok farklı dil için çıktı verebiliyor● Selenese üretiyor● Bir çok fonksiyon yok● Sadece Firefox için var :(
  19. 19. Selenium IDE (Firefox Eklentisi)● Basitçe kullanıcı davranışlarını kayıt ediyor/oynatıyor● Hızlıca fonskiyonel testler yazmak için kullanılabilir● Birçok farklı dil için çıktı verebiliyor● Selenese üretiyor● Bir çok fonksiyon yok● Sadece Firefox için var :(
  20. 20. “Selenium in action!“Bir e-posta kayıt formu düşünün● Bir e-posta girilmemişse "Lütfen bir e-posta adresi girin" uyarısı çıkarılır● Geçersiz bir e-posta girilmişse "Lütfen geçerli bir e-posta adresi girin" uyarısı çıkarılır● E-posta alanına sadece @sonsuzdongu.com e-posta adresleri kabul edilir, başkauzantılı bir adres varsa "İzin verilmiyor" diye hata mesajı gösterilir●● E-posta kaydı başarılı ise "E-posta adresiniz başarıyla kaydedilmiştir" mesajı gösterilir ● http://sonsuzdongu.github.com/owtg-2012-selenium/
  21. 21. http://sonsuzdongu.github.com/owtg-2012-selenium/
  22. 22. Sorular? ?
  23. 23. Teşekkürlerhttp://sonsuzdongu.comhttp://github.com/sonsuzdonguhttp://twitter.com/sonsuzdongucomhttp://facebook.com/sonsuzdongucomhttp://yuxel.nethttp://github.com/yuxelhttp://twitter.com/yuxelhttp://facebook.com/osman.yuksel

×