Zastanawiam się, czy istnieje mimo to dodanie wartości Build.Version.SDK_INT
? Załóżmy, że mam następujące wiersze w ClassUnderTest
:Wartość początkowa obiektu Build.VERSION.SDK_INT w teście jednostki lokalnej
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
//do work
}else{
//do another work
}
Jak mogę objąć wszystkie kodu?
Chodzi mi o to, że chcę uruchomić dwa testy z różnymi SDK_INT, aby wprowadzić oba bloki.
Czy to możliwe w Androidzie lokalnych testach jednostkowych przy użyciu Mockito
/PowerMockito
?
Dzięki
To nie zadziała, ponieważ getField() oczekuje na nazwę zmiennej, a Build.VERSION.SDK_INT jest w rzeczywistości wartością. –
setFinalStatic (Build.VERSION.class.getField ("SDK_INT"), "123"); Jeśli to nie działa, może to być PowerMockito przez mockito i wyśmiewać statyczne pole. – toshkinl
Dzięki! Pracował! –