2011-05-11 7 views
2

실험으로 Maven을 사용하여 Google Android 마켓 라이센스 라이브러리, 샘플 및 테스트 프로젝트를 빌드하려고합니다. 다음은 테스트 프로젝트의 pom.xml 파일은 다음과 같습니다Maven Android 계측 테스트 출력

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>etherwalker.example</groupId> 
    <artifactId>license_test</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>apk</packaging> 
    <name>License - Instrumentation Tests</name> 

    <parent> 
     <groupId>etherwalker.example</groupId> 
     <artifactId>license_parent</artifactId> 
     <version>0.0.1-SNAPSHOT</version> 
    </parent> 

    <dependencies> 
     <dependency> 
      <groupId>com.google.android</groupId> 
      <artifactId>android</artifactId> 
      <scope>provided</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.google.android</groupId> 
      <artifactId>android-test</artifactId> 
      <scope>provided</scope> 
     </dependency> 

     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <scope>test</scope> 
     </dependency> 

     <dependency> 
      <groupId>etherwalker.example</groupId> 
      <artifactId>license_sample</artifactId> 
      <version>0.0.1-SNAPSHOT</version> 
      <type>apk</type> 
      <scope>provided</scope> 
     </dependency> 
     <dependency> 
      <groupId>etherwalker.example</groupId> 
      <artifactId>license_sample</artifactId> 
      <version>0.0.1-SNAPSHOT</version> 
      <type>jar</type> 
      <scope>provided</scope> 
     </dependency> 

    </dependencies> 

    <build> 
     <sourceDirectory>src</sourceDirectory> 
     <plugins> 
      <plugin> 
       <groupId>com.jayway.maven.plugins.android.generation2</groupId> 
       <artifactId>maven-android-plugin</artifactId> 
       <extensions>true</extensions> 
      </plugin> 
     </plugins> 
    </build> 

</project> 

나는이 프로젝트에 mvn install 실행하면, 나는 안드로이드 계측 단위 테스트가 실행되는 다음과 같은 오류 얻을 :

[INFO] C:\usr\android-sdk-windows/platform-tools/adb.exe [shell, am, instrument, -w, com.example.android.market.licensing.test/android.test.InstrumentationTestRunner] 


com.android.vending.licensing.AESObfuscatorTest:....... 

com.android.vending.licensing.ObfuscatedPreferencesTest:INSTRUMENTATION_RESULT: shortMsg=java.security.spec.InvalidKeySpecException 

INSTRUMENTATION_RESULT: longMsg=java.security.spec.InvalidKeySpecException: java.io.EOFException: EOF encountered in middle of object 

INSTRUMENTATION_CODE: 0 

내가 정말를 알고 싶은데, junit 결과, 특히 예외에 대한 스택 추적을 어디에서 찾을 수 있습니까?

답변

0

이 오류는 테스트하지 않을 때 나타납니다 (기본 프로젝트가 빌드되지 않음).

하여 Maven 프로젝트의 구조는 다음과 같아야합니다 :

your_project 부모

|

--your_project | --your_project - 그것

your_project - 주요 프로젝트

your_project 부모 - 부모 프로젝트

your_project - 그것 - 악기 테스트 프로젝트

당신은 MVN 실행 your_project-perent 프로젝트에 설치해야합니다.

그런 다음 기본 프로젝트를 빌드 한 다음 프로젝트를 테스트합니다.