Selamlar Mürider, Software Test Automation hakkında bilgi sahibi olmaya çalışıyorum. Gerekli midir? Neden gereklidir? Neleri test edebilirim? Hackintosh kurmam gerekli midir? Neleri test edebilirim? Ücretsiz olarak nereden test edebilirim? İmza nasıl atılıyor?

test derken unit test mi pentest mi? duanla yasamadim ki bedduanla oleyim - Arif

Şimdi Unit Testing ile End to End testing farklı şeyler. Bahsettiğin selenium, puppeteer gibi libraryler end to end kısmında kullanılıyor. nce unit test nedir? Unit test yazılım projesi üzerinde test edilebilir birimlerin test edilmesine deniyor. Projenin diline gre test frameworkleri kullanıyorsun, mock objeleri yaratıyorsun ve test ettiğin unitin beklenen davranışı gsterip gstermediğini sonuca bağlıyorsun. rneğin toplama fonksiyonu yazdın, test frameworkune diyorsun ki 2+2=4 mü bak bakalım. Unit testing, eğer test yazılacağı gz nünde bulundurularak yazılmamış bir projeyse, kolayca uygulanamayabiliyor. Hatta testleri nce yazma yaklaşımı vardır, Test Driven Development diye. Araştırabilirsin. End to End testingde ise daha çok son kullanıcıyı simüle etme işi var. Yine kullandığın test frameworklerinin yanında bu libraryleri çağırıyorsun. Diyorsun ki, şu sayfaya git, şuna tıkla, bekle, şunu gr. Test frameworküne de diyorsun ki şu xpathe sahip element şu ise OK. Bunun içince UI Automation var, App Automation var, API automation var vs vs. Console applicationlar ve desktop applicationlar dışında genelde uygulanabilir. zellikle webde ve mobilde çok sık kullanılır. Neden gerekli? Şimdi bu soru aslında testin neden gerekli olduğuna kadar gidiyor. Bir hatayı sen geliştirme aşamasında farkedersen bir maliyeti vardır. Bir de productda farkedersen bunun 10 katı maliyeti vardır. Sadece finansal olarak düşünme, bugı fixlemek için gereken kaynağı ayırmak çok artıyor productdaki ürün için. Çek, düzenle tekrar publish et vs. O yüzden büyük projelerde, ya da belli bir standartta giden projelerde automated testler yazılır. Modül modül blersin projeyi parçalara fonksiyonalite olarak. Core function başta olmak üzere yazarsın automated testleri. Her versiyon değişikliğinde aynı testi çalıştırır sonuca bakarsın, çalışıyor mu çalışmıyor mu diye. İşin içine bir de CD / CI kavramları giriyor bu noktadan sonra. Kendimden rnek vereyim, ben bir web projesini devraldığım zaman oturur yazarım seleniumla en azından core functionality için testleri. Bir de Jenkins kurarım. Feature Branch'e her commit yaptığımda testler otomatik çalışır, testler ok dnüyorsa gider Development Branche pushlar. Sonra istediğimde yine Jenkinsle testleri tekrar çalıştırarak mastera pushlatır zelliği yayına alırım. Bunların hepsi ücretsiz ve çoğu da open source projelerdir. İşletim sistemine bir bağımlılığın yok, hackintosh falan da ilgili değil konuyla.

test derken unit test mi pentest mi? Selenium appium ile yapılan testler aslında çoğunlukla pentest. Biraz unittest tecrübem var fakat geliştirecek proje bulamadım İmza nasıl atılıyor?