2015-05-13 16 views
8

Tüm android geliştiricileri için sıkıcı bir konu olduğunu biliyorum. Ancak Android Testine tam olarak doğru yaklaşım nedir?Android Birim Testine doğru yaklaşım

Resimde gördüğüm şey budur.

% 70 Birim test (tüm iş mantığını test etmek JUnit, ağ katmanı, veritabanı katmanı vs ...)

% 20 Entegrasyon testi (Belki esas API testlerinin sonucunda? Sahte sunucuya karşı test?)

10% UI testi (UI etkileşimlerinden başka bir şeyle dalga geçme, büyük olasılıkla Mockito + Espresso)

Bu, herkesin takip ettiği şey mi yoksa başka bir model mi var?

Şimdiden teşekkürler!

+0

Buradaki% 100 toplamı, uygulama mantığını veya toplam test sayınızı toplamayı kapsıyor mu? – hidro

+0

Merhaba @hidro% 100 yüzde Android Test yapısını haklı çıkarmak için bir neden. Özellikle benim projem için değil :) – WenChao

cevap

6

Bu soru ve cevabımın Android ile ilgisi yok, ancak bu iyi bir şey.

Varsayımlarınızı biraz değiştirdim, ancak prensip aynı.

  • 70% Birim testi (JUnit tüm iş mantığını test etmek.)

  • 20% Entegrasyon testi (ağ katmanı, veritabanı katmanı vb gerçek sunucu)

  • 10% UI testi (Kullanıcı arayüzü iş akışı + manuel test)

% 70 mi? % 80? % 85? Fark etmez. Anahtar orandır. Testlerin çoğunun fast, isolated in memory tests olmasını istersiniz. Bir veritabanı ile etkileşimde bulunursanız, sadece sorgularınızı bilmek istersiniz. Güncelleştirme sorgusu doğru nesneyi güncelliyor mu? Son olarak UI çalışmalarınızı beklediğiniz gibi kontrol edersiniz. Ne seviyede sergilediğiniz önemli değil. Kullanıcı girişinize girmediğinde giriş ekranı görüntülenir.

Bu, genellikle Test Pyramid olarak adlandırılır ve açıkladığınız oranlar hariç, tanımladığınız şeydir.

İlgili konular