2011-09-05 2 views
6

저는 Android 프로젝트와 Cucumber와의 지속적인 통합을 설정하려고합니다.오이 안드로이드 통합 테스트하는 방법?

아이디어는 Cucumber에서 테스트를 작성하고 안드로이드 용 Cuke4Duke 및 NativeDriver를 통해 Android 빌드에서 테스트를 실행하는 것입니다.

이 프로그램을 실행하면 메이븐 (Maven)과 젠킨스 (Jenkins) 서버를 사용하여 테스트를 자동화 할 계획이므로 Subversion repo를 실행할 때마다 실행됩니다.

이전에이 작업을 수행 했습니까? 어딘가에 좋은 가이드가 있습니까? 아니면 이렇게하는 것이 나쁜 생각입니까?

+0

이 라이브러리를 사용해 보는 것이 좋습니다. https://github.com/mauriciotogneri/green-coffee 가져 오기 만하면 Gherkin으로 작성된 테스트를 실행할 수 있습니다. –

답변

0

나는 계획 한 것이 나쁜 생각이라고 생각하지 않습니다. 하지만 나는 그 특별한 설정으로 안드로이드 CI를하고있는 사람을 모른다.

Android 용 Selenium과 같은 Robotium을 살펴보고 cuke4duke 단계 구현에 도움이되는 매우 풍부한 DSL을 제공 할 수도 있습니다.

0

우리 회사에서는 조금 다른 설정을 사용합니다 (그러나 비슷한 문제를 해결해야합니다) : Jenkins + Jenkins Android Plugin + Robotium + Ant. 우리는 개미가 더 복잡하고 간단한 빌드에 사용하려고 할 때 개미를 유지하기가 어렵다는 것을 알게되고 우리는 스크립트를 다시 gradle로 다시 작성합니다.

두 가지 잠재적 인 문제점을 알고 있어야합니다 : 1. 에뮬레이터가 느립니다 (빠른 서버에서도) - 서버에 물리적 장치를 연결하는 것을 고려할 수 있습니다. 2. 에뮬레이터 인스턴스를 여러 개 사용하면 하드/까다로울 수 있으므로 에뮬레이터에 대해 잠금을 설정하거나 실행 프로그램을 하나만 사용해야합니다.

0

Robotium 위에 테스트 계측 엔진을 작성했습니다. 이 엔진은 주로 텍스트 파일에서 키워드를 읽고 Robotium API 호출로 변환하는 상태 시스템입니다. 처음에는 입력과 출력이 동일하다는 것을 알았습니다. 화면의 사용자 탭, 새 화면이 표시되거나 새 텍스트가 표시됩니다.

키워드 테스트를 구현할 수는 있지만 원격으로는 실행되지 않습니다.

누구에게나 읽을 수있는 새로운 테스트를 쉽게 작성하고 추가 할 수있는 이점의 80 %를 얻는 데 20 %의 노력이 필요합니다. 물론 한계가 있지만 우리의 목표는 달성되었습니다.

건배 채널

관련 문제