2011-12-01 15 views
19

Bana göre robotyum, tüm uygulama yerine bir seferde 1 Aktiviteyi test edecek şekilde tasarlandı.Android & Robotium - Ekstradan beklenen test etkinliği?

Bu yüzden sorum, ona geçirilecek bir ekstra olmasını bekleyen bir etkinliği nasıl test edebilirim? ekstra tarafından ben intent.putExtra("Something", object);

cevap

25

yöntem setActivityIntent (Niyet) Eğer aradığınızı olmalıdır demek istiyorum. Etkinliğimin TestCase'ına özel bir niyet sağlamak için bu yöntemi kullandım. Yapıcınızdaki süper'u aradıktan sonra kullanın.

Intent i = new Intent(); 
i.putExtra("myExtra", "anyValue"); 
setActivityIntent(i); 

Sen bence yapıcısı bunu yapmak zorunda değilsiniz, ama ilk kez getActivity() aramadan önce bunu diyoruz emin olmak gerekir. getActivity, Etkinliği oluşturmak için Niyetinizi kullanacaktır.

+0

Teşekkürler, bunu anlamaya zaman ayırdım! – JPM

+1

Aslında Robotium'un son sürümünde, getActivty() 'den önce setup()' da AptivityIntent() değerini ayarlamalıyız. – imort

4

Bunun yerine getActivity() yöntemini geçersiz kılabilirsiniz.

@Override 
public NewActivity getActivity() { 
    Intent intent = new Intent(); 
    intent.putExtra("exampleExtra", "some data"); 
    setActivityIntent(intent); 
    return super.getActivity(); 
} 

Daha fazla ayrıntı için Testing for Android with Robotium adresine bakın.

İlgili konular