2013-03-19 1 views
1

Robotium Solo 4.0에 내장 된 방법으로 시스템 시계 시간을 변경합니까?Robotium Solo 4.0을 사용하여 시스템 시계 변경

설정 앱을 열고 시계를 탐색하고 시간을 변경하는 코드를 작성할 수도 있지만 Robotium에이 기능이 내장되어 있으면 매우 유용 할 것입니다. 설정 메뉴는 OS 버전에 따라 많이 달라 지므로 모든 Android OS에서이 작업을 올바르게 수행하는 방법을 작성하는 것은 많은 작업이 될 것입니다.

영업일 중에 날짜를 선택할 수있는 앱에서 날짜 선택 도구가 몇 개 있습니다. 따라서 날짜 선택 도구로 내 선택 항목을 선택하는 데 정상적인 영업 시간 내에 있습니다.

아무 것도 내장되어 있지 않고 누군가가 설정 앱으로 이동하기 위해 자체 Robotium 스크립트를 작성한 경우 접근 방식을 공유해 주시면 감사하겠습니다.

미리 감사드립니다.

답변

2

몇 가지 해결책이 있습니다. 당신이 전화 시계를 변경할 수 없기 때문에

, 프로그램 당신은

그냥 쉽게 현재 시간을 기준으로 할 당신이 쉽게 당신이 당신의 업무 시간을 변경할 수 있습니다 이런 식으로 업무 시간을 고려하는 내용을 변경 할 수있는 배제하지 않는다 수 , 예. 현재 시간 범위를 허용하거나 허용하지 않으려면 변경하고 테스트의 기준으로 사용하십시오. 완벽하지는 않지만 정확한 시간 범위를 테스트하지 않아도 포함/제외 할 코드를 테스트 할 수 있습니다 (데이터를 검사하기위한 테스트를 정상적으로 수행 할 수 있어야하지만 일반적으로 올바른 값이므로 결합됨). 이전 테스트와 함께이 아마 당신에게 충분한 확신을 줄 것이다.

또는 ...

당신은 당신이 당신의 테스트에이 통합에 대해 가지 방법 당신의 PC에서 명령을 사용하여 비 뿌리 휴대폰에 날짜를 설정할 수 있습니다

(당신은 날짜를 테스트 세트를 실행하여 테스트 등을 실행하도록 설정해야합니다.) 이렇게하려면 'adb shell date'명령을 사용하십시오 (stackoverflow에서 사용법을 검색 할 수 있습니다).

+0

헤이 폴 - 당신의 대답에 감사드립니다. 그는 첫 번째 제안은 "업무 시간"이 서버에 정의되어 있고 로그인 할 때 앱으로 전송되기 때문에 서버 팀의 도움 없이는 작동하지 않습니다. 두 번째 솔루션이 마음에 듭니다. 테스트를 실행하기 전에 adb shell date 명령을 사용하기위한 스크립트를 작성하겠습니다. 감사! – DiscDev

+0

물론 응용 프로그램에 특수 모드를 추가하여 서버에서 요청하지 않거나 서버가 다른 매개 변수에 따라 다른 데이터를 제공하도록 할 수 있습니다. 어쨌든 옵션 2로 충분할 수도 있습니다! –

+0

가능한 경우 모든 특수 "테스트"코드를 응용 프로그램에 추가하는 것을 피하려고합니다. 나는 이것을 활용할 수있는 "디버그 모드"를 가지고 있지만, 테스트 전용 코드를 앱에 뿌리는 것이 싫다. 당신의 도움을 주셔서 감사합니다! – DiscDev

0

아마 설정 앱을 열고 몇 가지 코드를 작성할 수있는 시계로 이동 당신은 robotium 함께 할 수없는 시간

을 변경합니다. Robotium (및 Robotium 기반의 Instrumentation)은 테스트 된 애플리케이션에만 액세스 할 수 있습니다.

정직하게 말하면 장치를 작동시키지 않고 프로그래밍 방식으로 시스템 시계를 변경하는 기능은 없습니다. 루팅 된 기기에서 변경하는 방법은 다음에서 찾을 수 있습니다. Setting system time of ROOTED phone