Uygulamanızı test etme

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, diğer cihazların müdahalesini önler ve bant genişliğinin kısıtlanması gibi farklı ağ koşullarını simüle etmenize olanak tanır.

Çeşitli üreticilerin farklı akıllı ev cihazı türlerini kullanarak test yapmanız gerekir. 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 üreticinin çeşitli Android cihazlarıyla 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 testin yerini tutmaz 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:

  1. İlk kurulum ve yeni cihazlarla eşleme, uygulama yeniden başlatıldıktan, cihaz yeniden başlatıldıktan veya ağ değişikliklerinden sonra mevcut cihazların yeniden bulunması dahil olmak üzere cihaz bulma ve eşleme. Ayrıca, yanıt vermeyen cihazlar veya kullanıcının yanlış kimlik bilgileri girmesi gibi senaryoları da kontrol edin.
  2. Durum senkronizasyonu: Uygulamanın, mevcut durumu doğru şekilde ve zamanında yansıtacak şekilde güncellenmesini sağlar.
  3. İzinlerin nasıl yönetildiği ve uygulandığı (özellikle uygulamanız birden fazla kullanıcıyı veya paylaşılan ev erişimini destekliyorsa) Bu kapsamda, uygulamanızın iptal edilen izinleri sorunsuz bir şekilde işlediğini doğrulamanız gerekir.
  4. Uygulamanız sahneleri destekliyorsa (ör. tüm ışıkları kapatan bir "İyi geceler" sahnesi) sahne oluşturma, değiştirme ve yürütme 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 yapın. Kaynak kullanımının makul olup olmadığını görmek için uygulamanızın CPU, bellek ve pil tüketimine de özellikle etkin cihaz 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:

  1. 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.
  2. Cihaz bağlantısının kesilmesi
    • Cihazların fişini çekin.
    • Cihazları kapatıp açın.
  3. Eşzamanlı işlemler
    • Hızlı bir komut dizisi gönderme
    • Birden fazla kullanıcının aynı cihazı aynı anda kontrol etmesini sağlayın.
    • Çakışan sahneleri ve otomasyonları test edin.
  4. 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.
  5. 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.