У меня есть небольшое приложение, которое взаимодействует с удаленным сервисом android
. Я хотел бы издеваться над этим сервисом в модульных тестах. Я использую Robolectric и JUnit
для других тестовых примеров и теней, но я не мог понять, как обращаться с удаленными службами.Как протестировать удаленный сервис поддержки android
Достаточно ли создать и запустить тестовую службу с использованием того же пакета с реальными методами обслуживания и экспорта с использованием того же aidl
?
Поскольку у меня нет кода для этой услуги, я полагаю, что я не могу использовать Robolectric
ShadowService, для которого требуется наличие фактического класса.
Большое спасибо.
Я думаю, что ваши ссылки не работают. – PunDefeated
Вы тестируете удаленную службу или небольшое приложение, которое взаимодействует с удаленным сервисом Android? Если вы тестируете приложение, я бы начал с кодирования интерфейса. Все вызовы удаленной службы должны выполняться с помощью интерфейса. В вашем маленьком приложении будет реализован интерфейс, который фактически вызывает удаленный сервис. Ваш тестовый пакет будет иметь вторую реализацию, которая издевается над информацией, полученной от удаленной службы. Каждый тест может настраивать некоторую поддержку в данных памяти, которая используется при реализации тестовых пакетов. –
Я не сделал что-то подобное в android, но имею весну в других приложениях Java, поэтому я не уверен в точном решении. –