Bir parçaya çizilen bir düğmenin varlığını doğrulamak istiyorum. Düğmenin görünürlüğü ve varlığı, Retrofit ile yapılan bir ağ çağrısına/yanıtına bağlıdır.Espresso testlerinde ağ görüşmesine bağlı düğmeyi bekleyin
Eşzamansız doğa nedeniyle, IdlingResource ile gitmem gerektiğini düşündüm. Benim sorunum, true yanıtının isIdleNow() için ne iyi bir yaklaşımın olacağını bilmem. findElementById (R ..) ile elemanın tutuşunu tutmaya çalışmalı mıyım yoksa bu bekletme iddialarını yapmak için başka tipik "Espresso yolu" var mı?
Düzenleme:
while (timeout-- > 0) {
try {
onView(withId(element)).check(matches(isDisplayed()));
} catch (AssertionError ae) {
MiscUtil.sleep(1000);
continue;
}
return true;
}
Ama bu Espresso esaslara göre değil sanırım:
Güncel çözüm IdlingResource olmadan basitçe. Bir IdlingResource uygulamasından yapılan check-match çağrısının yapılması, tüm thread'ları bir nedenden dolayı askıya aldı.