2011-11-23 4 views
5

애니메이션을 사용한 활동 단위 테스트를 작성하고 있습니다. 애니메이션은 무한 지속 시간 (스플래시 화면)의 회 전자 드로잉을 단순 회전합니다.활동에 애니메이션이있는 경우 Android 단위 테스트

단위 테스트를 시작할 때마다 모든 테스트는 애니메이션이 끝날 때까지 기다리는 것처럼 보이므로 충격을받지 않습니다. 1로 설정하면 애니메이션이 빨리 끝납니다.

테스트를 끝내기 위해 어떻게 애니메이션을 끝낼 수 있습니까?

답변

1

애니메이션 이외의 동작을 테스트하려고한다고 가정합니다.

아마도 테스트하려는 코드의 경로에서 애니메이션을 옮기는 것이 가장 좋습니다. 이는 활동에 의존하지 않는 다른 코드 - 코드를 움직이는 것을 의미합니다. Activity 밖이 아니라면 적어도 Activity 라이프 사이클 메소드 밖 (onCreate(), ...). 그런 다음 동작을 전혀 실행하지 않고이 동작을 확인할 수 있습니다. 액티비티를 전혀 시작하지 않고 (onCreate()를 호출하지 말고) 동작을 실행하는 것이 더 좋다.

당신이 직면 한 문제는 프레임 워크 확장 점에 직접 코드를 삽입 할 때 일어나는 특별한 경우입니다. 그러면 코드가 프레임 워크와 혼합되어 순서에 상관없이 작동하지 않게됩니다 당신이 실행하는 부분은 do입니다. 그러지 마라. 프레임 워크에 의존하지 않는 클래스에 코드를 넣은 다음 프레임 워크 확장 점 (이 경우 Activity)을 사용하여 Android에 코드를 연결하십시오. 액티비티는 코드가 존재 함을 알고 있습니다. 당신의 코드는 여전히 안드로이드를 모르는 채로 남아 있습니다. 이제 애니메이션과 같은 것들 도중에 얻을 수 없습니다.

관련 문제