www.A101.com.tr sitesinin testlerini gerçekleştirdiğimiz bu projemizde Cucumber BDD framework ile çalışıldı Cucumber Framework'ünde OOP(object oriented programming) konseptine uyarak POM(page object model) dizayn modeli kullanılmıştır
bu dosyamızda elimizde bulunan sitenin testlerini gerçekleştireceğimiz elemenlerin locatelerini sakladığımız classlarımız bulunmakta.İstediğimiz locate almak için oluşturduğumuz clasın adında constructar oluşturuyoruz ve içine PageFactory clasını çağırıp içerisine oluşturduğumuz driver çağırıp burada olduğunu belli ettiğimiz this key kullanılır. locatelerimizinde çağırabilinmesi için de FindBy notasyonu ile locatelerimizi oluşturabiliriz
runner clasımızda kullandığımız notasyonlar sayesinde burda çalıştırabildiğimiz feature dosyalarının hem raporlarını alabiliyoruz hemde istenilen methodalrın oluşturulması sağlanabiliyor
burda ise tüm kodlarımızın çalışmasını sağlayan methodlarımızın bulunduğu classlarımız vardır.Locatelerimizi , driverımız buraya çağırarak yapmak istediğimiz adımların kodlarını burda yazıyoruz
yardımcı classımız bu dosyamızda bize sürekli lazım olan classlarımız ve methodlarımız bulunmaktadır. İçerisinde projemizi daha anlaşılır hale getirecek classlarımız ve methodalrımız vardır bunlar Driver.class , ConfigReader.class , ReusableMehod.class vb. dosyalarımız bulunmaktadır.
feature dosyalarımızın bulunduğu dosyamızdır burda BDD (behavior Driven Development) kullanılarak ve Gherking dili kullanılarak featuremiz oluşturuluyor.oluşturduğumuz adımları direk method olarak oluşturma fırsatı tanımakta bu sayede java dili yada yazılım ile alakası olmayan kişilerinde yapılanları daha anlaşılır bir hale getirrilmesini sağlamaktadır
properties dosyamızda sürekli kullandığımız variablelarımız bulunmakta , bu veriabları kullanmak için properties dosyası Key = value olaraka oluşturulmakta ,burdaki bilgileri başaka classlara çağırabilmek için utilities dosyasından ConfigReader classı çağırırlara içindeki method saysınde bu bosyada bulunan bilgileri istediğimiz yerlere çağırabiliriz.
tüm çalışmlaraımızın ve kodlarımızın bilgilerinin bulunduğu bu dosyada aslında kullanmak istediğimiz kodalrın kütüphanesini dependencies tagının içerisine yerleştirip güncel bilgilerini sürekli olarak kendimizde tutabiliriz. burası sayaesinde tüm kodlara erişimi sağlayabiliriz.
Java11 ve Maven projesi oluşturulup cucumber BDD framework kullanılarak oluşturulmuştur.
Java8 ve Maven projesi oluşturulup cucumber BDD framework kullanılarak oluşturulmuştur.
GENYMOTİON uygulası kurularak burda
Samsung Galaxy S10 kuruldu
özellikler = Android 10(Api29) yüklendi , ekran 1440 X 3040 , 560 Dpi
A101 uygulamsı telefona sürükleyip bırakıldı kurulduktan sonra test işlemleri başlatıldı.
LÜTFEN BU ÖZELLİKLERE SAHİP TELEFONU KURUP TEST YAPINIZ.
ANDROİD STUDİO kuruldu
Pixel 2 API 29
özellikler= Android 10 (Api29) yüklendi, ekran 1080 X 1920
bu testimizde ise CHROME uygulamsı yüklendi chrome(105.0.5195.127).exe kullanıldı yeni güncelleme geldiyse driver dosyasında bulunan chromedriver.exe güncellenmesi gerekmektedir.burda oluşturduğumuız driverda context kullanılarak NATİVE_APP geçildi ve uygulama üzerinde AndroidFindBy notasyonu kullanılarak elementlerin locateleri alınmıştır
ANDROİD STUDİO kuruldu
Pixel 2 API 29
özellikler= Android 10 (Api29) yüklendi, ekran 1080 X 1920
bu testimizde ise CHROME uygulamsı yüklendi chrome(105.0.5195.127).exe kullanıldı yeni güncelleme geldiyse driver dosyasında bulunan chromedriver.exe güncellenmesi gerekmektedir.burda oluşturduğumuız driverda context kullanılarak CHROMİUM geçildi ve uygulama üzerinde FindBy notasyonu kullanılarak elementlerin locateleri alınmıştır. bu sayede burda direk webden test yapılır gibi Selenium özellikleri kullanılarak telefondada testler yapıldı
LÜTFEN BU ÖZELLİKLERE SAHİP TELEFONU KURUP TEST YAPINIZ.