You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Yi Liang (JIRA)" <ji...@apache.org> on 2017/01/31 22:41:51 UTC

[jira] [Created] (HBASE-17574) Clean up how to run tests under hbase-spark module

Yi Liang created HBASE-17574:
--------------------------------

             Summary: 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


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
(v6.3.15#6346)