로보티움 튜토리얼 실행해보기
필수 환경
자바 설치
자바 path 설정
이클립스 설치
android sdk 설치
위 환경이 설치되어 있다는 가정하에 실행
로보티움 튜토리얼 페이지
https://github.com/RobotiumTech/robotium/wiki/Robotium-Tutorials
위 링크에서
환경 설치부터 예제 소스코드와 실행방법 pdf 파일까지 받을 수 있다.
위와 같은 페이지가 나타나는데
우선 Calculator Source Code 와
아래 Black Box Testing 에서 Source Code를 내려받는다.
그런 다음 이클립스에서 2개의 프로젝트를 import 한다음
(Android 프로젝트 Exisiting Android Code Into Workspace로 import)
에뮬레이터를 실행하거나 apk를 설치할 폰을 준비한다.
AndroidCalculator 프로젝트 파일
우선 Android Calculator 프로젝트 우클릭 > Run As > Android Application 을 실행하여
에뮬레이터나 연결된 폰에 Calculator 앱을 설치한다.
설치가 되었으면 이제 BlackBox Testing 프로젝트를 실행해야 한다.
testAndroidCalculatorBlackBox 프로젝트 모습
위 Calculator와 다른 점은 robotium-solo-5.0.1.jar 라이브러리가 있다는 점이다.
저게 있어야 테스팅이 가능하다.
TestApk.java 파일을 보면
package com.testcalculator; import com.robotium.solo.Solo; import android.test.ActivityInstrumentationTestCase2; @SuppressWarnings("unchecked") public class TestApk extends ActivityInstrumentationTestCase2 { private static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME = "com.calculator.Main"; // 꼭 확인 private static Class launcherActivityClass; static { try { launcherActivityClass = Class .forName(LAUNCHER_ACTIVITY_FULL_CLASSNAME); } catch (ClassNotFoundException e) { throw new RuntimeException(e); } } public TestApk() throws ClassNotFoundException { super(launcherActivityClass); } private Solo solo; @Override protected void setUp() throws Exception { solo = new Solo(getInstrumentation(), getActivity()); } public void testDisplayBlackBox() { // Enter any integer/decimal value for first editfield, we are writing 10 solo.clearEditText(0); solo.enterText(0, "10"); // Enter any integer/decimal value for first editfield, we are writing 20 solo.clearEditText(1); solo.enterText(1, "20"); // Click on Multiply button solo.clickOnButton("Multiply"); // Verify that resultant of 10 x 20 assertTrue(solo.searchText("200")); } @Override public void tearDown() throws Exception { solo.finishOpenedActivities(); } }
예제 코드라 알아서 되어 있겠지만 패키지 네임을 꼭 확인한다. 이 패키지 네임은 테스트할 앱 내 클래스 파일명으로 해주어야 한다.
private static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME = "com.calculator.Main";
그래야 해당 앱을 실행해서 테스트가 가능하다.
또 확인해야 할 것이 메니페스트 파일인데 열어보면
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.testcalculator" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="10" /> <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.calculator" android:label="TestAndroidCalculatorBlackBox"/> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <uses-library android:name="android.test.runner" /> </application> </manifest>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.testcalculator" // 이 패키지명은 test프로젝트의 패키지 명이어야 하고
<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.calculator" android:label="TestAndroidCalculatorBlackBox"/>
이 타겟 패키지명은 해당 앱 패키지명이어야 한다. 말 그대로 타겟이니 테스트할 앱 패키지명을 적어준다.
위 프로젝트 사진을 보면
패키지명이 나와있다.
AndroidCalculator 패키지명 : com.calculator |
testAndroidCalculatorBlackBox 패키지명 : com.testcalculator |
|
|
확인이 끝났다면
testAndroidCalculatorBlackBox 프로젝트 우클릭 > Run As > Android Juit Test 을 클릭하여 테스트를 실행한다.
물론 에뮬레이터에 앱을 설치헀으면 똑같이 에뮬레이터에서 실행하고 폰이면 폰에서 실행한다.
폰으로 실행한 영상
이렇게 자동으로 곱셈계산이 된다.
마지막으로 요약하자면
1. 로보티움 튜토리얼 페이지에서 AndroidCalculator 프로젝트와 testAndroidCalculatorBlackBox 프로젝트 파일을 내려받는다.
2. 이클립스에서 두 프로젝트를 import 한다.
3. 먼저 AndroidCalculator 을 실행하여 설치한다.
4. testAndroidCalculatorBlackBox 프로젝트 패키지명 확인한 뒤 Run As > Android Juit Test 로 실행한다.
나중에 apk 파일만 가지고 테스트 하는 방법을 알아보아야겠다.
앱 서명문제 때문에 번거로운거 같다..
'지식메모 > 자동화' 카테고리의 다른 글
테스터로서 느낀 4가지 실수들 (0) | 2016.06.14 |
---|---|
appium 에서 특정영역을 좌우로 swipe 하기 (2) | 2016.05.23 |
Appium 자동화 상하좌우 스크롤 하기 (0) | 2016.03.23 |
Robotium API 기능 알아보기 (0) | 2016.02.18 |
Selenium & Webdriver 자동화 테스트 예제 - Naver 지식인 (크롬 브라우저) (0) | 2015.01.23 |