如何将黄瓜整合到android-maven测试项目中?

时间:2014-12-15 12:21:54

标签: android maven cucumber functional-testing

我想将黄瓜整合到一个使用maven作为构建系统的android-test项目中。 测试项目与主项目分开,它只包含基于机器人的功能测试。我按照this教程和示例here进行了操作,但在测试阶段我得到了:0测试发现.. 有任何想法吗?提前谢谢。

1 个答案:

答案 0 :(得分:3)

埃里克。 我不推荐这个链接,但请注意你必须使所有黄瓜依赖编译范围。使用将提供duplicationDependency的Junit4,但使用此命令构建:

build command:    mvn clean install  -Dandroid.extractDuplicates=true

pom.xml的一部分

<dependency>
 <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.11</version>
        <scope>compile</scope>
    </dependency>

    <!-- cucumber -->
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-core</artifactId>
        <version>1.2.0</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-android</artifactId>
        <version>1.2.0</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-html</artifactId>
        <version>0.2.3</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-java</artifactId>
        <version>1.2.0</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-junit</artifactId>
        <version>1.2.0</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-jvm-deps</artifactId>
        <version>1.0.3</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>gherkin</artifactId>
        <version>2.12.2</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-picocontainer</artifactId>
        <version>1.1.5</version>
        <scope>compile</scope>
    </dependency>
</dependencies>

AndroidManifest.xml内容的一部分(应用程序的id,你想要测试的是com.myproject.android):

   <instrumentation
        android:name="cucumber.api.android.CucumberInstrumentation"
        android:targetPackage="com.myproject.android" />