Mam małą aplikację, która współdziała ze zdalną usługą android
. Chciałbym wyśmiewać tę usługę w testach jednostkowych. Używam Robolectric i JUnit
dla innych przypadków testowych i cieni, ale nie mogłem sobie wyobrazić, jak radzić sobie z usługami zdalnymi.Jak przetestować zdalny serwis pomocy Android
Czy wystarczy utworzyć i uruchomić usługę testową przy użyciu tego samego pakietu z prawdziwymi usługami i metodami eksportu przy użyciu tego samego aidl
?
Ponieważ nie mam kodu do tej usługi, zakładam, że nie mogę użyć Robolectric
's ShadowService, która wymaga obecności rzeczywistej klasy.
Wielkie dzięki.
Myślę, że twoje linki są zepsute. – PunDefeated
Czy testujesz usługę zdalną lub małą aplikację, która wchodzi w interakcję ze zdalną usługą Android? Jeśli testujesz aplikację, zacznę od kodowania do interfejsu. Wszystkie połączenia do usługi zdalnej powinny być wykonywane za pomocą interfejsu. Twoja mała aplikacja będzie miała implementację interfejsu, który faktycznie wywołuje zdalną usługę. Twój pakiet testowy będzie miał drugą implementację, która kpi z informacji zwróconych przez zdalną usługę. Każdy test może skonfigurować niektóre zabezpieczenia w danych pamięci używanych przez implementację pakietów testowych. –
Nie zrobiłem czegoś takiego w Androidzie, ale mam ze sprężyną w innych aplikacjach java, więc nie jestem pewien dokładnego rozwiązania. –