Mimari gücü ve yetenekleri ile test senaryolarının sürdürülebilir bir düzlemde koşulmasına imkan veren Appium, geçtiğimiz birkaç yıl içinde mobil test otomasyonu projelerinde adeta defacto standardı hâline geldi. Bu yazımızda, birçok mobil test otomasyonu projesinde Keytorc olarak tercih ettiğimiz Appium ile ilgili genel yorumlarımızı aktaracağız.
Appium Nedir?
Appium native, hybrid ve mobil uygulamaların test otomasyonunda kullanılan açık kaynak kodlu bir test framework’üdür. WebDriver protokolü ile iOS ve Android uygulamalar üzerinde çalışabilmektedir.
Appium’un Felsefesi
Appium otomatize edilecek native uygulamaların, otomasyon için özel bir recompile ya da SDK gerektirmeyecek şekilde otomatize edilebilmesi amacıyla kurgulanmıştır. Bu sayede tercih edilen test pratiklerinin, framework’lerinin veya araçlarının kullanılabilmesi sağlanmaktadır. Esasen Appium, kod ve mobil cihaz arasında çalışan bir Proxy gibi hareket etmektedir. Açık kaynaklı bir proje olan Appium, oldukça geniş ve etkin bir kullanıcı topluluğuna sahiptir.
Geliştirme Ortamı
Appium herhangi bir test framework’ü ya da geliştirme dilini kullanmaya izin vererek mobil uygulamalarının testlerini otomatize etmeyi sağlar. Otomasyon testlerinin geliştirilmesi sırasında back-end API’lara ve veritabanlarına test kodundan erişim sağlanmasına olanak vererek otomasyon kodlarını zengileştirmeye izin verir. Kullanıcılar diledikleri geliştirme aracı ile Java, .Net, JavaScript gibi ana akım yazılım geliştirme dilleri dışında Ruby, Perl gibi daha birçok dili kullanabilirler.
Piyasadaki mobil cihaz model çeşitliliğindeki artışa paralel bir şekilde, mobil testler için bulut desteği daha kaçınılmaz hâle geliyor. Her ne kadar Appium, mobil cihaz emülasyonları sunsa da, gerçek cihaz kullanılması daha gerçekçi sonuçlar alabilmek için önerdiğimiz bir yöntemdir. Amazon Web Services, Xamarin, Saucelabs gibi birçok servis sağlayıcıdan bu noktada esnek çözümler temin edilebilir.
Keytorc olarak projelerimizde 2014’ten bu yana kullandığımız Appium ile toplamda 700’e yakın test senaryosunu iOS ve Android platformları için oluşturduk. Bu senaryolar otomasyon projelerinin en zorlu kısmı olan sürdürülebilirliği sağlamak için özenle tasarlansalar da olağan şekilde zaman içinde verimliliği azalmak durumunda. Ama Appium sayesinde daha uzun sürelerle kullanılabilir kalabiliyorlar.
———————–
Nisan ayında, Appium’un yaratıcısı Dan Cuellar (github.com/penguinho) Etkinlik Sponsoru olduğumuz TestIstanbul Konferansı’na konuşmacı olarak katılacak.
Ayrıntılı bilgi için testistanbul.org adresini ziyaret edebilirsiniz.