hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sean Busbey (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-17574) Clean up how to run tests under hbase-spark module
Date Tue, 07 Feb 2017 14:21:41 GMT

    [ https://issues.apache.org/jira/browse/HBASE-17574?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15856067#comment-15856067

Sean Busbey commented on HBASE-17574:

+1 thanks for this [~easyliangjob]!

> Clean up how to run tests under hbase-spark module 
> ---------------------------------------------------
>                 Key: HBASE-17574
>                 URL: https://issues.apache.org/jira/browse/HBASE-17574
>             Project: HBase
>          Issue Type: Bug
>          Components: spark
>    Affects Versions: 2.0.0
>            Reporter: Yi Liang
>            Assignee: Yi Liang
>             Fix For: 2.0.0
>         Attachments: HBase-17574-V1.patch, HBase-17574-V2.patch
> In master brunch, the test of hbase-spark module needs clean-up.
> I think we need to let hbase-spark follow the rules that exist in the whole hbase project
> 1. In hbase-spark, all the scala test cases are regarded as integration test, i.e. we
need to go to hbase-spark folder to use mvn verify to run the test case.  I think these tests
had better to be regard as unit test for the following reasons:
> (1) All the scala test are very small, most of them can be finished within 20s.
> (2) Integration test usually  put into hbase-it module, not in its own module.
> (3) Hadoop QA could not run those scala test in hbase-spark, I guess Hadoop QA will only
run mvn test under root dir, however hbase-spark need mvn verify.
> (4) From its pom.xml below, you can see that, both <phase>integration-test</phase>
and <phase>test</phase> point to same <goal>test</goal>. From MVN
reference, http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Built-in_Lifecycle_Bindings,
we know that if a goal is bound to one or more build phases, that goal will be called in all
those phases. it means that mvn test and mvn integration-test will do same thing, however
<skipTests>true</skipTests> in test phase just disable the mvn test command. 
It is uncommon to have define like that. 
> {code}
>                   <executions>
>                     <execution>
>                         <id>test</id>
>                         <phase>test</phase>
>                         <goals>
>                             <goal>test</goal>
>                         </goals>
>                         <configuration>
>                             <skipTests>true</skipTests>
>                         </configuration>
>                     </execution>
>                     <execution>
>                         <id>integration-test</id>
>                         <phase>integration-test</phase>
>                         <goals>
>                             <goal>test</goal>
>                         </goals>
>                         <configuration>
>                             <tagsToExclude>Integration-Test</tagsToExclude>
>                             <argLine>
>                                 -Xmx1536m -XX:MaxPermSize=512m -XX:ReservedCodeCacheSize=512m
>                             </argLine>
>                             <parallel>false</parallel>
>                         </configuration>
>                     </execution>
>                 </executions>
> {code}

This message was sent by Atlassian JIRA

View raw message