Sauce Labs

Büşra Hancı
Ebebek Tech
Published in
5 min readMar 11, 2022

Sauce labs yazılım test süreçlerinde pek çok mobil cihaza tek bir ortamdan erişimimizi sağlayan bir device farmdır. Bu yüzden öncesinde “DEVICE FARMS” nedir ondan bahsedelim.

Device farms; hiç bir test altyapısı tedarik etme ve yönetme ihtiyacı duymadan çok çeşitli masaüstü tarayıcılarda ve gerçek mobil cihazlarda test yapma olanağı tanımaktadır. Böylece web ve mobil uygulamalarınızın kalitesini artırmanızı sağlamaktadır.

Peki neden device farms ihtiyacı duyuldu? Bir de bu yönden düşünelim.

Akıllı telefon pazarının işletim sisteminin özelliklerine ve değişikliklerine göre cihaz yelpazesinin artmasıyla mobil geliştirmenin bir sıkıntısı keşfedildi; test uzmanları, uygulamaları yalnızca işletim sisteminin farklı sürümlerinde değil, aynı zamanda farklı fiziksel cihazlarda da test etme ihtiyacı hissettiler. IOS’ un piyasaya sürülmesinden sonra, telefon modellerinin yelpazesi küçüldü, bu nedenle IOS’la ilgili aslında bu sorun ortadan kalktı diyebiliriz. Ancak Android dünyasında bu sorun maksimum seviyeye ulaştı. Piyasada binlerce farklı model olduğu ve her gün daha fazlası çıktığı için uygulamaların ve oyunların her birinde kusursuz çalışması bekleniyordu. Böylece hiçbir test altyapısı tedarik etmeye gerek kalmadan pek çok android modeline rahatça ulaşabileceğimiz device farms ortaya çıktı.

Şimdi kullanılan bu device farmlardan biri olan Sauce Labs’an bahsetmeye geçebiliriz.

Sauce Labs , San Francisco / California merkezli bir Amerikan bulutta barındırılan, web ve mobil uygulama otomatik test platformu şirketidir.

Sauce Labs, Ağustos 2008'de kuruldu. Huggins, InfoWorld tarafından Sauce OnDemand’daki çalışması nedeniyle 2010'un en iyi CTO’larından biri olarak seçildi.

Sauce Labs müşterilerine 700'den fazla farklı tarayıcı platformu, işletim sistemi ve cihaz kombinasyonu üzerinde bulutta testler yapmasına olanak tanır ve Selenium, Appium ve JavaScript birim test çerçevelerini kullanarak masaüstü ve mobil uygulamaların otomatik ve manuel olarak test edilmesi için kapsamlı bir test altyapısı sağlar.

En güzel yanı da Sauce Labs kurulumu veya bakımı gerektirmez , testler çalışırken canlı kesme noktalarına erişilebilir, bu da bir sorunu manuel olarak araştırmanıza olanak tanır. Sauce Labs, müşteri güvenlik duvarlarının arkasındaki uygulamaları test etmek için Sauce Connect adlı güvenli bir test protokolü de sağlar.

Sauce Labs’ın bize sunduğu hizmetleri aşağıdaki gibi özetleyebiliriz;

Web siteleri ve mobil uygulamaları test edilir

Testler için yüzlerce tarayıcı ve işletim sistemi kombinasyonu ile web siteleri ve mobil uygulamaların her sürümde kusursuz çalışmasını sağlar.

Gerçek ve sanal cihazlarda test edilir

Çeşitli tarayıcılar, işletim sistemleri, gerçek cihazlar ve mobil emülatörler yelpazesinde test ederek kusursuz müşteri deneyimi sağlar.

Sorunsuz DevOps entegrasyonları

En popüler DevOps araçlarına yönelik eklentiler kullanarak her bir yazılım derlemesine ilişkin daha iyi bilgilerle CI/CD ardışık düzeninize sorunsuz bir şekilde otomatik testler eklemeyi sağlar.

Gelişmiş analitik ve araçlar

Gelişmiş analitik, test hatalarını saptamanıza olanak tanır ve hata ayıklama araçları, geliştirme ekiplerinin sorunları hızla belirlemesine yardımcı olarak sürüm hızını artırır.

Sauce Labs’da Nasıl Test Yaparız?

Sauce Labs’da üyelik satın aldıktan sonra çalıştırmayı istediğimiz uygulama dosyasını aşağıdaki gibi Live / Mobile App / Upload App alanından upload ettikten sonra “Choose Device” ile kullanmak istediğimiz sürümden istediğimiz cihazları seçebiliriz. Seçtiğimiz cihazda gerçek müşteri deneyimini yaşayarak farklı cihazlarda ekran boyutu, android desteği, versiyonu gibi sıkıntılar karşısında uygulamamızın nasıl tepki vereceğini rahatlıkla test edebiliyor olacaksınız.

Upload edeceğiniz uygulamanız şirket ağına bağlı olarak çalıştırılması gerekiyorsa local ortamda ayağa kaldırdıktan sonra uygulamanızı rahatlıkla çalıştırabilirsiniz.

Device Seçenekleri Ekranı

Peki uygulamamızı localde ayağa kaldırıp saucelabda nasıl çalıştırırız bir de buna bakalım…

Öncelikle https://docs.saucelabs.com/secure-connections/sauce-connect/installation/ linkinden işletim sisteminize uygun dosyayı indirmeniz gerekmektedir.

İndirdikten sonra neler yapacaksınız?;

· İndirilen klasör sıkıştırılmış dosyadan çıkarıldıktan sonra …\sc-4.7.1-win32\sc-4.7.1-win32\bin dosyasına gelinir, dosya pathinde başına cmd yazılarak komut çalıştırılır.

· https://accounts.saucelabs.com/am/XUI/#login/ linkinden saucelabs’a login olunur.

· Sol menüden TUNNELS seçilir. Açılan sayfada link kopyalanırak yukarda açılan cmd ekranında yapıştırılarak çalıştırılır. Burada hatırlatmak isterim ki linkin başında bulunan “./” ifadesinin cmd ekranında yapıştırmadan önce Windows işletim sistemlerinde silinmesi gerekmektedir.

· Aşağıdaki gibi bir robot size el sallıyorsa başarılı şekilde localde çalıştırdınız demektir 😊.

· Şimdi sıra localde ayağa kalkan saucelabs’ımızın saucelabs ekranından seçimine geldi. Device seçimi yapma ekranında aşağıdaki gibi “Sauce Connect Proxy” olarak localinizdeki adı seçebilirsiniz.

Sauce Labs’un güzel yanlarından biri de daha önce yaptığımız testler kaydedilmektedir. Bu sayede bunları açıp rahatlıkla izleyebilmekteyiz.Bunun için Sauce Labs’da Automated / Test Results’dan Environmentı Real Devices seçerek daha önce yapılan testleri görebilirsiniz.

PEKİ…Test Otomasyonda Sauce Labs Kullanılır mı?

Sorumuzun cevabı evet, Sauce Labs’da farklı otomasyon framework’lerinde yazmış olduğunuz testlerinizi de kolaylıkla çalıştırabilirsiniz.

Kısaca manuel testler dışında otomasyon testlerinin kurulumundan da bahsedecek olursak,

· Test otomasyon projesine aşağıdaki config’ler eklenir.

-URL, ID, Access Key bilgilerine “Account/User Settings” sayfasından ulaşabilirsiniz.

-Appium App, Device Name, Target Platform bilgilerini kullanacağınız cihazın özelliklerinden alabilirsiniz.

· Configleri ekledikten sonra, projenizi run edebilirsiniz.

· Test bittikten sonra çalıştırdığınız testlerin sonuçlarını, Automated/Test Results veya Archive seçtiğinizde listelenmiş halde göreceksiniz.

· Test sonuçlarında manuel testte olduğu gibi, videolu kaydı, logları, API isteklerini görüntüleyebilirsiniz.

Yararlanılan Kaynaklar

https://en.wikipedia.org/wiki/Sauce_Labs

https://saucelabs.com/

https://medium.com/@slava.chernikoff/7-best-device-farms-to-test-your-ios-and-android-applications-7efb834dab25

--

--