Mobil Test - Hızlı Kılavuz

Gerçek öğreticiye başlamadan önce biraz eğlenelim. Aşağıdaki listeye bir göz atın. Günümüzün yoğun ve telaşlı yaşam tarzında her zaman yüzleşmemiz gereken bu temel işlerle kolayca ilişki kurabilirsiniz -

  • Elektrik faturamı ödemek istiyorum.

  • Yöneticimle iletişime geçmem ve raporlarımı acilen sunmam gerekiyor.

  • Çocuğum için yeni kıyafetler almak istiyorum ama mağazaya gidecek vaktim yok.

  • Oh ... akşam 22; Uçuşuma geç kalıyorum. Taksim nerede?

  • Bu şehre ilk defa geldim; hangi otelde yer ayırtmalıyım?

Şimdi kendinize cevap verin. Bu aktiviteleri saniyeden kısa sürede gerçekleştirmek için neye ihtiyacınız var? Cevap şu olurdu -

  • Bir akıllı telefon,
  • İnternet bağlantısı ve
  • İşi yapmak için bir mobil uygulama.

Bu, günümüz çağında bir mobil uygulamanın önemini anlamamızı sağlıyor. Akıllı telefonunuz aracılığıyla her şey akıllı bir şekilde yapılıyor. Her gün, hayatımızı kolaylaştırmak için piyasaya sürülen yeni bir uygulama veya araç hakkında bilgi ediniyoruz.

Hakkında iyi bilinen bir olay var Gowalla. Milyonlarca insan, 2007'de başlayan ve beş yıl sonra kapatılan bu konum tabanlı sosyal ağdan keyif aldı. Birden fazla sorun Gowalla'nın kitlesel itiraza ulaşmasını engelledi. Ortaya çıkan başlıca nedenlerden biri "Giriş yapmak o kadar da kullanıcı dostu değildi".

Başarılı bir mobil uygulamaya sahip olmak için, güzel bir mobil uygulama geliştirmenin tek şart olmadığını anlamamız gerekiyor. Kullanıcıların beğenilmesi için bir mobil uygulamanın kapsamlı bir şekilde test edilmesi gerekir. Sonuçta, kullanıcı deneyimi herhangi bir yazılımı başarılı kılar.

Mobil teste geçmeden önce, mobil platformların temellerini anlamanız önerilir. Esas olarak cep telefonunun işletim sistemini, cihazın türünü ve mobil uygulamanın türünü içerir. Bunların her biri hakkında yeterli bilgiye sahip olmak, uzun vadede sağlam test planlaması yapmamıza yardımcı olacaktır.

Mobil İşletim Sistemleri

Aşağıdaki tablo, piyasada bulunan popüler mobil işletim sistemlerinden bazılarına genel bir bakış sunmaktadır -

İşletim sistemi Tarafından geliştirilmiş Popülerlik (Düşük, Orta, Yüksek) Mevcut en son sürüm
Android Google Inc Yüksek Lolipop, Android 5.0-5.1
iOS Apple Inc Yüksek iOS 8.X
Blackberry Blackberry Ltd Düşük Böğürtlen 10.2.1
Windows Microsoft Inc Orta Windows 10 Mobile
Symbian Symbian Vakfı Düşük Üretimden kaldırıldı

Bazı genel anketlere dayanarak, piyasadaki farklı işletim sistemlerinin kullanımı aşağıda gösterildiği gibi tasvir edilebilir.

Mobil cihazlar tipik olarak elde taşınan bilgisayarlardır. Fiziksel boyut, donanım ve yazılım kapasitesi, ne anlama geldikleri vb. Gibi özelliklerine göre birçok çeşidi vardır.

Aşağıdaki tabloya bir göz atın. Tabletleri, e-kitap okuyucuları ve akıllı telefonları özelliklerine göre ayırır.

cihaz Tabletler E-kitap Okuyucular Akıllı telefonlar
Ne olduğunu Tabletler taşınabilir bilgisayar cihazlarıdır. Geleneksel bilgisayarların aksine, klavyeleri veya fareleri yoktur, ancak ekranın tamamı dokunmaya duyarlıdır. E-kitap okuyucular - e-okuyucular olarak da adlandırılırlar - tablet bilgisayarlara benzerler, ancak esas olarak e-kitap okumak için tasarlanmıştır (dijital, indirilebilir kitaplar). Akıllı telefon, telefon hizmeti sağlamanın yanı sıra çeşitli uygulamaları çalıştırmak için tasarlanmış güçlü bir cep telefonudur.
İçin kullanılır Geleneksel bilgisayarlar veya masaüstü bilgisayarlarla yapabileceğimiz neredeyse tüm işler. E-kitap okumak Web'de gezinme, video izleme, e-kitap okuma ve oyun oynama
Misal Samsung Tabletler Amazon Kindle, Barnes ve Noble Nook. Sony akıllı telefonlar, Samsung akıllı telefonlar, Apple iPhone.

Test planlaması yaparken göz önünde bulundurmanız gereken kritik bir faktör Mobil Uygulama türünü kontrol etmektir. Esas olarak üç tür mobil uygulama ile karşılaşacaksınız: Mobil Web, Yerel Uygulama ve Karma Uygulama. Sınıflandırma, geliştirme çabalarına ve Uygulama yeniden dağıtım stratejisine dayanmaktadır. Her birini ayrıntılı olarak anlayalım.

Mobil Web

Web uygulamaları gerçek uygulamalar değildir; bunlar aslında bir web tarayıcısı yardımıyla akıllı telefonunuzda açılan web siteleridir. Mobil web siteleri, tüm birincil uygulama türleri arasında en geniş kitleye sahiptir.

  • Example- Öğreticiler Noktası

  • Benefits -

    • Kolay erişim.

    • Kolay Geliştirme - Duyarlı tasarım geliştirmek ve içeriği daha küçük bir ekranda / donanımda düzgün şekilde görüntülenecek şekilde yeniden yapılandırmak, herhangi bir masaüstü web sitesini mobil uyumlu hale getirecektir.

    • Kolay güncelleme - Tek bir yerde güncellemeniz yeterlidir ve tüm kullanıcılar otomatik olarak sitenin en son sürümüne erişebilir.

    • Yerel veya hibrit uygulamaya kıyasla kurulum gerektirmez.

  • Downside -

    • Mobil web siteleri bazı özellikleri kullanamaz. Örneğin, dosya sistemine ve yerel kaynaklara erişim web sitelerinde mevcut değildir.

    • Mevcut web sitelerinin çoğu çevrimdışı yetenekleri desteklemez.

    • Kullanıcılar, uygulamanın simgesi ana ekranlarında sürekli bir hatırlatma olarak görünmez. Web sitesinin yalnızca bir web tarayıcısında açılması gerekir.

    • Yerel ve karma uygulamalar App Store ve Google Play'de görünürken, web uygulamaları görünmez. Dolayısıyla yeniden dağıtım o kadar mantıklı değil.

Yerel Uygulama

Yerel bir uygulama, özellikle tek bir platform için geliştirilmiştir. Bir uygulama mağazası (Google Play Store veya Apple'ın App Store gibi) aracılığıyla yüklenebilir.

  • Example - Whatsapp, Facebook.

  • Benefits -

    • Yerel Uygulamalar cihazda canlıdır ve cihaz ana ekranındaki simgelerden erişilir.

    • Tüm cihaz özelliklerinden tam olarak yararlanabilirler - kamerayı, GPS'i, ivmeölçeri, pusulayı, kişi listesini vb. Kullanabilirler. Ayrıca hareketleri de (standart işletim sistemi hareketleri veya yeni ve uygulama tanımlı hareketler) dahil edebilirler.

    • Yerel uygulamalar, cihazın bildirim sistemini kullanabilir ve çevrimdışı çalışabilir.

    • Yayıncılar, yeni bir içerik parçası her yayınlandığında veya dikkatleri gerektiğinde kullanıcıları uyararak push bildirimlerini kullanabilir.

    • Yerel Uygulamalar, her işletim sisteminin UI tasarımını korur, böylece en iyi kullanıcı deneyimini sunarlar. Örneğin, bir Yerel Uygulama, Android'de sola hizalı bir başlığa ve iOS'ta ortaya hizalanmış bir başlığa sahip olabilir.

    • Uygulama mağazasında bulunduğu için yeniden dağıtım kolaydır.

  • Downside -

    • Uygulamayı oluşturmanın yüksek maliyeti: Bir platform için geliştirilen yerel uygulamalar başka bir platformda çalışmayacaktır. Android için oluşturulmuş bir Uygulama iOS'ta çalışmayacaktır. İOS için tamamen farklı bir Uygulama geliştirmemiz gerekiyor. Bu nedenle, Uygulamanın birden çok sürümünü korumamız gerekiyor.

    • Yerel Uygulamalar yayınlasanız bile, mobil daha fazla trafik getirdiği için mobil web sitesini bakımlı tutmak isteyeceksiniz. Yani bakım daha yüksektir.

Hibrit Uygulama

Hibrit Uygulamalar, mevcut web sitelerindeki içeriği Uygulama biçiminde göstermenin bir yoludur. Web Uygulaması ve Yerel Uygulamanın bir karışımı olarak iyi tanımlanabilirler.

  • Example - Instagram, Wikipedia.

  • Benefits -

    • Bir Hibrit Uygulama geliştirmek, Yerel Uygulama geliştirmekten daha ucuzdur. Çapraz platformlar için oluşturulabilir, yani Uygulama geliştirme için daha düşük maliyet.

    • Bakımı yapılacak çok sayıda sürüm olmadığından bakımı kolaydır.

    • Cihazda bulunan birkaç özellikten yararlanabilir.

    • Dağıtımı kolaylaştıran App Store'da bulunabilir.

    • Yalnızca uygulamanın içine yerleştirilmiş bir tarayıcıya sahiptir.

  • Downside -

    • Yerel Uygulamalara kıyasla grafikler işletim sistemine daha az alışkın.

    • Karma Uygulamalar, Yerel Uygulamalardan daha yavaştır.

Cihaz Testi

Bu tür testler genellikle bir mobil cihazın kalitesini sağlamak için yapılır. Test, bir mobil için donanım ve yazılım testini içerir. Burada, genellikle mobil cihazlarda gerçekleştirilen farklı test türlerini tartışacağız.

Birim Testi

Birim testi, bir mobil cihaz geliştirmesinin bölümlerinin genellikle geliştirici tarafından test edildiği bir test aşamasıdır. Donanım testi, yazılım testi ve mekanik test içerebilir.

Fabrika Testi

Fabrika testi, mobil cihazlarda bir tür akıl sağlığı kontrolüdür. İmalat veya montajdan kaynaklanan herhangi bir kusur olmadığını doğrulamak için otomatik olarak yapılır. Esas olarak aşağıdaki testleri içerir -

  • Mobil uygulama testi
  • Donanım testi
  • Pil (şarj) testi
  • Sinyal alma
  • Ağ testi
  • Protokol testi
  • Mobil oyun testleri
  • Mobil yazılım uyumluluk testi

Sertifika Testi

Sertifika testi, bir mobil cihaz piyasaya sürülmeden önce yapılan kontroldür.

Uygulama Testi

Mobil uygulama testi, elde tutulan mobil cihazlar için geliştirilen bir yazılımın işlevselliği, kullanılabilirliği ve tutarlılığı açısından test edildiği bir süreçtir. Bir mobil cihazda gerçekleştirilebilecek farklı test türleri vardır. Örneğin,

  • Fonksiyonel test
  • Laboratuvar testi
  • Performans testi
  • Bellek Sızıntı Testi
  • Kesinti Testi
  • Kullanılabilirlik testi
  • Kurulum testi
  • Sertifika Testi
  • Güvenlik Testi

Anahtar noktaları

  • Cihaz testi genellikle mobil cihazın kendisini kontrol etmek için gerçekleştirilirken, Mobil uygulama testi, seçilen cihaz üzerinde çalışacak bir uygulamanın test edilmesini içerir.

  • Buna cihaz testi dediğimizde, donanım testi bunun bir parçası olur. Mobil uygulama testi durumunda, bu, yani test edilen uygulamanın donanım entegrasyonu gerektirip gerektirmediğine bağlıdır, o zaman donanım testi dahil edilecektir.

  • Otomasyon, Mobil Cihaz testi ve Mobil uygulama testi için mümkündür.

Mobil test durumunda bir şey kendi kendini açıklayıcıdır. Mobil test yapmak için bir mobil cihaza ihtiyacınız var. Bu, ürünümüzün belirli bir mobil sette nasıl çalışacağına ve nasıl görüneceğine erişmek içindir.

Uçak bileti rezervasyon sistemi için bir uygulama geliştirdiğimizi varsayalım. Ürün tamamen geliştirildikten sonra, mobil testin bir parçası olarak, uygulamanın Android telefonlar, iOS, Blackberry telefonlar ve diğer farklı türde tabletler ve iPad'ler gibi başlıca kullanılan tüm cihazlarda beklendiği gibi çalışıp çalışmadığını kontrol etmemiz gerekir.

Bu tür bir kontrol yapmak için, bu tür her cihazı edinmemiz gerekir ve ardından uygulamanın beklentiye göre davranıp davranmadığını kontrol edebiliriz. Evet doğru düşündünüz, bir ürün sahibi olarak bu kadar çok sayıda mobil cihaz tedarik etmek ve test yapmak için bunu çok pahalı bulacaktır. Peki herhangi bir akıllı alternatif var mı?

Bu sorunun çözümü Mobil Simülatörleri ve Mobil Emülatörleri kullanmaktır. Bunlar öncelikle bir akıllı telefonun önemli özellikleri için simülasyon sağlamak üzere tasarlanmış yazılım programlarıdır. Doğaları gereği çok benzerler, bu yüzden bazen birbirlerinin yerine kullanılırlar.

Bir Emülatör / Simülatör üzerinde yapılan testin gerçek bir cihazda test etmekten ne kadar farklı olduğunu karşılaştıralım -

Gerçek Cihaz Emülatör / Simülatör
Fiyat Gerçek cihazlar almak size çok pahalıya mal olacak. Neredeyse ücretsiz, sadece indirip yüklememiz gerekiyor
İşleme hızı Daha hızlı işlemeye sahiptir; ancak ağ gecikmesi normal olabilir. Gerçek cihazlara göre daha yavaştır. Yerel ağa veya buluta bağlı gerçek cihazlardan daha az gecikme gözlemledi.
Hata ayıklama Hata ayıklama o kadar kolay değil. Bir uygulamanın adım adım hata ayıklamasını sağlar. Ayrıca, ekran görüntülerini yakalamak için verimli bir yol sağlar.
Web Uygulama Testi Web uygulamaları normal bir şekilde test edilebilir. Bir web uygulamasını test etmek çok daha kolaydır.
Güvenilirlik Gerçek bir cihaz üzerinde test yapmanın büyük bir avantajı her zaman doğru sonuçlar vermesidir. Her tür kullanıcı etkileşimini simüle edemez; bu nedenle bazen yanlış sonuçlara yol açabilir. Dolayısıyla, güvenilirlik söz konusu olduğunda düşük puan alır.

Bir simülatör / emülatör aşağıdaki özellikleri taklit edemez -

  • Mobil cihaz pili
  • Mobil cihazın kamerası
  • Gelen çağrılar ve SMS gibi kesintileri taklit etmek zordur.
  • Mobil cihaz bellek kullanımı için çok gerçekçi olmayan simülasyon.

Şimdi mobil simülatörler ve mobil emülatörler hakkında daha fazla bilgi edelim. İkisi arasında belirli farklılıklar var. Aşağıdaki tablo, bir simülatör ile bir emülatör arasındaki temel farkı listeler.

Emülatör Simülatör
Ne taklit ediyor

Mobil cihaz yazılımı

Mobil cihaz donanımı

Mobil işletim sistemi

Cihazın dahili davranışı.

Donanımı taklit etmez.

Nasıl elde edilir Genellikle cihaz üreticisi tarafından sağlanır. Genellikle cihaz üreticisi veya başka bir şirket tarafından sağlanır.
İç yapı Makine düzeyinde montaj dilinde yazılmıştır. Üst düzey bir dilde yazılmıştır.
Hata ayıklama Hata ayıklama için daha uygundur. Hata ayıklama amacı için uygun değildir.
Verim Emülatörler gerçekten yavaştır. Gerçek donanımı taklit etmek, genellikle yazılımın yerel olarak çalışacağından daha yavaş çalışmasını sağlar. Emülatörlerden daha hızlı.
Misal Google'ın Android SDK'sı Apple'ın iOS Simülatörü

Peki, mobil test için en iyi seçim nedir? En iyi uygulama, gerçek geliştirme devam ederken bir emülatör veya simülatör kullanmamız gerektiğini gösterir. Ürünü sonlandırmadan önce, seçilen gerçek cihazlarla bir sağlık kontrolü yapılmalıdır. Örneğin, çok sayıda Android akıllı telefon kullanıcısı var, bu nedenle akıllı seçim, en son Android cihaz için bir akıl sağlığı kontrolü yaptırmak ve simülatörler üzerinden regresyon gerçekleştirilebilir.

Mobil uygulama testinin basit bir tanımı şöyle olacaktır: "Mobile application testing bir süreçtir application softwareElde taşınan mobil cihazlar için geliştirilen, işlevselliği, kullanılabilirliği ve tutarlılığı açısından test edilmiştir. Mobil uygulama testi otomatik veya manuel test türü olabilir. "

Note - Daha iyi anlamak için, çevrimiçi uçak bileti rezervasyon sistemi için bir mobil uygulamayı test ettiğimizi varsayacağız.

Fonksiyonel test

İşlevsel test, herhangi bir uygulamanın tanımlanan gereksinimlere göre çalıştığından emin olmak için en temel testtir. Diğer kullanıcı arayüzü tabanlı uygulamalara benzer şekilde, mobil uygulamalar kullanıcı senaryolarında bir dizi insan etkileşimi gerektirir.

Örnek test senaryoları -

  • Yalnızca seçilen tarihte seçilen bir kaynak varış noktası için uçuş uygunluğunun görüntülendiğini doğrulayın.

  • Geçmiş tarihlerin arama sonuçlarına dahil edilmediğini doğrulayın.

Uyumluluk Testi

Uyumluluk testi, mobil uygulama testi söz konusu olduğunda en yüksek yığına sahiptir. Genel olarak bir mobil uygulama uyumluluk testinin amacı, bir uygulamanın temel işlevlerinin belirli bir cihazda beklendiği gibi davranmasını sağlamaktır. Uyumluluğun kendisi yalnızca birkaç dakika sürer ve önceden iyi bir şekilde planlanabilir.

Hangi mobil cihaz uyumluluk testlerinin yapılması gerektiğine karar vermek kolay bir iş olmayacak (çünkü mevcut tüm cihazlarla test yapmak sadece imkansızdır). Bu nedenle, mümkün olan her kombinasyonla bir test matrisi hazırlayın ve müşteri tarafından önceliklendirilmesini sağlayın.

Örnek test senaryoları -

  • Uçuş aramanın Android cihazla başarıyla gerçekleştirildiğini doğrulayın.
  • Apple iPad için uçuş aramanın başarıyla gerçekleştirildiğini doğrulayın.

Yerelleştirme Testi

Günümüzde uygulamaların çoğu küresel kullanım için tasarlanmıştır ve diller, saat dilimleri vb. Gibi bölgesel yolları dikkate almak çok önemlidir. Birisi saat dilimini değiştirdiğinde uygulamanın işlevselliğini doğrulamak önemlidir. Bazen batı tasarımlarının doğu ülkelerindeki izleyicilerle çalışmayabileceği veya tam tersi olabileceği dikkate alınmalıdır.

Örnek test senaryoları -

  • Mobil uygulamayı farklı dillerde (veya İngilizce dışında bir dilde) kullandığımızda kullanıcı arayüzü veya veri kesme sorunu olmadığını doğrulayın.

  • Mobil uygulamanız için saat dilimi değişikliklerinin özenle işlendiğini doğrulayın.

Laboratuvar testi

Genellikle ağ taşıyıcıları tarafından gerçekleştirilen laboratuvar testleri, tüm kablosuz ağın simülasyonu ile yapılır. Bu test, bir mobil uygulama bazı işlevleri gerçekleştirmek için ses ve / veya veri bağlantısını kullandığında herhangi bir aksaklık bulmak için gerçekleştirilir.

Örnek test senaryoları -

  • Bir müşteri destek ekibiyle sesli sohbet ederken herhangi bir aksaklık olmadığını doğrulayın.

Performans testi

Mobil performans testi, istemci uygulama performansını, sunucu performansını ve ağ performansını kapsar. Performans testi senaryolarının tüm bu alanları kapsadığından emin olmak önemlidir. Performans testi araçlarının yardımıyla, önceden tanımlanmış yükler ve işlem karışımı göz önüne alındığında, mevcut ağları, sunucuları ve sunucu tarafı uygulama darboğazlarını belirlemek zor değildir.

Örnek test senaryoları -

  • Mevcut uçuş kontrolünün yalnızca makul bir süre aldığını doğrulayın.

  • Uçuş durumu kontrol edilirken cep telefonunun normal şekilde çalıştığını ve kilitlenmediğini doğrulayın.

Stres testi

Fonksiyon ve kullanıcı arayüzü testi sırasında fark edilmeyebilecek istisnaları, takılmaları ve kilitlenmeleri bulmak için stres testi bir zorunluluktur. İşte stres testi için bazı kriterlerin bir listesi -

  • Kırılma noktasına ulaşmaya çalışmak için uygulamanıza mümkün olduğunca çok veri yükleyin.

  • Aynı işlemleri tekrar tekrar yapın.

  • Tekrarlanan işlemleri çeşitli hızlarda gerçekleştirin - çok hızlı veya çok yavaş.

  • Uygulamanızı uzun bir süre çalışır durumda bırakın, hem cihazla etkileşimde bulunun hem de boşta bekletin veya slayt gösterisi gibi uzun süren bazı otomatik görevleri gerçekleştirin.

  • Uygulamanıza rastgele ekran dokunuşlarını ve tuş vuruşlarını gönderin.

  • Cihazınızda birden çok uygulama çalıştırarak uygulamanız ve diğer cihaz uygulamaları arasında sık sık geçiş yapabilirsiniz.

Örnek test senaryoları -

  • İç hat uçuşlarını aramak için 1000 kullanıcının mobil uygulamaya eriştiğini kontrol edin.
  • İç hat uçuşlarını aramak için 1000 kullanıcının mobil uygulamaya eriştiğini kontrol edin.

Güvenlik Testi

Bilgisayar korsanlığı, kimlik doğrulama ve yetkilendirme politikaları, veri güvenliği, oturum yönetimi ve diğer güvenlik standartlarına yönelik güvenlik açıkları, mobil uygulama güvenlik testinin bir parçası olarak doğrulanmalıdır. Uygulamalar, bir ağ üzerinden kullanıcının kimliğini doğrularken kullanıcı adını ve parolaları şifrelemelidir.

Güvenlikle ilgili senaryoları test etmenin bir yolu, cep telefonunuzun verilerini OWASP Zed Attack Proxy gibi bir proxy sunucu üzerinden yönlendirmek ve güvenlik açıklarını aramaktır.

Örnek test senaryoları -

  • Uygulamanın iki farklı mobil cihazda aynı kullanıcı kimlik bilgileriyle çalıştırılmadığını doğrulayın.

  • 15 dakikadan daha uzun süre etkin olmayan bir oturumun süresinin otomatik olarak dolduğunu doğrulayın.

Bellek Sızıntı Testi

Diğer bilgisayarlara kıyasla mobil aygıtların belleği çok sınırlıdır ve mobil işletim sistemleri, aşırı bellek kullanan ve zayıf bir kullanıcı deneyimine neden olan uygulamaları sonlandırmak için varsayılan bir davranışa sahiptir.

Bellek testi, her uygulamanın kullanıcı yolculuğu boyunca optimize edilmiş bellek kullanımını sürdürmesini sağlamak için mobil uygulamalar için son derece önemlidir. Sistem mimarisi bir emülatörden gerçek bir cihaza farklı olduğundan, gerçek hedef cihaz üzerinde bellek testi yapmamız önerilir.

Örnek test senaryoları -

  • Uçuş uygunluğunu on kez kontrol edin ve her kontrol için bellek kullanımının arttığını not edin.

  • Uygulamayı on dakika çalışır durumda tutun ve bellek kullanımının sabit kalıp kalmadığını gözlemleyin.

Güç Tüketimi Testi

Farklı mobil cihazlarda kullanılan çeşitli pil türleri vardır (örn. Nikel kadmiyum / lityum iyon / Nikel metal hibrit). Güç tüketimi testine odaklanırken, her aktivite seviyesinde pilin durumunu ölçmemiz gerekiyor. Bireysel bir uygulama ile güç tüketimini daha iyi anlamamızı sağlayacaktır.

Güç Tüketimi testi manuel olarak yapılabilir; ayrıca piyasada Trepn Profiler, Power Tutor ve Nokia Energy Profiler gibi bazı ücretsiz araçlar mevcuttur. Bunlar, bir akıllı telefon veya tablette gerçek zamanlı güç tüketimini görüntüleyebilen uygulamalardır.

Örnek test senaryoları -

  • Uçuş uygunluğunu aramak için mobil uygulamayı kullanın ve güç tüketiminin minimum düzeyde kaldığını kontrol edin.

  • Mobil uygulamayı ideal durumda tutun; uygulama için herhangi bir etkinlik olmadığında güç tüketimi olmadığını doğrulayın.

Kesinti Testi

Bir uygulama çalışırken, gelen aramalar veya şebeke kapsama kesintisi ve kurtarma gibi çeşitli kesintilerle karşılaşabilir. Bu yine ayırt edilebilir -

  • Gelen ve Giden SMS ve MMS
  • Gelen ve Giden çağrılar
  • Gelen Bildirimler
  • Pili Çıkarma
  • Veri aktarımı için Kablo Yerleştirme ve Çıkarma

Örnek test senaryoları -

  • Gelen bir arama aldıktan sonra uçuş müsaitlik kontrolünün duraklatıldığını ve tekrar başlatıldığını doğrulayın.

  • Kullanıcının Uygulamayı kullanırken bir aramayı reddedebileceğini ve daha sonra aynı Uygulamayı tekrar sürdürebileceğini doğrulayın.

Kullanılabilirlik testi

Kullanılabilirlik testi, uygulamayı hedef kitle için aşağıdaki üç kritere göre değerlendirir:

  • Efficiency - Belirli kullanıcıların belirli bir ortamda belirtilen hedeflere ulaşabilmesinin doğruluğu ve eksiksizliği.

  • Effectiveness - Ulaşılan hedeflerin doğruluğu ve tamlığı ile ilgili olarak harcanan kaynaklar.

  • Satisfaction - Çalışma sisteminin kullanıcıları ve kullanımından etkilenen diğer insanlar için rahatlığı ve kabul edilebilirliği.

Uygulama tasarımının erken aşamasından itibaren kullanılabilirlik testinin yerine getirilmesi çok önemlidir ve sadece uygulama tamamlandığında yapılmamalıdır. Kullanılabilirlik testi, kullanıcıların yoğun katılımını gerektirir ve çıktı, projenin sonraki aşamalarında değiştirilmesi çok zor olan uygulama tasarımını etkileyebilir.

Örnek test senaryoları -

  • Uçuş müsaitliği kontrolü ana sayfada olmalıdır.
  • Sponsorlu reklam, içeriğin ortasında gösterilmemelidir.

Kurulum Testi

Kurulum testi, kurulum işleminin kullanıcının herhangi bir zorlukla karşılaşmadan sorunsuz ilerlediğini doğrular.

Örnek test senaryoları -

  • Kurulum işleminin sorunsuz olduğunu ve uzun sürmediğini doğrulayın.
  • Kurumsal uygulama mağazası aracılığıyla kurulumun başarılı olduğunu doğrulayın.

Kaldırma Testi

Kaldırma testinin temelleri, "Kaldırma işlemi, Uygulamayla ilgili verileri tek seferde süpürmeli" şeklinde tek satırda özetlenebilir.

Örnek test senaryoları -

  • Kaldırma işleminden sonra uygulamayla ilgili tüm dosyaların başarıyla kaldırıldığını doğrulayın.

  • Medya dosyalarını (Whatsapp veya Facebook gibi) depolayan bir Uygulama ise, Uygulama kaldırıldıktan sonra bile dosyaları saklayın.

Güncelleme Testi

Mobil uygulama güncellemeleri konusunda çok dikkatli olmamız gerekiyor. İnsanlar sık ​​sık bir güncellemeden sonra uygulamaların tatmin edici şekilde çalışmamasından şikayet eder. Bu nedenle, güncelleme testi altında, Uygulamanın daha önce çalıştığı gibi çalışmasına hak kazanmamız çok önemlidir. Özetle, hiçbir şeyi kırmamalı. Mobil uygulama güncellemeleri iki şekilde gerçekleştirilebilir -Automatic update ve Manual update.

Örnek test senaryoları -

  • Otomatik güncellemeden sonra uygulamanın başarıyla çalıştığını doğrulayın.
  • Güncelleme ilerlemesinin düzgün görüntülendiğini doğrulayın.

Sertifika Testi

Bir uygunluk sertifikası almak için her mobil cihazın farklı mobil platformlar tarafından belirlenen kurallara göre test edilmesi gerekir.

Örnek test senaryoları -

  • İPhone'a yüklendiğinde uygulamanın iOS telefonlar politikasına uyduğunu doğrulayın.

  • Uygulamanın Android'e yüklendiğinde Android telefon politikasına uyduğunu doğrulayın.

Bir mobil uygulama kullandığımızı ve ilginç bir şekilde aşağıdaki durumu yaşadığınızı varsayalım -

  • Düğme hizalaması eksik.
  • Metin kırpılıyor.
  • Takvim kontrolü kesiliyor.

Aslında bu, herhangi bir kullanıcı için hoş olmayan bir deneyimdir. Kullanıcılarımıza mükemmel bir deneyim sağladığımızdan emin olmak için Mobil Kullanıcı Arayüzü Testi şiddetle tavsiye edilir.

Test planınızda keşfedilecek ilk alan, kullanıcı arayüzüdür. Uygulamanızın aşağıdakiler gibi belirli beklentileri karşıladığını doğrulamak, test uzmanı olarak sizin görevinizdir:

  • Cihazın genel renk şeması / teması
  • Simgelerin stili ve rengi
  • Sayfalar yüklenirken ilerleme göstergeleri
  • Menüler ve nasıl çağrıldıkları ve içerdikleri tipik öğeler
  • Bu cihazdaki uygulamaların genel yanıt verme hızı

Mobil UI Testinin temelleri hakkında daha fazla tartışalım.

Ekran Yönü / Çözünürlük

Web içeriğinin çok çeşitli cihazlarda ve ağ koşullarında harika görünmesi ve hissedilmesi gerekir. Sayfanızın kullanılabilir olduğundan emin olmak için web sayfanızı yaygın olarak kullanılan ekran çözünürlüklerinde test etmek genellikle iyi bir fikirdir.

Çok sütunlu bir düzene sahipseniz, sütunlarınızın doğru şekilde hizalandığını ve ziyaretçinizin çözünürlüğü daha düşük olduğunda hala görüntülenebilir olup olmadığını da kontrol etmek isteyebilirsiniz. Standart ekran çözünürlüklerini bilmek de önemlidir -

  • 640 × 480
  • 800 × 600
  • 1024 × 768
  • 1280 × 800
  • 1366 × 768
  • 1400 × 900
  • 1680 × 1050

Kullanılabilir Araçlar

Piyasada, mobil kullanıcı arayüzü testini daha sorunsuz ve basit hale getirmek için kullanılabilen birkaç araç vardır. Örneğin -

  • Google chrome uzantısı
  • Screenfly
  • Tarayıcı Yığını

Bu araçlar ve kullanışlılıkları hakkında biraz daha anlayalım.

Google chrome uzantısı

Google Chrome web tarayıcısında bulunan ücretsiz bir özelliktir. Burada, mobil web'in Google Chrome Uzantısı ile nasıl test edileceğine dair adım adım bir açıklama verdik -

Step 1 - Test edilen web sitesini "Google Chrome Web tarayıcısında" açın.

Step 2- F12'ye basın. Aşağıdaki ekran görüntüsünde gösterildiği gibi Geliştirici aracı penceresini açacaktır.

Step 3- Mobil cihaz gibi simgesini tıklayın. Aşağıdaki ekran görüntüsüne bakın.

Step 4- Web sitesini test etmek istediğiniz mobil cihazı seçin. UI doğrulamasını yapmak için mevcut farklı cihazları seçebilirsiniz.

Screenfly

Screenfly, ücretsiz ve kullanımı kolay bir araçtır. Bunu kullanmak için web tarayıcınızda Quirktools yazmanız yeterlidir . Aşağıdaki ekranı göreceksiniz.

Test edilen web sitesine girin ve tıklayın Go. Web sitesini görüntülemek istediğiniz mobil cihazı seçin.

BrowserStack

Mobil kullanıcı arayüzü testi yapmak için başka bir harika araçtır. Harika sonuçlar verir. Ücretli bir araç olmasına rağmen, BrowserStack'e geçerli bir e-posta adresiyle kaydolarak ücretsiz bir iz elde edebilirsiniz .

Dokunmatik ekranlar

Çoklu Dokunma ve Tek Dokunma Ekranları

Cihazınız ve uygulamanız iPhone'daki sıkıştırarak yakınlaştırma efekti gibi çoklu dokunma özelliklerini destekliyorsa, özellikle sanal klavyede yazarken, ekrana aynı anda birden fazla yere dokunmayı içeren çok sayıda test durumu eklediğinizden emin olun.

Uzun Dokunuş ve Kısa Dokunuş

Dokunmatik ekranlı cihazlarda çift tıklama kavramı olmasa da (uygulamanızda özel olarak uygulanmışsa olabilir), Android akıllı telefonlar gibi bazı cihazlar uzun dokunuşlar ile kısa dokunuşlar arasında ayrım yapar. Bir öğeyi basılı tutmak, ekranın ortasında bir bağlam menüsü getirirken, aynı öğeye kısa tıklamak, o içerik menüsündeki ilk eylemi otomatik olarak gerçekleştirecektir.

Düğme Boyutu ve Konumu

Düğmelerin ve simgelerin yeterince büyük olduğundan ve büyük bir parmak ucuyla kolayca tıklanabilecek kadar ekranın kenarlarından yeterince uzakta olduğundan emin olun.

Yazılım ve Donanım Tuşları

Yumuşak Klavyeler

Çoğu zaman, son kullanıcılar için önemli olan çeşitli özel durumlar ve önemli durumlar vardır.

  • Kullanıcının ana eylemi bir metin girmekse yazılım klavyesi otomatik olarak belirir mi?

  • Vurgulanan alan e-posta adreslerini girmek içinse, yazılım klavyesinin ilk katmanı "@" ve ".com" kısayol tuşlarını içeriyor mu?

  • Yazılım klavyesi kapatılıp kolayca yeniden görüntülenebilir mi?

  • Yumuşak ve sert klavyeler birbirinin yerine kullanılabilir mi (cihazda her ikisi de varsa)?

Sabit Tuşlar

Cihazın Başlat, Ana Sayfa, Menü ve Geri gibi mevcut sabit tuşlarının kullanımı hakkında çok sayıda test eklediğinizden emin olun. Bunların tümü, aygıtın yerel uygulamalarıyla nasıl etkileşimde bulunduklarına benzer şekilde uygulamanızla etkileşime girmelidir.

Trackballs, Track tekerlekleri ve Dokunmatik Yüzeyler

Cihazınızın dokunmatik ekranı yoksa, ekran navigasyonunun kullanıcı için mümkün olduğunca ağrısız olduğunu doğrulamak daha da önemlidir. Bu durumlarda, kullanıcı bir nesneden diğerine hareket etmek için bir hareket topuna, izleme tekerleğine veya dokunmatik yüzeye güvenebilir.

Telefonlar, tabletler ve e-Okuyucular gibi mobil cihazları test etmek, özel ekipman ve metodoloji gerektirir. Geleneksel masaüstü ekran yakalama yazılımı dokunma etkileşimlerini yeterince yakalayamadığından, kullanılabilirlik pratisyenleri bu mobil cihazlarda kullanılabilirlik testi etkileşimlerini kaydetmek için stratejik olarak yerleştirilmiş kameralar kullanıyor.

Mobil Cihaz Testi Gerçekleştirmeye Hazırlanma

Telefonlar, tabletler ve e-Okuyucularda kullanılabilirlik testini kolaylaştırmak için metodolojiler ve cihazlar geliştirmeye devam ediyor. Mobil cihaz testini planlarken aşağıdaki noktaları aklınızda bulundurmalısınız -

  • Your timeframe and budget. Zaman dilimini ve bütçeyi iyi anlamak, ihtiyaçlarınıza göre hangi süreçlerin ve ekipmanın en iyi şekilde çalışacağını belirlemenize yardımcı olacaktır.

  • The physical setup of the space and how you will capture the test. Bu, aslına uygun olmayan bir düzenlemeden özel bir platform ve kamera cihazı kullanmaya ve / veya belki bir göz izleme yazılımı kullanmaya kadar değişebilir.

  • Your target audience and devices.Siteyi kaç mobil kullanıcının ziyaret ettiğini, hangi cihazı kullandıklarını ve işletim sistemlerini kontrol etmek için web analizini kullanın. Bu bilgileri anlamak, hangi cihazları test edeceğinizi bilmenize yardımcı olacaktır.

Test planlamasından sonra ele alınması gereken bir diğer önemli husus, test device management. Büyük bir kuruluşta, mobil cihaz testlerini idare etmek, kuruluşun gizli verilerini korumak için akıllı bir yönteme ihtiyaç duyar. Bunu yapmak için bir güvenlik yazılımına ihtiyacınız olacak. Aşağıdaki bölümde, cihaz yönetimi araçları hakkında daha fazla bilgi edineceğiz.

Cihaz Yönetim Araçları

Mobil cihaz yönetimi (MDM), çalışanların mobil cihazlarını izlemek, yönetmek ve güvenliğini sağlamak için BT'de kullanılan, birden çok mobil hizmet sağlayıcısında ve kuruluşta kullanılan birden çok mobil işletim sisteminde kullanılan bir tür güvenlik yazılımıdır.

MDM, eksiksiz bir mobil aygıt ve güvenlik Kurumsal Mobilite Yönetimi çözümü oluşturmak için genellikle Mobil Uygulama Yönetimi gibi ek güvenlik hizmetleri ve araçlarıyla birleştirilir.

Bu işi yapmak için piyasada birçok araç mevcuttur. Aşağıdaki tablo, bazı popüler araçlara ve özelliklerine genel bir bakış sağlar.

Ürün:% s BlackBerry MDM Citrix MDM Dell MDM IBM MDM MobileIron MDM SOTI MDM
Android 2.3+ Evet Evet Evet 2.3 üzerinden akım Evet
iOS 5.0+ Evet Evet Evet 4.0 üzerinden akım Evet
Windows Phone BES10 için hayır (BES12 için WP 8+) Evet Evet Evet 7'den akım Evet
Böğürtlen Evet, BBOS, BlackBerry 10 Evet Hayır Evet 10 (ActiveSync aracılığıyla) Hayır
Symbian Hayır Evet Hayır Evet Hayır Hayır
Windows İşletim Sistemi Hayır Evet Evet Evet 8.1 RT / Pro Hayır
Mac OS X Hayır Çok yakında Evet Evet Aslan, Dağ Aslanı Evet
Diğer Hayır Windows Mobile Yok Office 365, Gmail, Lotus Yok Windows Mobile, CE, Gömülü
WiFi'yi yapılandırın / devre dışı bırakın Evet Evet Evet Evet Evet Evet
Cihaz Şifreleme Evet Evet Evet, cihaz türüne bağlıdır Evet Evet Evet
E-posta Şifreleme Evet Evet Evet, cihaz türüne bağlıdır Evet Evet Evet
Çok faktörlü kimlik doğrulama Evet Evet Hayır Evet Evet Evet
Kötü amaçlı yazılım algılama Hayır Hayır Hayır Evet Evet, iş ortağı entegrasyonu ile Evet
Güvenlik duvarı Evet Hayır Hayır Evet Evet, iş ortağı entegrasyonu ile Evet
Kullanıcı Verilerini Kurumsal Verilerden Ayırın Evet Evet Evet Evet Evet Evet

Gerçek mobil cihaz testine geçmeden önce, mobil cihaz donanım mimarisi hakkında fikir sahibi olmak çok önemlidir. Bu, gerçekten mobil cihaz / mobil cihaz uygulama testine geçtiğimizde daha iyi test planlamamıza yardımcı olacaktır. Mobil cihaz donanımının farklı özelliklerine bir göz atalım.

Donanım bileşenleri

Herhangi bir cep telefonu alırsanız, çoğunlukla aşağıdaki kısımlardan oluşacaktır.

Devre kartı

Tüm faaliyetlerini kontrol eden telefonun beyni olarak kabul edilebilir.

Dokunmatik ekran

Dokunmatik ekranlar, akıllı telefonların hayati bir bileşenidir. Dokunmatik ekranlar, parmağınızı veya kalemi ekranın neresine koyduğunuzu algılar ve koordinatları buna göre telefonun CPU'suna iletir.

İki popüler dokunmatik ekran türü vardır -

  • Resistive Touchscreen- Ekran üzerinde bir kaplama oluşturan iki katmana (küçük bir boşlukla ayrılmış) sahiptir. Ekrandaki herhangi bir noktaya parmak yerleştirildiğinde, ikisi bir temas oluşturur ve koordinatlar elde edilir. Bunlar nispeten ucuzdur ve çoğu bütçe telefonunda haklı olarak bulunur. Dezavantajı, bir dokunuşu kaydetmek için belirli bir miktarda baskı gerektiğidir. Zaman geçtikçe ekranda bir miktar hasar oluşur.

  • Capacitive Touchscreen- Ekranın tamamı belirli miktarda elektrik yükünü tutan kapasitif bir maddeyle kaplanmıştır. Ekrana parmak gibi iletken bir cisim yerleştirildiğinde o noktada kapasitansta değişiklik olur ve böylece koordinatlar elde edilir. Kapasitif dokunmatik ekranlar, insan parmağının kapasitansta bir değişikliğe neden olmadığı soğuk iklimlerde iyi yanıt vermez, bu nedenle bu tür senaryolar için bir kalem önerilir. Sonra varmulti-touch touchscreensburada neredeyse tüm parmaklar doğru bir şekilde işaretlenebilir. Bu, dokunmatik ekranda gerçekleştirilebilecek hareketlerin sayısında bir artışa yol açtı.

Hafıza kartı

Hafıza kartları farklı boyutlarda ve kapasitelerde gelir. Dijital bilgileri depolamak için bir veri depolama aracı olarak yaygın şekilde kullanılırlar.

SIM kart

Bir SIM kart, kullanıcının hem terminalin konumuna hem de belirli bir terminalin kullanımına bakılmaksızın tüm abone olunan hizmetlere erişebilmesi için kişisel hareketlilik sağlar. Bu telefonda arama almak, o telefondan arama yapmak veya diğer abone olunan hizmetleri almak için SIM kartı başka bir GSM cep telefonuna takmanız gerekir.

Batarya

Akıllı telefonlar, telefonun üreticisine, boyutlarına ve özelliklerine bağlı olarak çeşitli farklı pillerle çalışır. Akıllı telefonlarına büyük ölçüde bağımlı olanlar için, pillerin mümkün olduğunca uzun ömürlü olması önemlidir. Bu, onları sık sık şarj etme ihtiyacını ortadan kaldırır ve en çok ihtiyaç duyulduğunda şarjlarının bitme olasılığını azaltır.

İOS için UDID

Her iPhone veya iPod Touch, aygıtınıza özgü 40 harf ve sayıdan oluşan bir Benzersiz Aygıt Tanımlayıcısına (UDID) sahiptir. Seri numarası gibi ama tahmin etmesi çok daha zor. Bunun gibi bir şeye benzeyecek - 2b6f0cc904d137be2e1730235f5664094b831186.

UUID nasıl bulunur?

  • İOS cihazınızı bilgisayarınıza bağlayın.
  • İTunes'u açın.
  • İTunes'da, soldaki sütunda "Aygıtlar" altında aygıtın adına tıklayın.
  • Pencerenin ana bölümünde cihazın seri numarasına bir kez tıklayın.
  • Seri numarası daha sonra cihazın UDID'sine değiştirilmelidir.

İOS için Temel Hazırlık Profili

Ön hazırlık profili, geliştiricileri ve cihazları yetkili bir iPhone Geliştirme Ekibine benzersiz şekilde bağlayan ve bir cihazın test için kullanılmasını sağlayan bir dijital varlık koleksiyonudur. Uygulama kodunuzu çalıştırmak istediğiniz her cihaza bir Geliştirme Sağlama Profili kurulmalıdır.

İOS için bir provizyon profili nasıl oluşturulur?

  • Google Chrome, Mozilla Firefox veya Safari'yi çalıştırın.

  • İOS Dev. Ortada, Sertifikalar, Tanımlayıcılar ve Profiller'i tıklayın.

  • İOS Uygulamaları panelinde, Temel Hazırlık Profilleri'ni tıklayın.

  • + Seçeneğine tıklayın.

  • İOS Uygulama Geliştirme'yi seçin ve Devam Et'i tıklayın.

  • Ön hazırlık profiliyle ilişkilendirilecek bir Uygulama Kimliği seçin ve Devam Et'i tıklayın.

  • Birden fazla uygulamada tek bir geliştirme ön hazırlık profilini kullanabilmek için, varsa bir joker Uygulama Kimliği seçin.

  • Ön hazırlık profiline eklemek üzere geliştirme için bir veya daha fazla sertifika seçin ve Devam'ı tıklayın.

  • Yalnızca geliştirme sertifikaları listelenmiştir.

  • Ön hazırlık profiline dahil edilecek bir veya daha fazla cihaz seçin ve Devam'ı tıklayın.

  • Profil için bir ad girin ve Oluştur'u tıklayın.

  • (İsteğe bağlı) Ön hazırlık profilini indirmek için İndir'i tıklayın.

Ön hazırlık profilinizi AppBuilder'a nasıl eklersiniz?

  • Dişli çark simgesine tıklayın ve Seçenekler'i seçin.

  • İOS → Temel Hazırlık Profilleri'ni seçin.

  • İçe Aktar'ı tıklayın.

  • Ön hazırlık profiliniz için mobil sağlama dosyasının saklandığı konuma göz atın, onu seçin ve içe aktarmayı onaylayın.

Cihaz Seçenekleri ve Tercihleri

Herhangi bir metin, dinamik arama, resim veya görüntülü reklam için bir cihaz tercihi (Mobil veya Tümü) belirtebilirsiniz.

Bir reklam grubunun hem mobil tercihli hem de normal reklamları varsa, mobil cihazlarda yalnızca mobil tercihli reklamlar sunulur ve bilgisayarlarda ve tabletlerde yalnızca normal reklamlar sunulur.

Tür listesinde, Reklamlar ve Uzantılar'ı seçin ve güncellemek istediğiniz reklamın türünü seçin. Bir veya daha fazla reklam seçin. Düzenleme panelinde "Cihaz tercihi" altında Mobil veya Tümü'nü seçin.

Mobil cihazlarda gerçekleştirebileceğimiz farklı test türlerinin ayrıntılarına bakalım.

Ağ bağlantıları

Aşağıdaki tablo, bir mobil cihaz için gerçekleştirilebilecek ağ bağlantısı testlerinin bir kontrol listesini sağlar.

Sr.No. Açıklama
1 Uygulama, Wi-Fi üzerinden internete bağlanırsa spesifikasyona göre davranıyor mu?
2 Uygulama, internete 3G üzerinden bağlanırsa spesifikasyona göre davranıyor mu?
3 Uygulama internete 2G üzerinden bağlanırsa spesifikasyona göre davranıyor mu?
4 Uygulama, ağ erişiminin dışında olan uygulamanın özelliklerine göre davranıyor mu?
5 Uygulama, ağın dış erişiminden ağa geri geldiğinde çalışmaya devam ediyor mu?
6 Bağlantı yeniden kurulduktan sonra güncelleme işlemleri doğru şekilde işlenir.
7 Uygulama, tethering sırasında veya başka bir şekilde başka bir cihaza bağlanırken hala düzgün çalışıyor mu?
8 Uygulama ağlar arasında geçiş yaparsa (Wi-Fi, 3G, 2G) ne olur?
9 Bazı sağlayıcılar belirli bağlantı noktalarını engellediğinden, uygulama uzak hizmetlere bağlanmak için standart ağ bağlantı noktalarını (Posta: 25, 143, 465, 993 veya 995 HTTP: 80 veya 443 SFTP: 22) kullanıyor mu?

SD Kart Etkileşimleri

Aşağıdaki tablo, bir cep telefonuyla SD kart etkileşiminin ilk işlevlerini kontrol etmek için bir kontrol listesi sağlar.

Sr.No. Açıklama
1 Uygulama cihaza kurulabilir mi?
2

Gelen bir arama olduğunda uygulama tasarlandığı / istendiği gibi davranıyor mu?

3 Gelen bir SMS olduğunda uygulama tasarlandığı / istendiği gibi davranıyor mu?
4 Şarj cihazı bağlıysa uygulama tasarlandığı / istendiği gibi davranıyor mu?
5 Şarj cihazının bağlantısı kesilirse uygulama tasarlandığı / istendiği gibi davranıyor mu?
6 Cihaz uyku moduna geçerse uygulama tasarlandığı / istendiği gibi davranıyor mu
7 Cihaz uyku modundan çıkarsa uygulama tasarlandığı / istendiği gibi davranıyor mu
8 Cihaz kilit ekranından devam ederse uygulama tasarlandığı / istendiği gibi davranıyor mu?
9 Cihaz eğikse uygulama tasarlandığı / istendiği gibi davranıyor mu?
10 Cihaz sallanırsa uygulama tasarlandığı / istendiği gibi davranıyor mu?
11 Başka bir uygulamadan yerel bir mesaj geliyorsa uygulama tasarlandığı / istendiği gibi davranıyor mu (düşünün: takvim hatırlatıcıları, yapılacaklar görevi vb.)?
12 Başka bir uygulamadan bir push mesajı geliyorsa uygulama tasarlandığı / istendiği gibi davranıyor mu (düşünün: twitter'dan bahsediyor, Whatsapp mesajı, wordfeud daveti vb.).
13 Uygulama, GPS sensörüyle doğru bir şekilde etkileşime giriyor mu (açma / kapama, GPS verilerini alma)?
14 Cihazdaki tüm düğmelerin veya tuşların işlevselliği bu uygulama için tanımlanmış mı?
15 Tanımlanmış bir işlevi olmayan düğmelerin veya anahtarların etkinleştirilirken uygulamada beklenmedik davranışları olmadığını doğrulayın.
16 Cihazda gerçek bir "geri" düğmesi olması durumunda "geri" düğmesi kullanıcıyı önceki ekrana götürür mü?
17 Cihazda gerçek bir "menü" düğmesi olması durumunda, menü düğmesi uygulamanın menüsünü gösteriyor mu?
18 Cihazda gerçek bir "ana sayfa" düğmesi olması durumunda, ana sayfa düğmesi kullanıcıyı cihazın ana ekranına geri götürüyor mu?
19 Cihazda gerçek bir "arama" düğmesi olması durumunda, bu, kullanıcıyı uygulama içinde bir tür arama yapmaya yönlendirir mi?
20 "Pil zayıf" mesajına basıldığında uygulama tasarlandığı / istendiği gibi davranıyor mu
21 Cihazdaki ses kapatılırsa uygulama tasarlandığı / istendiği gibi davranıyor mu?
22 Cihaz uçak modundaysa uygulama tasarlandığı / istendiği gibi davranıyor mu?
23 Uygulama cihazdan kaldırılabilir mi?
24 Uygulama yeniden kurulumdan sonra beklendiği gibi çalışıyor mu?
25 Uygulama, uygulama mağazasında bulunabilir mi? (Yayına aldıktan sonra kontrol edin)
26 Uygulama, tasarlandığı / istendiği şekilde çoklu görev aracılığıyla cihazdaki farklı uygulamalara geçiş yapabilir mi?
27 Bir ekran koruyucu kullanıldığında tüm dokunmatik ekran konumları (düğmeler) çalışıyor mu?

Bluetooth Testi

Bluetooth cihazları yalnızca 10 metrelik yarıçap içinde iletişim kurabilir. Bu tür cihazlar klavyeler, fare, kablosuz kulaklık vb. Olabilir. Aşağıdaki tablo, gerçekleştirilebilecek Bluetooth testlerinin bir kontrol listesini sağlar -

Sr.No. Açıklama
1 Kullanıcı, aralıktaki tüm mevcut cihazları arayabilir.
2 Kısa menzilli ağlar kullanılarak hem veri hem de ses aktarımı gönderilebilir.
3 Kısa menzilli ağlar kullanılarak hem veri hem de ses aktarımı alınabilir.
4 Kullanıcı istediği zaman bağlantıyı kesebilir.
5 Bluetooth'u kapatırken mevcut bağlantıların kesilmesini isteyin.
6 Bluetooth maksimum aralığı 10 metredir.
7 Cep telefonuyla resim, video gönderebilir, kartvizit alışverişi yapabilir ve ayrıca dosyaları bilgisayarınıza aktarabilirsiniz.
8 (Cihaz eşlendi) Bu, bir kullanıcının iki Bluetooth cihazını başarıyla eşleştirdiğini doğrulamak için kullanılan bir mesajdır.
9 Bulunamayan mod, keşif isteklerine yanıt vermeyecek bir cihaz.
10 Bulunamayan mod, keşif isteklerine yanıt vermeyecek bir cihaz.
11 Eşleştirilemeyen mod, eşleştirmeyi kabul etmeyecek bir cihazın eşleştirilemez modda olduğu söyleniyor.
12 Geçiş anahtarı, geçiş anahtarı, başka bir cihazdan bir cihaza bağlanmak için gereken kullanıcı tanımlı bir şifredir. Bluetooth cihazlarınıza yetkisiz erişimi önlemek için mümkün olan her yerde geçiş anahtarları kullanmanız şiddetle tavsiye edilir.
13 Kimlik Doğrulama - Bir iletişim bağlantısının diğer ucunun kimliğini doğrulama süreci. Bluetooth teknolojisinde bu, geçiş anahtarları ve eşleştirmeye dayalı kimlik doğrulama işlemi ile elde edilir.
14 Cihaz bulunamadı, bu, menzil içindeki diğer cihazların aranması hiçbir şey bulamazsa görünebilecek bir hata mesajıdır.
15 Bekleme Modu, bir cihaz, diğer cihazlarla herhangi bir bağlantı kurmadığında boş moddadır. Bu modda, bir cihaz diğer cihazları keşfedebilir.
16 Bilinen Cihaz testi, hakkında başka bir cihaz tarafından zaten bilinen bir cihaz. Cihazlar geçmişte eşleştirilmiştir veya bilinen cihazların bazı bilgileri saklanır.

Wi-Fi Testi

Cep telefonunuzu test etmek WiFi bağlantısı, İnternet'inizin servis sağlayıcınızın vaat ettiği hızda çalıştığından emin olmanın harika bir yoludur, ancak bu testleri masaüstü bilgisayarınızda çalıştırmakla sınırlı değilsiniz. Cep telefonu WiFi testi, WiFi sinyalinizin gücünü evinizin veya ofisinizin çeşitli yerlerinde test etmenin mükemmel bir yoludur. Aşağıda, bir mobil cihaz için Wifi testi kontrol listesi verilmiştir.

Sr.No. Açıklama
1 Uygulama, Wi-Fi üzerinden internete bağlanırsa spesifikasyona göre davranıyor mu?
2 Uygulama, ağ erişiminin dışında olan uygulamanın özelliklerine göre davranıyor mu?
3 Uygulama, ağın dış erişiminden ağ erişimine geri döndüğünde çalışmaya devam ediyor mu?
4 Uygulama ağlar arasında geçiş yaparsa ne olur (Wi-Fi, 3G, 2G)
5 Bazı sağlayıcılar belirli bağlantı noktalarını engellediğinden, uygulama uzak hizmetlere bağlanmak için standart ağ bağlantı noktalarını (Posta: 25, 143, 465, 993 veya 995 HTTP: 80 veya 443 SFTP: 22) kullanıyor mu?

Akıllı Telefonunuzda Cep Telefonu WiFi Hız Testi Nasıl Yapılır

Akıllı telefonunuzda bir WiFi hız testi çalıştırmak basit bir iştir. En kullanışlı olanı, akıllı telefonunuzun mobil web tarayıcısında çalışan hız testleridir. Testi başlatmak için ekrandaki basit talimatları izleyin. Çevrimiçi test, sonuçlarınızı kaydetmezse, bir geçmiş sağlamak için bitmiş testten sonra bir ekran görüntüsü alın.

Bazı testler hem iOS hem de Android platformları için uygulama olarak mevcuttur. Bunları kullanmak için istediğiniz uygulamayı indirin. Ardından, testi çalıştırmak ve sonucunuzu kaydetmek için talimatları izleyin.

Hız Testi Gerçekleştirecek Araçlar

Speed Test SpeedSmart WiFi & Mobile Network Speedtest- Apple iPhone ve iPad ile uyumludur. Ücretli bir uygulamadır. SpeedSmart, tüm iOS cihazlarınızda hücresel (3G, 4G ve LTE) ve Wi-Fi bağlantınızı değerlendirmek için nihai iOS hız testi aracıdır. Küresel bir sunucu ağı ve akıllı hız testi yöntemi, doğru sonuçlar sağlar.

WiFi Speed Test- Android telefonlarla uyumludur. Ücretli bir araçtır. Bu araçla yerel (LAN) ağınızın hızını test edebilirsiniz. Test, kablosuz (WiFi) veya kablolu ağ üzerinden yapılabilir.

Yerelleştirme ve Küreselleşme

Bir mobil cihaz için yerelleştirme ve küreselleşme testi hakkında fikir sahibi olmak için lütfen aşağıdaki kontrol listesine bakın.

Sr.No. Açıklama
1 Metin çevrilir.
2 Çeviriler, dil bilgisi ve terminolojinin doğruluğu açısından ana dili İngilizce olanların standartlarını karşılar.
3 İletişim kutuları uygun şekilde yeniden boyutlandırılır ve iletişim metni, kullanıcı arabirimi dilinin kurallarına göre tirelenir.
4 Çevrilmiş iletişim kutuları, durum çubukları, araç çubukları ve menüler ekrana farklı çözünürlüklerde sığar. Sarılmazlar ve kesilmezler.
5 Menü ve iletişim hızlandırıcıları benzersizdir.
6 Görsel düzen, yerel sürümün düzeniyle tutarlıdır. Örneğin, diyalog öğeleri uygun sekme sırasındadır.

Veritabanı Testi

Mobil Uygulamalarda veri depolamanın farklı yolları vardır. Android durumunda, verilerinizi sunucu, paylaşılan Tercihler veya SQLite üzerinden depolamayı seçebilirsiniz.

SQLiteAndroid ve diğer işletim sistemlerinde yaygın olarak kullanılan hafif bir veritabanıdır. Verileri SQLite'ta görüntülemek için cihazı köklendirmeniz gerekebilir veya test için öykünücüler kullanabilirsiniz. Android Playstore'da bu veritabanından veri çıkarmanıza yardımcı olacak bazı araçlar vardır.

Aşağıdaki test türleri, mobil veritabanı testinizin bir parçasını oluşturmalıdır -

  • Veritabanı doğrulama testi.
  • Veritabanı entegrasyon testi.
  • Veritabanı performans testi.
  • Prosedür ve işlev testi.
  • Tetik testi.
  • Veri tabanı üzerinde çalışacaklarından emin olmak için CRUD (Oluştur / Oku / Güncelle / Sil) işlemleri testi.
  • Veritabanı değişikliklerinin uygulamanın kullanıcı arayüzünde doğru şekilde gösterildiğinin test edilmesi.
  • Arama ve indeksleme işlevi testi.

Kurtarma Testi

Bir felaketten sonra operasyonların devam edebilmesini sağlamak için kurtarma testi kullanılır. Kurtarma testi sadece kurtarma sürecini değil, aynı zamanda bu sürecin bileşen parçalarının etkinliğini de doğrular.

Kurtarma testi, bir uygulamanın çökmelerden, donanım arızalarından ve diğer benzer sorunlardan ne kadar iyi kurtulabildiğini test etme etkinliğidir. Aşağıda, Kurtarılabilirlik testi için kontrol listesi verilmiştir.

Sr.No Açıklama
1 Yeterli yedekleme verisi korunur.
2 Yedekleme verileri güvenli bir yerde saklanır.
3 Kurtarma prosedürleri belgelenmiştir.
4 Tüm medya dosyaları geri yükleme noktasından kurtarıldı
5 Tüm kişiler kurtarıldı
6 Tüm uygulamalar başarıyla geri yüklendi

Eş Zamanlılık Testi

Birden çok kullanıcının aynı anda bir programa aynı anda erişebilmesini sağlamak için genellikle eşzamanlı testlerden yardım alırız. Bir mobil cihaz için eşzamanlılık testi uygularken, bu nedenle yalnızca tek bir kullanıcı olacaktır. Böylece bir mobil cihaz için eşzamanlılık testi ihtiyacını ortadan kaldırır.

Kullanılabilirlik testi

Genellikle, kullanılabilirlik değerlendirme oturumunu kaydetmek için cep telefonunun ve bir web kamerasının ayarlanabildiği bir donanım elde edersiniz.

Alkış gibi araçlar var . Uygulamanızı test etmek için özel olarak seçilmiş hedeflenmiş bir anket katılımcıları grubu sağlarlar. Alkış'ı bu tür diğer hizmetlerden ayıran şey, daha sonra danışmaya göre ideal katılımcıları seçecek olan, Alkış'ta bir uzmanla görüşme yapabilmenizdir.

Aşağıda, GUI testi için genel kontrol listesi verilmiştir.

Sr.No. Açıklama
1 Uygulama cihaza kurulabilir mi?
2 Gelen bir arama olduğunda uygulama tasarlandığı / istendiği gibi davranıyor mu?
3 Gelen bir SMS olduğunda uygulama tasarlandığı / istendiği gibi davranıyor mu?
4 Şarj cihazı bağlıysa uygulama tasarlandığı / istendiği gibi davranıyor mu?
5 Şarj cihazının bağlantısı kesilirse uygulama tasarlandığı / istendiği gibi davranıyor mu?
6 Cihaz uyku moduna geçerse uygulama tasarlandığı / istendiği gibi davranır mı?
7 Cihaz uyku modundan çıkarsa uygulama tasarlandığı / istendiği gibi davranır mı?
8 Cihaz kilit ekranından devam ederse uygulama tasarlandığı / istendiği gibi davranıyor mu?
9 Cihaz eğikse uygulama tasarlandığı / istendiği gibi davranıyor mu?
10 Cihaz sallanırsa uygulama tasarlandığı / istendiği gibi davranıyor mu?
11 Başka bir uygulamadan yerel bir mesaj geliyorsa uygulama tasarlandığı / istendiği gibi davranıyor mu (düşünün: takvim hatırlatıcıları, yapılacaklar görevi vb.).
12 Başka bir uygulamadan bir push mesajı geliyorsa uygulama tasarlandığı / istendiği gibi davranıyor mu (düşünün: twitter'dan bahsediyor, Whatsapp mesajı vb.).
13 Uygulama, GPS sensörüyle doğru bir şekilde etkileşime giriyor mu (açma / kapama, GPS verilerini alma)?
14 Cihazdaki tüm düğmelerin veya tuşların işlevselliği bu uygulama için tanımlanmış mı?
15 Tanımlanmış bir işlevi olmayan düğmelerin veya anahtarların etkinleştirilirken uygulamada beklenmedik davranışları olmadığını doğrulayın.
16 Cihazda gerçek bir "geri" düğmesi olması durumunda "geri" düğmesi kullanıcıyı önceki ekrana götürür mü?
17 Cihazda gerçek bir "menü" düğmesi olması durumunda, menü düğmesi uygulamanın menüsünü gösteriyor mu?
18 Cihazda gerçek bir "ana sayfa" düğmesi olması durumunda, ana sayfa düğmesi kullanıcıyı cihazın ana ekranına geri götürüyor mu?
19 Cihazda gerçek bir "arama" düğmesi olması durumunda, bu, kullanıcıyı uygulama içinde bir tür arama yapmaya yönlendirir mi?
20 "Pil zayıf" mesajına basıldığında uygulama tasarlandığı / istendiği gibi davranıyor mu
21 Cihazdaki ses kapatılırsa uygulama tasarlandığı / istendiği gibi davranıyor mu?
22 Cihaz uçak modundaysa uygulama tasarlandığı / istendiği gibi davranıyor mu?
23 Uygulama cihazdan kaldırılabilir mi?
24 Uygulama yeniden kurulumdan sonra beklendiği gibi çalışıyor mu?
25 Uygulama, uygulama mağazasında bulunabilir mi? (Yayına aldıktan sonra kontrol edin)
26 Uygulama, tasarlandığı / istendiği şekilde çoklu görev aracılığıyla cihazdaki farklı uygulamalara geçiş yapabilir mi?
27 Bir ekran koruyucu kullanıldığında tüm dokunmatik ekran konumları (düğmeler) çalışıyor mu?

Bir testing framework veya daha spesifik olarak testing otomasyon framework gerçekleştirmek için bir yürütme ortamıdır automated tests. Testlerin otomatikleştirileceği genel sistemdir. Otomatik test için bir çalışma platformu veya destek oluşturan varsayımlar, kavramlar ve uygulamalar kümesi olarak tanımlanır.

Bir test çerçevesi şunlardan sorumludur:

  • Beklentilerin ifade edileceği formatı tanımlama
  • Test edilen uygulamayı bağlamak veya çalıştırmak için bir mekanizma oluşturma
  • Testlerin yapılması ve sonuçların raporlanması

Çerçeve Mimarisi

Bir test çerçevesinin genel mimarisi aşağıdaki gibidir -

Mobil test otomasyonu için iyi bir mobil otomasyon test çerçevesine ihtiyacımız var. Bu çerçevenin üstünde, test durumlarımızı oluşturabiliriz. Mobil otomasyon test çerçeveleri, mobil cihazın işletim sistemine göre ayrılabilir. Aşağıdaki bölümlerde, iki tür mobil test çerçevesini tartışacağız: Android test çerçeveleri ve iOS test çerçeveleri.

Piyasada pek çok Android test çerçevesi bulunmaktadır. Yığın üzerindeki ilk 5'e bir göz atalım.

  • Robotium- Robotium, işlevsel, sistem ve kabul testi senaryoları geliştirmek için açık kaynaklı bir test çerçevesidir. Selenium'a çok benzer.

  • UIAutomator- UIAutomator, yerel Android uygulamaları ve oyunları için ileri düzey UI testi sağlayan, Google tarafından geliştirilen bir test çerçevesidir. İşlevsel UI testleri oluşturmak için API içeren bir Java kitaplığına ve ayrıca testleri çalıştırmak için bir yürütme motoruna sahiptir.

  • Appium- Appium, yerel ve hibrit uygulamaları ve mobil web uygulamalarını test etmek için açık kaynaklı bir test otomasyon çerçevesidir. Çerçeve içindeki Appium kütüphanesi işlevleri, bağlı cihazı çalıştıran arka planda çalışan Appium sunucusuna çağrı yapar.

  • Calabash- Calabash, hem iOS hem de Android işlevsel testleri için kullanılabilen işlevsel bir test çerçevesidir. Kağıt üzerinde, kullanımı en kolay çerçevelerden biri olmalı ve geliştirici olmayanlar bile onu kullanarak işlevsel testler oluşturabilmelidir.

  • Selendroid- Selendroid blokta nispeten yeni bir çocuk ve Android uygulamalarınızı işlevsel olarak test etmek için kullanılabilir. Görünüşe göre, Selenium'a alışkınsanız, Selendroid Android için fonksiyonel testlerinizi oluşturmak için bilginizi kullanmanın kolay bir yolu olmalıdır.

Android test çerçeveleri gibi, piyasada birçok iOS test çerçevesi vardır. Burada birkaç popüler olanlardan bahsedeceğiz.

  • Appium- Appium, yerel ve hibrit uygulamaları ve mobil web uygulamalarını test etmek için açık kaynaklı bir test otomasyon çerçevesidir. Çerçeve içindeki Appium kitaplığı işlevleri, bağlı cihazı çalıştıran arka planda çalışan Appium sunucusuna çağrı yapar.

  • Calabash- Calabash, hem iOS hem de Android işlevsel testleri için kullanılabilen işlevsel bir test çerçevesidir. Kağıt üzerinde, kullanımı en kolay çerçevelerden biri olmalı ve geliştirici olmayanlar bile onu kullanarak işlevsel testler oluşturabilmelidir.

  • Zucchini - Zucchini, Apple UIAutomation tabanlı iOS uygulamaları için açık kaynaklı bir görsel işlevsel test çerçevesidir.

  • UI Automation- Uygulamanızda gezinen bir son kullanıcıyı simüle eden kod yazacağınız daha tipik işlevsel testleriniz (veya kara kutu testleriniz) için UI Otomasyonu vardır. UI Otomasyonu Apple tarafından sağlanır ve iOS işlevsel testlerini gerçekleştirmenin Apple onaylı bir yoludur.

  • FRANK – BDD for iOS - iOS'ta uçtan uca test yapmak istiyorsanız ve BDD ve Cucumber'ı kullanabilmeyi diliyorsanız endişelenmeyin - adında bir araç var Frank Bu, Salatalık kullanarak kabul testleri ve gereksinimleri oluşturmanıza olanak tanır.

Farklı test çerçeveleri arasında karşılaştırma

Robotium, Android uygulamaları için otomatik gri kutu test senaryoları yazmak için açık kaynaklı bir test çerçevesidir. Robotium'un desteğiyle, test senaryosu geliştiricileri, birden çok Android etkinliğini kapsayan işlev, sistem ve kabul testi senaryoları yazabilir.

Robotium, hem kaynak kodun mevcut olduğu uygulamaları test etmek için hem de sadece APK dosyasının mevcut olduğu uygulamalarda kullanılabilir.

Robotium'un Faydaları

  • Yazması kolay, daha kısa kod. Sağlam test senaryoları yazmak için minimum süre gerekir.

  • Test edilen uygulama hakkında minimum bilgi ile güçlü test senaryoları geliştirebilirsiniz.

  • Çerçeve, birden çok Android etkinliğini otomatik olarak yönetir. Test senaryolarının okunabilirliği, standart enstrümantasyon testlerine kıyasla büyük ölçüde geliştirilmiştir.

  • Otomatik zamanlama ve gecikmeler.

  • Mevcut Aktiviteyi otomatik olarak takip eder.

  • Görünümleri otomatik olarak bulur.

  • Otomatik olarak kendi kararlarını verir (ör. Ne zaman kaydırılmalı vb.)

  • Android platformunda değişiklik yok.

  • Test yürütme hızlıdır.

  • GUI bileşenlerine çalışma zamanı bağlanması nedeniyle test durumları daha sağlamdır.

  • Maven veya Ant ile sorunsuz bir şekilde bütünleşir.

Robotium'un Dezavantajları

  • Robotium, Flash veya Web bileşenlerini işleyemez.

  • Bir seferde yalnızca bir uygulamayı yönetir.

  • Robotium kullanarak sanal klavyeye tıklamayı simüle edemez (bir Metni Düzenle alanına metin girmek için 'enterText ()' kullanmanız gerekir)

  • Robotium, Durum Çubuğu Bildirimleriyle etkileşim kuramaz - yani Bildirim alanını aşağı çekin ve belirli bir Bildirime tıklayın.

  • Özellikle eski cihazlarda çalışırken biraz yavaş olabilir.

Robotium Nasıl Kullanılır

Step 1- Robotium'u kullanmanın önkoşulu Java SDK'dır (minimum 1.6). Sisteminizde Java yüklü değilse, aşağıda verilen adımları izleyin.

  • Oracle Technology Network'ten JDK ve JRE'yi indirin

  • Lisans sözleşmesini kabul edin.

  • JDK ve JRE'yi yükleyin.

  • Ortam değişkenini aşağıdaki ekran görüntüsünde gösterildiği gibi ayarlayın.

Step 2- indirin Android Studio Android Studio

  • Exe'ye çift tıklayın ve yükleyiciyi çalıştırın.
  • Tüm varsayılan seçeneklerle devam edin.
  • ANDROID_HOME'u ayarlayın.

Step 3 - Android görüntülerini ve araçlarını yükleyin.

  • SDK Yöneticisi'ne tıklayın -
  • Gerekli paketi seçin. Örneğin, Android 4.4.2 için bir Uygulama oluşturuyorsak, Araçlar bölümünde aşağıdaki paketlerin kontrol edildiğinden emin olun -

    • Android SDK Araçları rev 22.6.3
    • Android Platform araçları rev 19.0.1
    • Android SDK Derleme araçları rev 19.1

Step 4 - Android Sanal Cihazlar oluşturun.

  • Android Studio'yu açın ve araç çubuğunda AVD Manager'ı tıklayın. AVD'ler, Android uygulamalarımızı test etmemize ve çalıştırmamıza izin verir.
  • Nexus5 AVD için aşağıdaki ayarları kullanın -

    • Cihaz - Nexus 5 (4,95, 1080 x 1920; xxhdpi)
    • Hedef - Google API'leri x86 (Google Inc.) - API Düzeyi 19
    • (Adında Google API'leri olan hedefi seçtiğinizden emin olun.)
    • CPU - Intel Atom (x86)
    • Ana Bilgisayar GPU'sunu Kullan kutusunu işaretleyin
    • Tamam'ı tıklayın
  • Şimdi, AVD Yöneticisinde oluşturduğunuz AVD'yi görmelisiniz, burada onu başlatabilir, silebilir veya başka bir tane yaratabilirsiniz!

Step 5- dan Robotium Jar dosyası yükle Robotium Kavanoz dosya RobotiumTech

Robotium ile Bir Uygulamayı Test Edin

Bir Uygulamayı Robotium ile test etmek için aşağıda verilen adımları izleyin -

Step 1 - Android Studio'da "RobotiumTest" adında bir test Projesi oluşturun.

Ana sayfaya ulaşana kadar tüm varsayılan seçenekleri seçin.

Step 2 - Robotium jar dosyasını projenin Lib klasörüne kopyalayın.

Step 3 - Bağımlılığı build.gradle dosyasına ekleyin. src Klasör.

androidTestCompile 'com.jayway.android.robotium: robotium-solo-5.5.3'

Step 4 - Gradle'ı senkronize edin.

Step 5 - Test sınıfını aşağıdaki gibi oluşturun -

package com.example;

import com.robotium.solo.Solo;
import android.test.ActivityInstrumentationTestCase2;
import android.widget.EditText;
import android.widget.TextView;

public class MyTestClass extends ActivityInstrumentationTestCase2<TestActivity>{

   private Solo solo;

   public MyTestClass() {
      super(TestActivity.class);
   }

   public void setUp() throws Exception {
      solo = new Solo(getInstrumentation(), getActivity());
   }

   public void testCase() throws Exception {
      String vResult="TestExample";
      EditText vEditText = (EditText) solo.getView(R.id.edit1);
      solo.clearEditText(vEditText);
      solo.enterText(vEditText,"TestExample");
      solo.clickOnButton("Submit");
      assertTrue(solo.searchText(vResult));
      TextView textField = (TextView) solo.getView(R.id.txt1);
      //Assert to verify result with visible value
      assertEquals(vResult, textField.getText().toString());
   }

   @Override
   public void tearDown() throws Exception {
      solo.finishOpenedActivities();
   }
}

Step 6- Tüm değişiklikleri kaydedin. Hiçbir hata olmadığından emin olun.

Step 7- Şimdi, test durumunu çalıştırın. Test senaryosu başarılı olursa, aşağıdaki çıktıyı görmelisiniz!

Selendroid, Android yerel ve hibrit uygulamalarını test etmek için bir test otomasyon çerçevesidir. Selendroid testleri Selenium Webdriver istemci API kullanılarak yazılır.

Selendroid'in Faydaları

  • JSON Wire Protocol / Selenium 3 Ready ile tam uyumlu.

  • Otomatikleştirmek için test edilen uygulamada değişiklik yapılmasına gerek yoktur.

  • Yerleşik Android sürücü web görünümü uygulamasını kullanarak mobil web'i test etme.

  • Yerel veya hibrit uygulamaları otomatikleştirmek için aynı konsept.

  • UI öğeleri, farklı konum belirleyici türleri tarafından bulunabilir.

  • Hareketler desteklenir: Gelişmiş Kullanıcı Etkileşimleri API'si.

  • Mevcut Emülatörler otomatik olarak başlatılır.

  • Selendroid, donanım cihazlarının çalışırken takılmasını destekler.

  • Ölçeklendirme ve paralel test için Selenium Grid'e düğüm olarak tam entegrasyon.

  • Çoklu Android hedef API desteği (10'dan 19'a).

  • Test senaryosu geliştirmeyi basitleştirmek için yerleşik Inspector.

  • Selendroid, çalışma zamanında kendi uzantılarınızla genişletilebilir.

  • Selendroid, aynı anda birden fazla Android cihazla (emülatörler veya donanım cihazları) etkileşime girebilir.

Selendroid'in Dezavantajları

Bu aracın dezavantajı, oldukça yavaş olması ve 4 GB'den az RAM'e sahip bazı makinelerde kullanılamaz olmasıdır.

Selendroid Nasıl Kullanılır

Step 1- Robotium'u kullanmanın önkoşulu Java SDK'dır (minimum 1.6). Sisteminizde Java yüklü değilse, aşağıda verilen adımları izleyin.

  • Oracle JavaSE'den JDK ve JRE'yi indirin

  • Lisans sözleşmesini kabul edin.

  • JDK ve JRE'yi yükleyin.

  • Ortam değişkenini aşağıdaki ekran görüntüsünde gösterildiği gibi ayarlayın.

Step 2- Android Studio'yu SDK Android'den indirin (Dosya boyutu nedeniyle zaman alacaktır).

  • Exe'ye çift tıklayın ve yükleyiciyi çalıştırın.
  • Tüm varsayılan seçeneklerle devam edin.
  • ANDROID_HOME'u ayarlayın.

Step 3- Selenium jar dosyalarını indirin ve Selendroid'den test uygulaması

  • Selenyum kavanoz dosyasını ve test uygulamasını indirin.
  • Herhangi bir klasöre yerleştirin, örneğin D: \ SelendroidJars.

Step 4 - USB kablolu fiziksel cihaz.

  • Aygıtın iş istasyonuna USB kablosuyla bağlandığından emin olun.

  • USB hata ayıklama modunun (ayarlar → Geliştirici seçenekleri altında) etkinleştirildiğinden emin olun.

Selendroid ile bir Uygulamayı Test Edin

Selendroid kullanarak bir Uygulamayı test etmek için aşağıda verilen adımları izleyin -

Step 1 - Eclipse'i yükleyin.

Step 2 - Bir Java projesi oluşturun.

Step 3 - İndirilen Selendroid jar dosyasını yeni oluşturulan projeye ekleyin.

Step 4 - İndirilen Selenium jar dosyalarını yeni oluşturulan projeye ekleyin.

Step 5 - Eclipse'de testNG'yi yapılandırın.

Step 6- USB kablosunu kullanarak mobil cihazları sisteme bağlayın. USB hata ayıklama modunu geliştiricinin ayarlar altındaki seçeneklerinden ayarlayın.

Step 7- Selendroid sunucusunu çalıştırın. Komut istemini açın ve aşağıdaki kodu yazın ve Enter tuşuna basın -

java -jar selendroid-standalone-0.17.0-with-dependencies.jar -app selendroid-test-app-0.17.0.apk

Selendroid bağımsız, 4444 numaralı bağlantı noktasında bir http sunucusu başlatacak ve kullanıcının oluşturduğu tüm Android sanal cihazları (avd) tarayacaktır (~ / .android / avd /).

Web tarayıcısını açın ve şuraya gidin: http://localhost:4444/wd/hub/status.

Step 8- Bir Java Projesi oluşturun; Selendroid Standalone kitaplıkları, Selenium kavanozları ve JUnit kitaplıklarını derleme yoluna ekleyin.

Step 9 - Java projesi altında paket oluşturun.

Step 10 - Paketin altında bir sınıf oluşturun ve aşağıdaki kodu yazın.

package selTest;

import io.selendroid.SelendroidDriver; 
import io.selendroid.common.SelendroidCapabilities;
import io.selendroid.standalone.SelendroidConfiguration;
import io.selendroid.standalone.SelendroidLauncher;

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.WebElement; 

import org.testng.Assert; 
import org.testng.annotations.AfterSuite; 
import org.testng.annotations.BeforeSuite; 
import org.testng.annotations.Test;

public class SelendroidTest {

   private WebDriver driver ;

   @BeforeSuite 
   public void setUp() throws Exception {
      SelendroidConfiguration config = new SelendroidConfiguration();
      config.addSupportedApp("selendroid-test-app-0.9.0.apk");
      SelendroidLauncher selendroidServer = new SelendroidLauncher(config);
      selendroidServer.launchSelendroid();
	  
      SelendroidCapabilities caps = new
         SelendroidCapabilities("io.selendroid.testapp:0.9.0"); 
      driver = new SelendroidDriver(caps);
   }
   
   @Test 
   public void selendroidTest() throws Exception {
      WebElement inputField = driver.findElement(By.id("my_text_field"));
      Assert.assertEquals("true", inputField.getAttribute("enabled"));
      inputField.sendKeys("Selendroid");
      
      Assert.assertEquals("Selendroid", inputField.getText());
	  
      WebElement button = driver.findElement(By.id("buttonTest"));
      button.click();
	  
      button = driver.findElement(By.id("button2"));
      button.click();
      
      Thread.sleep(5000);
	  
      button = driver.findElement(By.id("startUserRegistration"));
      button.click();
      
      Thread.sleep(10000);
	  
      WebElement element = driver.findElement(By.id("label_username")); 
      
      String text = element.getText();
      System.out.println(text);
      element = driver.findElement(By.id("inputUsername"));
      element.sendKeys("bob");
      
      element = driver.findElement(By.id("inputEmail"));
      element.sendKeys("[email protected]"); 
      
      element = driver.findElement(By.id("inputPassword"));
      element.clear();
      element.sendKeys("test1233");
      
      element = driver.findElement(By.id("inputName"));
      element.clear(); 
      element.sendKeys("My Name ");
	  
      element = driver.findElement(By.id("input_preferedProgrammingLanguage")); 
      element.click();
      
      element = driver.findElement(By.id("text1"));
      element.click();
	  
      element = driver.findElement(By.id("input_adds"));
      element.click();
	  
      element = driver.findElement(By.id("btnRegisterUser"));
      element.click();
      
      element = driver.findElement(By.id("buttonRegisterUser"));
      element.click(); 
   }
   
   @AfterSuite 
   public void tearDown(){ 
      driver.quit(); 
   } 
}

Step 11 - Sınıfı testNG çalıştırma yapılandırmasıyla çalıştırın.

Appium, yerel ve hibrit uygulamaları ve mobil web uygulamalarını test etmek için açık kaynaklı bir test otomasyon çerçevesidir. WebDriver protokolünü kullanarak iOS ve Android uygulamalarını çalıştırır.

Appium'un Avantajları

  • Ücretsiz ve (çoğunlukla) açık kaynak.

  • Çok iyi desteklenen ve aktif bir Google grubuna sahiptir.

  • Selenium 3 spesifikasyonunda olduğu için geleceğe dönük olması gerekir.

  • Hem Android hem de iOS'u destekler.

  • Cihaza herhangi bir şey yüklenmesini gerektirmez - sunucu veya kod değişikliği gerekmez.

Appium'un Dezavantajları

  • Akıllı beklemeler için destek yok.
  • İOS'ta, Mac başına aynı anda yalnızca bir test yürütebilirsiniz.
  • Hareketler için sınırlı destek.
  • Android <4.1 için sınırlı destek

Appium Nasıl Kullanılır

Step 1- Appium'u kullanmanın önkoşulu Java SDK'dır (minimum 1.6). Sisteminizde Java yüklü değilse, aşağıda verilen adımları izleyin.

  • Oracle JavaSE'den JDK ve JRE'yi indirin

  • Lisans sözleşmesini kabul edin.

  • JDK ve JRE'yi yükleyin.

  • Ortam değişkenini aşağıdaki ekran görüntüsünde gösterildiği gibi ayarlayın.

Step 2- Android Studio'yu SDK'dan indirin (Dosyanın boyutu nedeniyle zaman alacaktır).

  • Exe'ye çift tıklayın ve yükleyiciyi çalıştırın.
  • Tüm varsayılan seçeneklerle devam edin.
  • ANDROID_HOME'u ayarlayın.

Step 3 - Android görüntülerini ve araçlarını yükleyin.

  • SDK Yöneticisi'ne tıklayın -
  • Gerekli paketi seçin. Örneğin, Android 4.4.2 için bir Uygulama oluşturuyorsak, Araçlar bölümünde aşağıdaki paketlerin kontrol edildiğinden emin olun -

    • Android SDK Araçları rev 22.6.3
    • Android Platform araçları rev 19.0.1
    • Android SDK Derleme araçları rev 19.1

Step 4 - Android Sanal Cihazlar Oluşturun -

  • Android Studio'yu açın ve araç çubuğunda AVD Manager'ı tıklayın. AVD'ler, Android uygulamalarımızı test etmemize ve çalıştırmamıza izin verir.

  • Nexus5 AVD için aşağıdaki ayarları kullanın -

    • Cihaz: Nexus 5 (4,95, 1080 x 1920; xxhdpi)

    • Hedef: Google API'leri x86 (Google Inc.) - API Düzeyi 19

    • Adında Google API'leri olan hedefi seçtiğinizden emin olun.

    • İşlemci: Intel Atom (x86)

    • Ana Bilgisayar GPU'sunu Kullan kutusunu işaretleyin

    • Tamam'ı tıklayın.

  • Şimdi, AVD Yöneticisinde oluşturduğunuz AVD'yi görmelisiniz, burada onu başlatabilir, silebilir veya başka bir tane yaratabilirsiniz!

Step 5- indirin Appium kavanoz dosyaları Appium

Appium ile bir Uygulamayı Test Edin

Bir Uygulamayı Appium ile test etmek için aşağıda verilen adımları izleyin -

Step 1 - Android Studio'da "RobotiumTest" adında bir test Projesi oluşturun.

Ana sayfaya ulaşana kadar tüm varsayılan seçenekleri seçin.

Step 2- Appium kavanozlarını projenize ekleyin. Proje → Uygulama → kitaplıktaki tüm kavanozları kopyala'ya tıklayın. Selenium, Java istemcisi ve Junit Jar dışında kopyalanan kavanozları seçin, ardından üzerine sağ tıklayın ve "Kitaplık Olarak Ekle" ye tıklayın.

Step 3- Uygulamada build.gradle üzerine tıklayın. Aşağıdaki ekran görüntüsünde gösterildiği gibi eklenen tüm kitaplıkları göreceksiniz.

Step 4 - Şimdi aşağıda gösterildiği gibi bir Java sınıfı oluşturun -

AppiumDriver driver;
@Before
public void testCaseSetup()throws Exception {
   //service.start();
   //reader.readFile();

   DesiredCapabilities cap = new DesiredCapabilities();
	
   cap.setCapability(MobileCapabilityType.PLATFORM_NAME,"Android");
   cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device");
   cap.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, "4000");
   cap.setCapability(MobileCapabilityType.APP, "c://apk//sample.apk");
	
   driver = new AndroidDriver<MobileElement>("http://127.0.0.1:4444/wd/hub",cap);
}

@Test
public void testcase1()throws Exception {
   driver.findElementByID("Example").click();
   Asser.assertTrue(driver.findElementByID("Example").isDisplayed));
}

@After
public void testCaseTearDown() {
   driver.quit();
}

Step 5 - Test olayını yürütmek.

  • Derleme varyantına tıklayın ve Birim Testi'ni seçin.
  • Appium sunucusunu belirli bağlantı noktası "4444" ile başlatın.
    • Windows için Appium'u buradan indirin.
    • .Exe dosyasına çift tıklayın ve Appium'u kurun.
    • UI'yi yükseltmek için simgeye tıklayın.
    • Gerekirse bağlantı noktasını aşağıda gösterildiği gibi değiştirin.
    • Sunucuyu başlatmak için Oynat düğmesine tıklayın.
  • Cihazı USB hata ayıklama ile bağlayın veya bir öykünücü başlatın.
  • Test sınıfına sağ tıklayın ve "Çalıştır" a tıklayın.

Zucchini, BDD tarzı alana özgü bir dil (DSL) kullanan yeni bir test çerçevesidir. Odak alanlarından biri Selenium ile yazılan kabul testlerini basitleştirmektir.

Daha sonra göreceğiniz gibi JBehave veya Robot Framework yerine geçmez. Burada, adım adım bir örneği açıklayarak size Zucchini'nin kavramlarına bir göz atacağız.

Kabak nasıl kurulur

Zucchini'yi kurmanın önkoşulu XCode 4.2'dir. Ek olarak, brew update && brew install imagemagick && brew install coffee-script gibi birkaç komut satırı aracı gereklidir.

Kabak Nasıl Kullanılır

  • gem install zucchini-ios

  • Zucchini, uygulama kodunuzda herhangi bir değişiklik yapmayı gerektirmez. Zucchini testlerinizi ayrı bir projede de saklayabilirsiniz.

  • Bir proje iskelesi oluşturarak başlayın

  • zucchini generate --project /path/to/my_project

  • İlk özelliğiniz için bir özellik iskelesi oluşturun

  • zucchini generate --feature /path/to/my_project/features/my_feature

  • Değiştirerek hacklemeye başlayın features/my_feature/feature.zucchini ve features/support/screens/welcome.coffee.

  • Alternatif olarak, Apple'ın CoreDataBooks örneği etrafında keşfedilmesi kolay bir Zucchini kurulumunu içeren kabak demo projesine göz atın.

Cihazda çalışıyor

  • Cihazınızı şuraya ekleyin: features/support/config.yml.

  • udidetect ara sıra cihaz eklemeyi planlıyorsanız yardımcı program kullanışlıdır - udidetect -z.

    ZUCCHINI_DEVICE="My Device" zucchini run /path/to/my_feature

  • İOS Simulator üzerinde çalışıyor. Zucchini özelliklerinizi gerçek donanım üzerinde çalıştırmanızı şiddetle tavsiye ederiz. Ancak, gerekirse iOS Simulator'da çalıştırabilirsiniz.

    • Öncelikle, features/support/config.ymlderlenmiş uygulamanızın tam yolunu dahil etmek için. Örneğin,

      app: /Users/vaskas/Library/Developer/Xcode/DerivedData/CoreDataBooks-ebeqiuqksrwwoscupvxuzjzrdfjz/Build/Products/Debug-iphonesimulator/CoreDataBooks.app

    • İkinci olarak, cihazlar bölümüne bir 'iOS Simulator' girişi ekleyin (UDID gerekmez) ve iOS Simulator ayarlarınıza göre 'ekran' için gerçek değeri sağladığınızdan emin olun -

  • Gibi çalıştırın -

    ZUCCHINI_DEVICE="iOS Simulator" zucchini run /path/to/my_feature

Sonuç Ekranı