Diğer Android uygulaması türlerinin aksine, Home API'leri uygulaması kendine özgü hususları ve zorlukları vardır. Bunlar arasında fiziksel akıllı ev cihazlarına bağımlılık, ağ güvenilirliği, güvenlik ve gizlilik ile cihaz ve protokol birlikte çalışabilirliği yer alır. Bu farklılıklar testleri etkiler.
Test ortamınızı ayarlama
Home API'leri uygulamasını test etmek için sağlam bir test ortamı gerekir.
Home API test cihazlarınızı özel bir kablosuz ağda izole etmek iyi bir stratejidir. Bu sayede diğer cihazların müdahalesi önlenir ve bant genişliği sınırlama gibi farklı ağ koşullarını simüle edebilirsiniz.
Çeşitli üreticilerin farklı akıllı ev cihazı türlerini kullanarak test yapmanız önerilir. Gerçek, fiziksel cihazlarla test ettiğinizden emin olun. Sanal cihazlar ve emülatörler kullanılabilir ancak yalnızca bunlara güvenilmemelidir.
Aynı şekilde, uygulamanızı farklı ekran boyutlarına sahip ve farklı Android sürümlerini çalıştıran, birden fazla üreticiye ait çeşitli Android cihazlarda test etmek de daha geniş bir uyumluluğu doğrulamanıza yardımcı olur.
Araçlarınızı bir araya getirin
Aşağıdaki araçlar, Home API'leri uygulamasını test etmede faydalıdır:
Araç | Açıklama |
---|---|
Google Home Plugin for Android Studio | Google Assistant Simulator, Home Graph Görüntüleyici, Google Cloud Logging ve Android Debug Bridge (adb) Günlüğü Görüntüleyici'ye erişim sağlar. |
Google Home Playground | Gerçek fiziksel cihazlarla yapılan testlerin yerine geçmez ancak birçok test senaryosunda çok değerlidir. |
Matter Virtual Device (MVD) | Home API'leri uygulamasında Matter cihazlarla test yaparken faydalı olabilecek başka bir emülasyon uygulaması. |
Espresso | Kullanıcı arayüzü testini otomatikleştirmenize olanak tanır. Donanım etkileşimlerini simüle etmek için temel API'yi taklit etmeniz gerekir. |
Ağ emülatörü | Çeşitli ağ koşullarını ve API yanıtlarını simüle etmenizi sağlar. Bu özellik, özellikle Home API'niz bulut arka ucu kullanıyorsa yararlıdır. |
Android Studio Logcat | Günlük verilerini işleme ve analiz etme |
Farklı test yaklaşımları ve stratejileri uygulama
Ev API'leri uygulamanızda çeşitli test yaklaşımları kullanmanız gerekir. Farklı yöntemler hakkında genel bilgi için Android'de uygulamaları test etme başlıklı makaleyi inceleyin. Tüm Android uygulamalarının geçmesi gereken kullanıcı deneyimi ve güvenlik testlerine ek olarak, testin bazı alanları özellikle Home API'leri uygulamaları için geçerlidir ve aşağıdaki bölümlerde daha ayrıntılı olarak açıklanmıştır.
İşlevsel test
Uygulamanızın özelliklerine bağlı olarak aşağıdaki alanlardan bazılarına özellikle dikkat etmeniz gerekebilir:
- İlk kurulum ve yeni cihazlarla eşleme dahil olmak üzere cihaz keşfi ve eşleme, uygulama yeniden başlatıldıktan, cihaz yeniden başlatıldıktan veya ağ değişikliklerinden sonra mevcut cihazların yeniden keşfi. Ayrıca, yanıt vermeyen cihazlar veya kullanıcının yanlış kimlik bilgileri girmesi gibi senaryoları da kontrol edin.
- Durum senkronizasyonu: Uygulamanın, mevcut durumu doğru şekilde ve zamanında yansıtacak şekilde güncellenmesini sağlar.
- İzinlerin nasıl yönetildiği ve uygulandığı (özellikle uygulamanız birden fazla kullanıcıyı veya paylaşılan ev erişimini destekliyorsa) Buna, uygulamanızın iptal edilen izinleri sorunsuz bir şekilde işlediğinin doğrulanması da dahildir.
- Uygulamanız sahneleri destekliyorsa (ör. tüm ışıkları kapatan "İyi geceler" sahnesi) sahne oluşturma, değiştirme ve çalıştırma işlemlerini test edin. Başlatıcılar ve işlemler de dahil olmak üzere otomasyonları test edin.
Performans testi
Uygulamanızın duyarlı olduğundan ve gereksiz gecikmeye neden olmadığından emin olun. Mümkünse ölçeklenebilirliği ve uygulamanızın yük altındaki performansını değerlendirmek için çok sayıda cihazla test edin. Kaynak kullanımının makul olup olmadığını görmek için uygulamanızın CPU, bellek ve pil tüketimine de özellikle cihazın etkin iletişimi sırasında bakın.
Güvenilirlik ve kararlılık testi
Ağ bağlantısına bağımlı oldukları için Home API'leri uygulamaları aşağıdaki senaryolara göre test edilmelidir:
- Ağ dalgalanması
- Kablosuz bağlantı kesintilerini, zayıf sinyalleri ve ağ geçişlerini simüle edin.
- Uygulamanızın bağlantı kesilmelerini ve yeniden bağlanmaları sorunsuz şekilde işlediğini doğrulayın.
- Bağlantı geri yüklendiğinde komutların sıraya alındığını ve yürütüldüğünü doğrulayın veya uygun hata mesajları sağlayın.
- Uygulamayı yalnızca ev ağından değil, uzak ağlardan da test edin.
- Cihaz bağlantısının kesilmesi
- Cihazların fişini çekin.
- Cihazları kapatıp açın.
- Eşzamanlı işlemler
- Hızlı bir komut dizisi gönderme
- Birden fazla kullanıcının aynı cihazı aynı anda kontrol etmeye çalışmasını sağlayın.
- Çakışan sahneleri ve otomasyonları test edin.
- Hata işleme
- Örneğin, bulut API sunucusu yanıtlarını taklit ederek API hatalarını zorlayın.
- Kullanıcının geçersiz girişini test edin.
- Sorunsuz hizmetten düşme ve bilgilendirici hata mesajlarını doğrulayın.
- Güvenilirlik: Olası bellek sızıntılarını veya kararlılık sorunlarını ortaya çıkarmak için uygulamayı ve bağlı cihazları uzun süre çalıştırın.