내 앱에서 실제 상황에서 에스프레소 테스트를 실행하려고합니다. 문제는 테스트가 실행되지 않는다는 것입니다. Espresso
은 유휴 상태를 감지하여 대기열에 이벤트를 주입 할 수 없기 때문입니다. 따라서 알려진 ASYNC_TASKS_HAVE_IDLED
오류로 중단되고 종료됩니다.AsyncTask를 끝내지 않는 에스프레소 테스트
왜 이런 일이 발생합니까?
응용 프로그램은 SignalR
라이브러리를 사용하며 응용 프로그램 시작시 초기화됩니다. "Library GitHub url". 이 라이브러리는 서버와 모든 종류의 메시지 및 이벤트를 보내고 받기 위해 여러 개의 긴 폴링 연결을 만듭니다.
이러한 연결은 AsyncTask
(class url)로 구현되며, 그들은 거의 끝 없다 (그리고 그들이 할 때, 그들은 즉시 다시 시작) 이후, 에스프레소는 idle
상태를 감지하고 실행을 계속하는 아주 작은 기회가있다.
그래서이 문제에 대한 해결 방법이 있습니까? 이 때문에 UIAutomator
으로 전환해야합니까?
참고 : SignalR이 옵션을 선택하지 않습니다 비활성화
- SignalR 비웃음
- (시도는, 테스트는 내가 응용 프로그램의 포인트를 누락 작동하지만)도 옵션이 아닙니다. 실제 데이터를 테스트하고 싶습니다.
감사합니다.
답장을 보내 주셔서 감사합니다. 유휴 리소스는이 경우 따라야 할 일반적인 경로 중 하나이지만 유감스럽게도 유휴 리소스를 등록 또는 등록 취소 할 수 없기 때문에 라이브러리 소스에 액세스 할 필요가 없습니다. 위의 사례에서 적절한 해결책이 없다고 생각합니다. – bajicdusko