2014-11-04 6 views
0

누군가 MonkeyTalk과 함께 Android 프로젝트 용 Ant 구성에 관련된 세부 단계를 제공 할 수 있습니까? Android 프로젝트, MonkeyTalk 에이전트 및 AntRunner가 있습니다.MonkeyTalk with AntRunner

Ant를 사용하여 Android 빌드 생성을 자동화해야하며 MonkeyTalk를 빌드에 통합해야합니다.

AntRunner를 사용하면 가능합니까?

동적 계측

답변

1

, 당신은 샘플 Ant 스크립트 아래에 시도 할 수 있습니다 : 당신은 같은 명령 줄에서 실행할 수 있습니다

<target name="instru"> 
    <mt:instrument 
     src="/path/to/MyApp.apk" 
     dest="/path/to/MyApp-Instrumented.apk" 
     agent="/path/to/monkeytalk-agent-2.0.2.jar" 
     androidSdk="/path/to/android-sdk" 
     androidTarget="android-19" 
     log="log.txt" 
     verbose="true" /> 
    </target> 

저장 build.xml 파일로 위의 스크립트 및 this :

ant -lib /path/to/monkeytalkpro-ant-2.0.2.beta.jar instru

MonkeyTalk Professional은 Android 앱의 앱 제어 기능을 제공합니다 (Pro Application Control 참조). MonkeyTalk Professional Ant 라이브러리에는 테스트중인 앱을 제어 할 수있는 App 작업이 포함되어 있습니다. App 작업에는 응용 프로그램을 설치, 제거, 실행, 시작, 중지 및 다시 시작할 수있는 기능이 포함되어 있습니다. 현재 Android 만 지원됩니다. ,

<property name="sdk.dir" value="/path/to/android-sdk" /> 
<property name="packageName" value="com.example.myapp" /> 
<property name="activityName" value="RootActivity" /> 

<target name="install"> 
    <mt:app action="install" 
     binary="Out.apk" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
</target> 

<target name="uninstall"> 
    <mt:app action="uninstall" 
     packageName="${packageName}" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
</target> 

<target name="launch"> 
    <mt:app action="launch" 
     packageName="${packageName}" 
     activityName="${activityName}" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
</target> 

<target name="restart"> 
    <mt:app action="relaunch" 
     packageName="${packageName}" 
     activityName="${activityName}" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
</target> 

<target name="stop"> 
    <mt:app action="stop" 
     packageName="${packageName}" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
</target> 

<target name="isInstalled"> 
    <mt:app action="isInstalled" 
     packageName="${packageName}" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
    <echoproperties prefix="monkeytalk" /> 
</target> 

<target name="isRunning"> 
    <mt:app action="isRunning" 
     packageName="${packageName}" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
    <echoproperties prefix="monkeytalk" /> 
</target> 

(CI) 서버 지속적인 통합에 대한 테스트를 실행하는 경우 CI 에서 실행 : 여기

모든 응용 프로그램 제어 동작을 행사하는 샘플 Ant 스크립트입니다 젠킨스 (Jenkins)와 마찬가지로 일반적으로 위의 모든 Ant 작업과 테스트 용 일반 MonkeyTalk Run 작업 (Ant Runner 참조)을 하나의 Ant 스크립트로 결합합니다.

<property name="sdk.dir" value="/path/to/android-sdk" /> 
<property name="instrumentedApp" value="/path/to/MyApp-Instrumented.apk" /> 
<property name="packageName" value="com.example.myapp" /> 
<property name="activityName" value="RootActivity" /> 

<target name="instru"> 
    <mt:instrument 
     src="/path/to/MyApp.apk" 
     dest="${instrumentedApp}" 
     agent="/path/to/monkeytalk-agent-2.0.2.jar" 
     androidSdk="${sdk.dir}" /> 
</target> 

<target name="uninstall"> 
    <mt:app action="uninstall" 
     packageName="${packageName}" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
</target> 

<target name="install"> 
    <mt:app action="install" 
     binary="${instrumentedApp}" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
</target> 

<target name="launch"> 
    <mt:app action="launch" 
     packageName="${packageName}" 
     activityName="${activityName}" 
     androidSdk="${sdk.dir}" 
     verbose="true" /> 
</target> 

<target name="test"> 
    <mt:run 
     agent="AndroidEmulator" 
     adb="${sdk.dir}/platform-tools/adb" 
     thinktime="1000" 
     timeout="10000" 
     suite="${basedir}/mysuite.mts" 
     reportdir="${basedir}/myreports" 
     startup="30" 
     verbose="true" /> 
</target> 

<target name="all"> 
    <antcall target="instru" /> 
    <antcall target="uninstall" /> 
    <antcall target="install" /> 
    <antcall target="launch" /> 
    <antcall target="test" /> 
    <antcall target="uninstall" /> 
</target> 

다음은 위의 스크립트에서 모든 대상이하는 모든 일 : 여기

은 CI에 사용되는 샘플 Ant 스크립트입니다. 첫 번째는 앱을 계측하는 것입니다. 그런 다음 제거되어 대상 장치가 깨끗한 지 확인하십시오. 그런 다음 인스트루먼트 된 앱을 설치하고 실행합니다. 다음으로 MonkeyTalk 테스트 스위트를 실행합니다. 그리고 마지막으로 다시 제거되어 자체적으로 정리합니다. 참고 : 이것은 Android 전용입니다 (동적 계측 및 앱 제어는 현재 Android에서만 사용할 수 있기 때문에).

당신은이 같은 명령 줄에서 실행할 수 있습니다

개미 -lib /path/to/monkeytalkpro-ant-2.0.2.beta.jar 모든