woong's
Android Jenkins Junit 연동하기 본문
Jenkins JunitJUnit은 표준으로 자리잡은 단위 테스팅(unit-testing) 프레임웍 Junit 준비기존 android.test.InstrumentationTestRunner 는 junit 결과는 xml 을 따로 저장 하는 기능이 없음 http://github.com/jsankey/android-junit-report/downloads 해당경로를 통해서 jar 파일 다운로드
다운받은 jar 파일을 해당 프로젝트 libs 파일에 넣어준다 . 여기서 주의점은 Target 이 Test 프로젝트 입니다.
Junit 설정AndroidManifest.xml 에 instrumentation 을 변경해 준다. ant.properties 파일에 변경한 instrumentation 를 적어준다
test.runner=com.zutubi.android.junitreport.JUnitReportTestRunner
블로그 처음부터 설정해오신분은 test.runner 가 android.test.InstrumentationTestRunner 로 되있으실겁니다. 그러신 분은 꼭 android.junitreport.JUnitReportTestRunner 변경해주셔야 합니다. 자동화로 진행하신분은 Jenkins 쪽 Command 명령어를 변경해주셔야합니다. echo tested.project.dir=../TemperatureConverter>ant.properties echo test.runner=com.zutubi.android.junitreport.JUnitReportTestRunner>>ant.properties
Ant Debug해당 프로젝트의 경로에서 ant debug install test 명령어를 통해서 SUCESS 가 나오는것을 확인
ant 명령어가 되지 않을시에 시스템변수 path 에 ant 경로가 지정되어 있어야 합니다.
여기까지 완료가 되면 android DDMS 해당 기존 프로젝트를 가시면 xml 파일이 만들어져 있는것을 확인할수 있습니다.
추가가 된것을 확인 하셨으면 이파일을 Test 프로젝트로 이동시켜야 합니다 . 여기서 adb 명령어를 진행해야 하는데 주의점은 adb 명령어가 안되는 경우가 있습니다 . 시스템 변수 path adb 경로가 잡혀 있지 않아 이러한 경우가 생깁니다 .
자신의 android sdk 의 platform-tools 에 가면 adb.exe 가 있습니다 . 그 path를 잡아주시면 됩니다 .
adb pull /data/data/main app package/files/junit-report.xml 해당 명령어를 동해서 이동 위와 같은 응답이 오면
위와 같이 xml 파일이 들어와 있는 것을 확인 할수 있습니다 . 커밋을 꼭 !! 해주시고 jenkins 설정으로 넘어 가겠습니다. 자동화로 하신분은 파일역시 자동화로 진행이되어야 전체적으로 자동화를 돌릴수있습니다. 파일역시 자동화가 가능하므로 이와같이 진행해주시면 되겠습니다.
자동화로 모든것을 진행한 순서는 이와같이 나타납니다.
3. Jenkins 설정Test 프로젝트 설정 으로 이동
Test report XMLs 에 해당 xml 파일 이름을 입력 합니다. 입력을 하면 에러가 나타납니다 . 이에러는 해당 프로젝트에 파일이 없다고 나오는 에러 입니다 .
Jenkins 폴더의 프로젝트에는 파일이없습니다 . Jenkins workspace 해당프로젝트에 junit-report.xml 붙여 넣으면 에러가 사라 지게 됩니다. Build Now 를 하면 Jenkins workspace Clean 하면서 svn에 있는 프로젝트를 읽어 성공하는 화면을 볼수 있습니다.
|
'Develop > Android' 카테고리의 다른 글
android studio testing 환경 구축 하기(1) (0) | 2016.02.13 |
---|---|
Android FindBugs 연동하기 (0) | 2016.02.13 |
Jenkins Emma 연동하기 (0) | 2016.02.13 |
Jenkins N’SIQ (0) | 2016.02.13 |
2. Android Jenkins 연동하기 (0) | 2016.02.13 |