sqoop-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From va...@apache.org
Subject [3/3] sqoop git commit: SQOOP-3104: Create test categories instead of test suites and naming conventions
Date Wed, 14 Nov 2018 15:41:27 GMT
SQOOP-3104: Create test categories instead of test suites and naming conventions

(Nguyen Truong via Szabolcs Vasas)


Project: http://git-wip-us.apache.org/repos/asf/sqoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/sqoop/commit/d58e5f10
Tree: http://git-wip-us.apache.org/repos/asf/sqoop/tree/d58e5f10
Diff: http://git-wip-us.apache.org/repos/asf/sqoop/diff/d58e5f10

Branch: refs/heads/trunk
Commit: d58e5f106ba932879112d7b69997301e442335f1
Parents: 00a02de
Author: Szabolcs Vasas <vasas@apache.org>
Authored: Tue Nov 13 17:22:14 2018 +0100
Committer: Szabolcs Vasas <vasas@apache.org>
Committed: Wed Nov 14 16:38:40 2018 +0100

----------------------------------------------------------------------
 build.gradle                                    | 71 +++++++++++++++++---
 src/test/org/apache/sqoop/TestConnFactory.java  |  4 +-
 .../org/apache/sqoop/TestIncrementalImport.java |  4 +-
 src/test/org/apache/sqoop/TestSqoopOptions.java |  3 +
 .../apache/sqoop/accumulo/TestAccumuloUtil.java |  3 +
 .../TestKerberosAuthenticator.java              |  4 ++
 .../TestDriverManagerJdbcConnectionFactory.java |  3 +
 ...estKerberizedConnectionFactoryDecorator.java |  3 +
 .../sqoop/hbase/HBaseImportAddRowKeyTest.java   |  2 +
 .../hbase/HBaseKerberizedConnectivityTest.java  |  3 +
 .../org/apache/sqoop/hbase/HBaseTestCase.java   |  2 +-
 .../org/apache/sqoop/hbase/HBaseUtilTest.java   |  3 +
 .../sqoop/hbase/TestHBasePutProcessor.java      |  3 +
 .../apache/sqoop/hcat/TestHCatalogBasic.java    |  3 +
 ...Server2ConnectionFactoryInitializerTest.java |  3 +
 .../sqoop/hive/TestHiveClientFactory.java       |  3 +
 .../apache/sqoop/hive/TestHiveMiniCluster.java  |  6 ++
 .../sqoop/hive/TestHiveServer2Client.java       |  3 +
 .../hive/TestHiveServer2ParquetImport.java      |  5 ++
 .../sqoop/hive/TestHiveServer2TextImport.java   |  3 +
 .../hive/TestHiveTypesForAvroTypeMapping.java   |  5 ++
 .../apache/sqoop/hive/TestTableDefWriter.java   |  3 +
 .../TestTableDefWriterForExternalTable.java     |  3 +
 .../sqoop/importjob/NumericTypesImportTest.java |  5 ++
 src/test/org/apache/sqoop/io/TestCodecMap.java  |  3 +
 src/test/org/apache/sqoop/io/TestLobFile.java   |  3 +
 src/test/org/apache/sqoop/io/TestNamedFifo.java |  3 +
 .../sqoop/io/TestSplittableBufferedWriter.java  |  3 +
 src/test/org/apache/sqoop/lib/TestBlobRef.java  |  3 +
 .../org/apache/sqoop/lib/TestBooleanParser.java |  3 +
 src/test/org/apache/sqoop/lib/TestClobRef.java  |  3 +
 .../apache/sqoop/lib/TestFieldFormatter.java    |  3 +
 .../apache/sqoop/lib/TestLargeObjectLoader.java |  3 +
 .../org/apache/sqoop/lib/TestRecordParser.java  |  3 +
 .../manager/TestDefaultManagerFactory.java      |  4 +-
 .../apache/sqoop/manager/TestSqlManager.java    |  3 +
 .../sqoop/manager/cubrid/CubridAuthTest.java    |  3 +
 .../sqoop/manager/cubrid/CubridCompatTest.java  |  3 +
 .../manager/cubrid/CubridManagerExportTest.java |  3 +
 .../manager/cubrid/CubridManagerImportTest.java |  3 +
 .../DB2ImportAllTableWithSchemaManualTest.java  |  4 ++
 .../manager/db2/DB2ManagerImportManualTest.java |  4 ++
 .../manager/db2/DB2XmlTypeImportManualTest.java |  4 ++
 .../sqoop/manager/hsqldb/TestHsqldbManager.java |  3 +
 .../mainframe/MainframeManagerImportTest.java   |  4 +-
 .../manager/mysql/DirectMySQLExportTest.java    |  3 +
 .../sqoop/manager/mysql/DirectMySQLTest.java    |  3 +
 .../manager/mysql/JdbcMySQLExportTest.java      |  3 +
 .../sqoop/manager/mysql/MySQLAllTablesTest.java |  3 +
 .../sqoop/manager/mysql/MySQLAuthTest.java      |  3 +
 .../sqoop/manager/mysql/MySQLCompatTest.java    |  3 +
 .../manager/mysql/MySQLFreeFormQueryTest.java   |  3 +
 .../manager/mysql/MySQLLobAvroImportTest.java   |  3 +
 .../manager/mysql/MySqlCallExportTest.java      |  3 +
 .../mysql/MySqlColumnEscapeImportTest.java      |  3 +
 .../netezza/DirectNetezzaExportManualTest.java  |  4 ++
 .../DirectNetezzaHCatExportManualTest.java      |  4 ++
 .../DirectNetezzaHCatImportManualTest.java      |  4 ++
 .../netezza/NetezzaExportManualTest.java        |  4 ++
 .../netezza/NetezzaImportManualTest.java        |  4 ++
 ...aDrivenDBInputFormatConnectionCloseTest.java |  4 ++
 .../sqoop/manager/oracle/OraOopTestCase.java    |  4 ++
 .../manager/oracle/OracleCallExportTest.java    |  3 +
 .../oracle/OracleColumnEscapeImportTest.java    |  3 +
 .../sqoop/manager/oracle/OracleCompatTest.java  |  3 +
 .../sqoop/manager/oracle/OracleExportTest.java  |  3 +
 .../manager/oracle/OracleFreeFormQueryTest.java |  3 +
 .../oracle/OracleIncrementalImportTest.java     |  3 +
 .../manager/oracle/OracleLobAvroImportTest.java |  3 +
 .../sqoop/manager/oracle/OracleManagerTest.java |  3 +
 .../OracleSpecialCharacterTableImportTest.java  |  5 ++
 .../manager/oracle/OracleSplitterTest.java      |  3 +
 .../DirectPostgreSQLExportManualTest.java       |  4 ++
 .../postgresql/PGBulkloadManagerManualTest.java |  4 ++
 .../postgresql/PostgresqlExportTest.java        |  3 +
 .../PostgresqlExternalTableImportTest.java      |  3 +
 .../postgresql/PostgresqlImportTest.java        |  3 +
 ...QLServerDatatypeExportDelimitedFileTest.java |  3 +
 ...SQLServerDatatypeExportSequenceFileTest.java |  3 +
 ...QLServerDatatypeImportDelimitedFileTest.java |  3 +
 ...SQLServerDatatypeImportSequenceFileTest.java |  3 +
 .../sqlserver/SQLServerHiveImportTest.java      |  3 +
 .../sqlserver/SQLServerManagerExportTest.java   |  3 +
 .../sqlserver/SQLServerManagerImportTest.java   |  5 ++
 .../manager/sqlserver/SQLServerManagerTest.java |  4 ++
 .../sqlserver/SQLServerMultiColsTest.java       |  3 +
 .../sqlserver/SQLServerMultiMapsTest.java       |  3 +
 .../sqlserver/SQLServerParseMethodsTest.java    |  3 +
 .../manager/sqlserver/SQLServerQueryTest.java   |  3 +
 .../manager/sqlserver/SQLServerSplitByTest.java |  3 +
 .../manager/sqlserver/SQLServerWhereTest.java   |  3 +
 ...TestSqlServerManagerContextConfigurator.java |  3 +
 .../sqoop/mapreduce/TestJdbcExportJob.java      |  3 +
 .../org/apache/sqoop/mapreduce/TestJobBase.java |  3 +
 .../mapreduce/db/TestBigDecimalSplitter.java    |  3 +
 .../sqoop/mapreduce/db/TestDBConfiguration.java |  3 +
 .../db/TestDataDrivenDBInputFormat.java         |  3 +
 .../sqoop/mapreduce/db/TestIntegerSplitter.java |  3 +
 .../db/TestSQLServerDBRecordReader.java         |  3 +
 .../sqoop/mapreduce/db/TestTextSplitter.java    |  3 +
 .../TextSplitterHadoopConfIntegrationTest.java  |  3 +
 .../hcat/TestSqoopHCatImportHelper.java         |  3 +
 .../mapreduce/hcat/TestSqoopHCatUtilities.java  |  3 +
 .../TestMainframeDatasetFTPRecordReader.java    |  3 +
 .../TestMainframeDatasetInputFormat.java        |  3 +
 .../TestMainframeDatasetInputSplit.java         |  3 +
 .../mainframe/TestMainframeDatasetPath.java     |  3 +
 .../TestMainframeFTPFileEntryParser.java        |  3 +
 .../mainframe/TestMainframeImportJob.java       |  3 +
 .../SqlServerUpsertOutputFormatTest.java        |  3 +
 .../sqoop/metastore/PasswordRedactorTest.java   |  3 +
 .../sqoop/metastore/SavedJobsTestBase.java      |  3 +
 .../metastore/TestAutoGenericJobStorage.java    |  3 +
 .../sqoop/metastore/TestGenericJobStorage.java  |  3 +
 .../TestGenericJobStorageValidate.java          |  5 ++
 .../TestMetastoreConfigurationParameters.java   |  4 +-
 .../sqoop/metastore/db2/DB2JobToolTest.java     |  4 +-
 .../DB2MetaConnectIncrementalImportTest.java    |  4 +-
 .../sqoop/metastore/db2/DB2SavedJobsTest.java   |  4 +-
 .../sqoop/metastore/mysql/MySqlJobToolTest.java |  4 +-
 .../MySqlMetaConnectIncrementalImportTest.java  |  4 +-
 .../metastore/mysql/MySqlSavedJobsTest.java     |  4 +-
 .../metastore/oracle/OracleJobToolTest.java     |  4 +-
 .../OracleMetaConnectIncrementalImportTest.java |  4 +-
 .../metastore/oracle/OracleSavedJobsTest.java   |  4 +-
 .../metastore/postgres/PostgresJobToolTest.java |  4 +-
 ...ostgresMetaConnectIncrementalImportTest.java |  4 +-
 .../postgres/PostgresSavedJobsTest.java         |  4 +-
 .../sqlserver/SqlServerJobToolTest.java         |  4 +-
 ...lServerMetaConnectIncrementalImportTest.java |  4 +-
 .../sqlserver/SqlServerSavedJobsTest.java       |  4 +-
 .../org/apache/sqoop/orm/TestClassWriter.java   |  3 +
 .../sqoop/orm/TestCompilationManager.java       |  3 +
 .../sqoop/testcategories/KerberizedTest.java    | 24 +++++++
 .../sqooptest/IntegrationTest.java              | 26 +++++++
 .../testcategories/sqooptest/ManualTest.java    | 24 +++++++
 .../testcategories/sqooptest/SqoopTest.java     | 35 ++++++++++
 .../testcategories/sqooptest/UnitTest.java      | 25 +++++++
 .../thirdpartytest/CubridTest.java              | 24 +++++++
 .../testcategories/thirdpartytest/Db2Test.java  | 24 +++++++
 .../thirdpartytest/MainFrameTest.java           | 24 +++++++
 .../thirdpartytest/MysqlTest.java               | 24 +++++++
 .../thirdpartytest/NetezzaTest.java             | 24 +++++++
 .../thirdpartytest/OracleTest.java              | 24 +++++++
 .../thirdpartytest/PostgresqlTest.java          | 24 +++++++
 .../thirdpartytest/SqlServerTest.java           | 24 +++++++
 .../thirdpartytest/ThirdPartyTest.java          | 25 +++++++
 .../sqoop/testutil/BaseSqoopTestCase.java       |  3 +
 .../testutil/TestArgumentArrayBuilder.java      |  3 +
 .../tool/ImportToolValidateOptionsTest.java     |  5 ++
 .../apache/sqoop/tool/TestBaseSqoopTool.java    |  3 +
 .../tool/TestExportToolValidateOptions.java     |  3 +
 .../tool/TestHiveServer2OptionValidations.java  |  6 +-
 .../org/apache/sqoop/tool/TestImportTool.java   |  3 +
 .../org/apache/sqoop/tool/TestToolPlugin.java   |  3 +
 .../sqoop/tool/TestValidateImportOptions.java   |  3 +
 .../BlockJUnit4ClassRunnerWithParameters.java   | 45 +++++++++++++
 ...kJUnit4ClassRunnerWithParametersFactory.java | 37 ++++++++++
 .../apache/sqoop/util/TestDirCleanupHook.java   |  3 +
 .../apache/sqoop/util/TestFileSystemUtil.java   |  4 ++
 .../sqoop/util/TestMainframeFTPClientUtils.java |  3 +
 .../sqoop/util/TestOptionsFileExpansion.java    |  3 +
 .../apache/sqoop/util/TestSqoopJsonUtil.java    |  3 +
 .../sqoop/util/TestSubstitutionUtils.java       |  3 +
 .../validation/AbortOnFailureHandlerTest.java   |  3 +
 .../AbsoluteValidationThresholdTest.java        |  3 +
 166 files changed, 973 insertions(+), 31 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/build.gradle
----------------------------------------------------------------------
diff --git a/build.gradle b/build.gradle
index 2014b5c..cb9eeca 100644
--- a/build.gradle
+++ b/build.gradle
@@ -153,15 +153,30 @@ dependencies {
     testCompile group: 'org.apache.zookeeper', name: 'zookeeper', version: zookeeperVersion, ext: 'jar'
 }
 
-test {
-    include '**/Test*.*'
+task unitTest (type: Test) {
+    description 'Run unit tests'
+    useJUnit {
+        includeCategories 'org.apache.sqoop.testcategories.sqooptest.UnitTest'
+        excludeCategories 'org.apache.sqoop.testcategories.KerberizedTest'
+        excludeCategories 'org.apache.sqoop.testcategories.thirdpartytest.ThirdPartyTest'
+    }
+}
+
+task allIntegrationTest (type: Test){
+    description 'Run all  integration tests'
+    useJUnit {
+        includeCategories 'org.apache.sqoop.testcategories.sqooptest.IntegrationTest'
+    }
 }
 
-task thirdPartyTest(type: Test) {
-    description 'Run ThirdParty tests - you need to specify -Dsqoop.thirdparty.lib.dir where the Third party driver jars reside (relative to the project directory)'
-    exclude '**/*ManualTest.*'
-    exclude '**/Test*.*'
-    include '**/*Test*.*'
+task thirdPartyTest (type: Test) {
+    description 'Run Third-party Tests - you need to specify -Dsqoop.thirdparty.lib.dir where the Third party driver ' +
+            'jars reside (relative to the project directory)'
+    useJUnit {
+        includeCategories 'org.apache.sqoop.testcategories.thirdpartytest.ThirdPartyTest'
+        excludeCategories 'org.apache.sqoop.testcategories.sqooptest.ManualTest'
+        excludeCategories 'org.apache.sqoop.testcategories.KerberizedTest'
+    }
     systemProperty "ms.datatype.test.data.file.export" ,"DatatypeTestData-export-lite.txt"
     systemProperty "ms.datatype.test.data.file.import" ,"DatatypeTestData-import-lite.txt"
     systemProperty "ms.datatype.test.data.file.delim" ,","
@@ -170,9 +185,48 @@ task thirdPartyTest(type: Test) {
 
 task manualTest(type: Test) {
     description 'Run manual tests'
-    include '**/*ManualTest.*'
+    useJUnit {
+        includeCategories 'org.apache.sqoop.testcategories.sqooptest.ManualTest'
+    }
+}
+
+task integrationPlainTest(type: Test) {
+    description 'Run integration tests which do not need a docker container or an external database'
+    useJUnit {
+        includeCategories 'org.apache.sqoop.testcategories.sqooptest.IntegrationTest'
+        excludeCategories 'org.apache.sqoop.testcategories.sqooptest.ManualTest'
+        excludeCategories 'org.apache.sqoop.testcategories.KerberizedTest'
+        excludeCategories 'org.apache.sqoop.testcategories.thirdpartytest.ThirdPartyTest'
+    }
 }
 
+task kerberizedTest (type: Test){
+    description 'Run Kerberized Test'
+    // A Gradle test task with forkEvery 1 and includeCategories performs poorly because it starts a new JVM even for the filtered tests.
+    // To work around this performance problem we need to add every kerberized test in a separate include field here.
+    include '**/TestKerberosAuthenticator*'
+    include '**/HBaseKerberizedConnectivityTest*'
+    include '**/TestHiveMiniCluster*'
+    include '**/TestHiveServer2TextImport*'
+    useJUnit {
+        includeCategories 'org.apache.sqoop.testcategories.KerberizedTest'
+    }
+    forkEvery 1
+}
+
+test {
+    description 'Run tests that do not need exteral JDBC driver and/or a docker container. ' +
+            'This includes integration plain tests and unit tests'
+    include ''
+}
+test.finalizedBy(integrationPlainTest, unitTest, kerberizedTest)
+
+task sqoopTest (type: Test){
+    description 'Run all Sqoop tests'
+    include ''
+}
+sqoopTest.finalizedBy(test, kerberizedTest, thirdPartyTest)
+
 def testBuildDir = "$buildDir/test/"
 def testBuildDirData ="$testBuildDir/data/"
 
@@ -201,7 +255,6 @@ tasks.withType(Test) {
     minHeapSize = "512m"
     maxHeapSize = "5120m"
     jvmArgs '-Xmx5012m', "-da:org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge"
-    forkEvery 1
 
     dependsOn buildFolder
 

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/TestConnFactory.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/TestConnFactory.java b/src/test/org/apache/sqoop/TestConnFactory.java
index fb6c940..595a3c8 100644
--- a/src/test/org/apache/sqoop/TestConnFactory.java
+++ b/src/test/org/apache/sqoop/TestConnFactory.java
@@ -32,19 +32,21 @@ import org.apache.sqoop.manager.ConnManager;
 import org.apache.sqoop.manager.ImportJobContext;
 import org.apache.sqoop.manager.ManagerFactory;
 import org.apache.sqoop.metastore.JobData;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.apache.sqoop.tool.ImportTool;
 import org.junit.Test;
 
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import org.junit.Rule;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 /**
  * Test the ConnFactory implementation and its ability to delegate to multiple
  * different ManagerFactory implementations using reflection.
  */
-
+@Category(UnitTest.class)
 public class TestConnFactory {
 
   @Rule

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/TestIncrementalImport.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/TestIncrementalImport.java b/src/test/org/apache/sqoop/TestIncrementalImport.java
index 29c4779..dbdd05c 100644
--- a/src/test/org/apache/sqoop/TestIncrementalImport.java
+++ b/src/test/org/apache/sqoop/TestIncrementalImport.java
@@ -45,6 +45,7 @@ import org.apache.sqoop.manager.ConnManager;
 import org.apache.sqoop.manager.HsqldbManager;
 import org.apache.sqoop.manager.ManagerFactory;
 import org.apache.sqoop.metastore.JobData;
+import org.apache.sqoop.testcategories.sqooptest.IntegrationTest;
 import org.apache.sqoop.testutil.BaseSqoopTestCase;
 import org.apache.sqoop.testutil.CommonArgs;
 import org.apache.sqoop.tool.ImportTool;
@@ -53,6 +54,7 @@ import org.apache.sqoop.metastore.AutoGenericJobStorage;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 
@@ -65,7 +67,7 @@ import static org.junit.Assert.*;
  * The metastore URL is configured to be in-memory, and drop all
  * state between individual tests.
  */
-
+@Category(IntegrationTest.class)
 public class TestIncrementalImport  {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/TestSqoopOptions.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/TestSqoopOptions.java b/src/test/org/apache/sqoop/TestSqoopOptions.java
index e55682e..39d2d7c 100644
--- a/src/test/org/apache/sqoop/TestSqoopOptions.java
+++ b/src/test/org/apache/sqoop/TestSqoopOptions.java
@@ -33,6 +33,7 @@ import java.util.UUID;
 
 import org.apache.commons.lang.ArrayUtils;
 import org.apache.sqoop.manager.oracle.OracleUtils;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.After;
 import org.apache.commons.lang3.reflect.FieldUtils;
 import org.apache.sqoop.tool.ImportAllTablesTool;
@@ -42,6 +43,7 @@ import org.assertj.core.api.SoftAssertions;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 import org.apache.sqoop.SqoopOptions;
@@ -63,6 +65,7 @@ import static org.junit.Assert.fail;
 /**
  * Test aspects of the SqoopOptions class.
  */
+@Category(UnitTest.class)
 public class TestSqoopOptions {
 
   private Properties originalSystemProperties;

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/accumulo/TestAccumuloUtil.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/accumulo/TestAccumuloUtil.java b/src/test/org/apache/sqoop/accumulo/TestAccumuloUtil.java
index 631eeff..95657f9 100644
--- a/src/test/org/apache/sqoop/accumulo/TestAccumuloUtil.java
+++ b/src/test/org/apache/sqoop/accumulo/TestAccumuloUtil.java
@@ -18,7 +18,9 @@
 
 package org.apache.sqoop.accumulo;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
@@ -28,6 +30,7 @@ import static org.junit.Assert.assertTrue;
  * test cases) and that when in fake not present mode, the method returns
  * false.
  */
+@Category(UnitTest.class)
 public class TestAccumuloUtil {
 
   @Test

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/authentication/TestKerberosAuthenticator.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/authentication/TestKerberosAuthenticator.java b/src/test/org/apache/sqoop/authentication/TestKerberosAuthenticator.java
index f5700ce..47f905e 100644
--- a/src/test/org/apache/sqoop/authentication/TestKerberosAuthenticator.java
+++ b/src/test/org/apache/sqoop/authentication/TestKerberosAuthenticator.java
@@ -22,9 +22,12 @@ import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.CommonConfigurationKeys;
 import org.apache.hadoop.security.UserGroupInformation;
 import org.apache.sqoop.infrastructure.kerberos.MiniKdcInfrastructureRule;
+import org.apache.sqoop.testcategories.sqooptest.IntegrationTest;
+import org.apache.sqoop.testcategories.KerberizedTest;
 import org.junit.ClassRule;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 import static org.apache.hadoop.security.UserGroupInformation.AuthenticationMethod.KERBEROS;
@@ -32,6 +35,7 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotSame;
 import static org.junit.Assert.assertSame;
 
+@Category({KerberizedTest.class, IntegrationTest.class})
 public class TestKerberosAuthenticator {
 
   private static final String KERBEROS_RULE_TEMPLATE = "RULE:[2:$1@$0](.*@%s)s/@%s//";

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/db/TestDriverManagerJdbcConnectionFactory.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/db/TestDriverManagerJdbcConnectionFactory.java b/src/test/org/apache/sqoop/db/TestDriverManagerJdbcConnectionFactory.java
index 2448316..102e27c 100644
--- a/src/test/org/apache/sqoop/db/TestDriverManagerJdbcConnectionFactory.java
+++ b/src/test/org/apache/sqoop/db/TestDriverManagerJdbcConnectionFactory.java
@@ -18,17 +18,20 @@
 
 package org.apache.sqoop.db;
 
+import org.apache.sqoop.testcategories.sqooptest.IntegrationTest;
 import org.apache.sqoop.testutil.HsqldbTestServer;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 import java.sql.Connection;
 
 import static org.junit.Assert.assertFalse;
 
+@Category(IntegrationTest.class)
 public class TestDriverManagerJdbcConnectionFactory {
 
   private static final String HSQLDB_DRIVER_CLASS = "org.hsqldb.jdbcDriver";

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/db/decorator/TestKerberizedConnectionFactoryDecorator.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/db/decorator/TestKerberizedConnectionFactoryDecorator.java b/src/test/org/apache/sqoop/db/decorator/TestKerberizedConnectionFactoryDecorator.java
index d3e3fb2..8206d14 100644
--- a/src/test/org/apache/sqoop/db/decorator/TestKerberizedConnectionFactoryDecorator.java
+++ b/src/test/org/apache/sqoop/db/decorator/TestKerberizedConnectionFactoryDecorator.java
@@ -21,9 +21,11 @@ package org.apache.sqoop.db.decorator;
 import org.apache.hadoop.security.UserGroupInformation;
 import org.apache.sqoop.authentication.KerberosAuthenticator;
 import org.apache.sqoop.db.JdbcConnectionFactory;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 import org.mockito.invocation.InvocationOnMock;
 import org.mockito.stubbing.Answer;
@@ -37,6 +39,7 @@ import static org.mockito.Mockito.doAnswer;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+@Category(UnitTest.class)
 public class TestKerberizedConnectionFactoryDecorator {
 
   private KerberizedConnectionFactoryDecorator kerberizedConnectionFactoryDecorator;

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hbase/HBaseImportAddRowKeyTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hbase/HBaseImportAddRowKeyTest.java b/src/test/org/apache/sqoop/hbase/HBaseImportAddRowKeyTest.java
index c4caafb..df1840b 100644
--- a/src/test/org/apache/sqoop/hbase/HBaseImportAddRowKeyTest.java
+++ b/src/test/org/apache/sqoop/hbase/HBaseImportAddRowKeyTest.java
@@ -19,6 +19,7 @@
 package org.apache.sqoop.hbase;
 
 import org.apache.commons.lang.StringUtils;
+import org.apache.sqoop.util.BlockJUnit4ClassRunnerWithParametersFactory;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -33,6 +34,7 @@ import static java.util.Arrays.asList;
 import static org.apache.commons.lang.StringUtils.join;
 
 @RunWith(Parameterized.class)
+@Parameterized.UseParametersRunnerFactory(BlockJUnit4ClassRunnerWithParametersFactory.class)
 public class HBaseImportAddRowKeyTest extends HBaseTestCase {
 
   @Parameterized.Parameters(name = "bulkLoad = {0}")

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hbase/HBaseKerberizedConnectivityTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hbase/HBaseKerberizedConnectivityTest.java b/src/test/org/apache/sqoop/hbase/HBaseKerberizedConnectivityTest.java
index 3bfb391..07b4b54 100644
--- a/src/test/org/apache/sqoop/hbase/HBaseKerberizedConnectivityTest.java
+++ b/src/test/org/apache/sqoop/hbase/HBaseKerberizedConnectivityTest.java
@@ -19,11 +19,14 @@
 package org.apache.sqoop.hbase;
 
 import org.apache.sqoop.infrastructure.kerberos.MiniKdcInfrastructureRule;
+import org.apache.sqoop.testcategories.KerberizedTest;
 import org.junit.ClassRule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import java.io.IOException;
 
+@Category(KerberizedTest.class)
 public class HBaseKerberizedConnectivityTest extends HBaseTestCase {
 
   private static final String HBASE_TABLE_NAME = "KerberosTest";

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hbase/HBaseTestCase.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hbase/HBaseTestCase.java b/src/test/org/apache/sqoop/hbase/HBaseTestCase.java
index 94b71b6..036f79e 100644
--- a/src/test/org/apache/sqoop/hbase/HBaseTestCase.java
+++ b/src/test/org/apache/sqoop/hbase/HBaseTestCase.java
@@ -181,7 +181,7 @@ public abstract class HBaseTestCase extends ImportJobTestCase {
       // We set the port for the hbase master and regionserver web UI to -1 because we do not want the info server to run.
       hbaseTestUtil.getConfiguration().set(MASTER_INFO_PORT, INFO_PORT_DISABLE_WEB_UI);
       hbaseTestUtil.getConfiguration().set(REGIONSERVER_INFO_PORT, INFO_PORT_DISABLE_WEB_UI);
-
+      hbaseTestUtil.getConfiguration().set("fs.file.impl.disable.cache", "true");
       setupKerberos();
 
       hbaseTestUtil.startMiniCluster();

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hbase/HBaseUtilTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hbase/HBaseUtilTest.java b/src/test/org/apache/sqoop/hbase/HBaseUtilTest.java
index c6a808c..aa9e8e1 100644
--- a/src/test/org/apache/sqoop/hbase/HBaseUtilTest.java
+++ b/src/test/org/apache/sqoop/hbase/HBaseUtilTest.java
@@ -18,7 +18,9 @@
 
 package org.apache.sqoop.hbase;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
@@ -28,6 +30,7 @@ import static org.junit.Assert.assertTrue;
  * This tests to verify that HBase is present (default when running test cases)
  * and that when in fake not present mode, the method return false.
  */
+@Category(UnitTest.class)
 public class HBaseUtilTest {
 
   @Test

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hbase/TestHBasePutProcessor.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hbase/TestHBasePutProcessor.java b/src/test/org/apache/sqoop/hbase/TestHBasePutProcessor.java
index e78a535..37e0f07 100644
--- a/src/test/org/apache/sqoop/hbase/TestHBasePutProcessor.java
+++ b/src/test/org/apache/sqoop/hbase/TestHBasePutProcessor.java
@@ -24,10 +24,12 @@ import org.apache.hadoop.hbase.client.Connection;
 import org.apache.hadoop.hbase.client.Delete;
 import org.apache.hadoop.hbase.client.Mutation;
 import org.apache.hadoop.hbase.client.Put;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.apache.sqoop.util.ExpectedLogMessage;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import java.util.Arrays;
 import java.util.List;
@@ -39,6 +41,7 @@ import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
+@Category(UnitTest.class)
 public class TestHBasePutProcessor {
 
   @Rule

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hcat/TestHCatalogBasic.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hcat/TestHCatalogBasic.java b/src/test/org/apache/sqoop/hcat/TestHCatalogBasic.java
index ba05cab..d3ab89d 100644
--- a/src/test/org/apache/sqoop/hcat/TestHCatalogBasic.java
+++ b/src/test/org/apache/sqoop/hcat/TestHCatalogBasic.java
@@ -18,6 +18,7 @@
 
 package org.apache.sqoop.hcat;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Before;
 
 import org.apache.sqoop.SqoopOptions;
@@ -27,11 +28,13 @@ import org.apache.sqoop.tool.ImportTool;
 import org.junit.Test;
 
 import org.junit.Rule;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 /**
  * Test basic HCatalog related features.
  */
+@Category(UnitTest.class)
 public class TestHCatalogBasic {
 
   private static ImportTool importTool;

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hive/HiveServer2ConnectionFactoryInitializerTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hive/HiveServer2ConnectionFactoryInitializerTest.java b/src/test/org/apache/sqoop/hive/HiveServer2ConnectionFactoryInitializerTest.java
index 4d2cb2f..544659d 100644
--- a/src/test/org/apache/sqoop/hive/HiveServer2ConnectionFactoryInitializerTest.java
+++ b/src/test/org/apache/sqoop/hive/HiveServer2ConnectionFactoryInitializerTest.java
@@ -23,9 +23,11 @@ import org.apache.hadoop.security.UserGroupInformation;
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.db.JdbcConnectionFactory;
 import org.apache.sqoop.db.decorator.KerberizedConnectionFactoryDecorator;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.assertj.core.api.SoftAssertions;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.hamcrest.CoreMatchers.instanceOf;
 import static org.junit.Assert.assertThat;
@@ -33,6 +35,7 @@ import static org.junit.Assert.assertEquals;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+@Category(UnitTest.class)
 public class HiveServer2ConnectionFactoryInitializerTest {
 
   private static final String TEST_HS2_URL = "jdbc:hive2://myhost:10000/default";

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hive/TestHiveClientFactory.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hive/TestHiveClientFactory.java b/src/test/org/apache/sqoop/hive/TestHiveClientFactory.java
index a3c2dc9..b095663 100644
--- a/src/test/org/apache/sqoop/hive/TestHiveClientFactory.java
+++ b/src/test/org/apache/sqoop/hive/TestHiveClientFactory.java
@@ -22,15 +22,18 @@ import org.apache.hadoop.conf.Configuration;
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.db.JdbcConnectionFactory;
 import org.apache.sqoop.manager.ConnManager;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.assertj.core.api.SoftAssertions;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.hamcrest.CoreMatchers.instanceOf;
 import static org.junit.Assert.assertThat;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+@Category(UnitTest.class)
 public class TestHiveClientFactory {
 
   private static final String TEST_HS2_URL = "jdbc:hive2://myhost:10000/default";

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hive/TestHiveMiniCluster.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hive/TestHiveMiniCluster.java b/src/test/org/apache/sqoop/hive/TestHiveMiniCluster.java
index 419f888..089b81b 100644
--- a/src/test/org/apache/sqoop/hive/TestHiveMiniCluster.java
+++ b/src/test/org/apache/sqoop/hive/TestHiveMiniCluster.java
@@ -27,10 +27,14 @@ import org.apache.sqoop.hive.minicluster.KerberosAuthenticationConfiguration;
 import org.apache.sqoop.hive.minicluster.NoAuthenticationConfiguration;
 import org.apache.sqoop.hive.minicluster.PasswordAuthenticationConfiguration;
 import org.apache.sqoop.infrastructure.kerberos.MiniKdcInfrastructureRule;
+import org.apache.sqoop.testcategories.sqooptest.IntegrationTest;
+import org.apache.sqoop.testcategories.KerberizedTest;
+import org.apache.sqoop.util.BlockJUnit4ClassRunnerWithParametersFactory;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.ClassRule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameters;
@@ -43,7 +47,9 @@ import java.util.Arrays;
 
 import static org.junit.Assert.assertEquals;
 
+@Category({KerberizedTest.class, IntegrationTest.class})
 @RunWith(Parameterized.class)
+@Parameterized.UseParametersRunnerFactory(BlockJUnit4ClassRunnerWithParametersFactory.class)
 public class TestHiveMiniCluster {
 
   @ClassRule

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hive/TestHiveServer2Client.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hive/TestHiveServer2Client.java b/src/test/org/apache/sqoop/hive/TestHiveServer2Client.java
index 0261729..d2a4a17 100644
--- a/src/test/org/apache/sqoop/hive/TestHiveServer2Client.java
+++ b/src/test/org/apache/sqoop/hive/TestHiveServer2Client.java
@@ -22,9 +22,11 @@ import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.Path;
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.db.JdbcConnectionFactory;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 import org.mockito.InOrder;
 import org.mockito.Mockito;
@@ -46,6 +48,7 @@ import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+@Category(UnitTest.class)
 public class TestHiveServer2Client {
 
   @Rule

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hive/TestHiveServer2ParquetImport.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hive/TestHiveServer2ParquetImport.java b/src/test/org/apache/sqoop/hive/TestHiveServer2ParquetImport.java
index 65f0794..8cfd776 100644
--- a/src/test/org/apache/sqoop/hive/TestHiveServer2ParquetImport.java
+++ b/src/test/org/apache/sqoop/hive/TestHiveServer2ParquetImport.java
@@ -23,15 +23,18 @@ import org.apache.commons.codec.binary.Hex;
 import org.apache.hadoop.fs.Path;
 import org.apache.sqoop.hive.minicluster.HiveMiniCluster;
 import org.apache.sqoop.hive.minicluster.NoAuthenticationConfiguration;
+import org.apache.sqoop.testcategories.sqooptest.IntegrationTest;
 import org.apache.sqoop.testutil.ArgumentArrayBuilder;
 import org.apache.sqoop.testutil.HiveServer2TestUtil;
 import org.apache.sqoop.testutil.ImportJobTestCase;
+import org.apache.sqoop.util.BlockJUnit4ClassRunnerWithParametersFactory;
 import org.apache.sqoop.util.ParquetReader;
 import org.junit.AfterClass;
 import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.experimental.runners.Enclosed;
 import org.junit.rules.ExpectedException;
 import org.junit.runner.RunWith;
@@ -52,6 +55,7 @@ import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 
 @RunWith(Enclosed.class)
+@Category(IntegrationTest.class)
 public class TestHiveServer2ParquetImport {
 
   private static final String[] TEST_COLUMN_NAMES = {"C1_VARCHAR", "C2#INTEGER", "3C_CHAR"};
@@ -75,6 +79,7 @@ public class TestHiveServer2ParquetImport {
   private static HiveServer2TestUtil hiveServer2TestUtil;
 
   @RunWith(Parameterized.class)
+  @Parameterized.UseParametersRunnerFactory(BlockJUnit4ClassRunnerWithParametersFactory.class)
   public static class ParquetCompressionCodecTestCase extends ImportJobTestCase {
 
     @Parameters(name = "compressionCodec = {0}")

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hive/TestHiveServer2TextImport.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hive/TestHiveServer2TextImport.java b/src/test/org/apache/sqoop/hive/TestHiveServer2TextImport.java
index 410724f..e0dd101 100644
--- a/src/test/org/apache/sqoop/hive/TestHiveServer2TextImport.java
+++ b/src/test/org/apache/sqoop/hive/TestHiveServer2TextImport.java
@@ -22,6 +22,7 @@ import org.apache.hadoop.yarn.conf.YarnConfiguration;
 import org.apache.sqoop.hive.minicluster.HiveMiniCluster;
 import org.apache.sqoop.hive.minicluster.KerberosAuthenticationConfiguration;
 import org.apache.sqoop.infrastructure.kerberos.MiniKdcInfrastructureRule;
+import org.apache.sqoop.testcategories.KerberizedTest;
 import org.apache.sqoop.testutil.ArgumentArrayBuilder;
 import org.apache.sqoop.testutil.HiveServer2TestUtil;
 import org.apache.sqoop.testutil.ImportJobTestCase;
@@ -29,12 +30,14 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.ClassRule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import java.util.Arrays;
 import java.util.List;
 
 import static org.junit.Assert.assertEquals;
 
+@Category(KerberizedTest.class)
 public class TestHiveServer2TextImport extends ImportJobTestCase {
 
   @ClassRule

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hive/TestHiveTypesForAvroTypeMapping.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hive/TestHiveTypesForAvroTypeMapping.java b/src/test/org/apache/sqoop/hive/TestHiveTypesForAvroTypeMapping.java
index 276e9ea..1b65267 100644
--- a/src/test/org/apache/sqoop/hive/TestHiveTypesForAvroTypeMapping.java
+++ b/src/test/org/apache/sqoop/hive/TestHiveTypesForAvroTypeMapping.java
@@ -19,7 +19,10 @@
 package org.apache.sqoop.hive;
 
 import org.apache.avro.Schema;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
+import org.apache.sqoop.util.BlockJUnit4ClassRunnerWithParametersFactory;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameters;
@@ -29,7 +32,9 @@ import java.util.Arrays;
 import static org.apache.sqoop.hive.HiveTypes.toHiveType;
 import static org.junit.Assert.*;
 
+@Category(UnitTest.class)
 @RunWith(Parameterized.class)
+@Parameterized.UseParametersRunnerFactory(BlockJUnit4ClassRunnerWithParametersFactory.class)
 public class TestHiveTypesForAvroTypeMapping {
 
   private final String hiveType;

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hive/TestTableDefWriter.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hive/TestTableDefWriter.java b/src/test/org/apache/sqoop/hive/TestTableDefWriter.java
index 626ad22..b89ab0d 100644
--- a/src/test/org/apache/sqoop/hive/TestTableDefWriter.java
+++ b/src/test/org/apache/sqoop/hive/TestTableDefWriter.java
@@ -24,6 +24,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.sqoop.manager.ConnManager;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.apache.sqoop.util.SqlTypeMap;
 
 import org.apache.sqoop.SqoopOptions;
@@ -32,6 +33,7 @@ import org.apache.sqoop.testutil.HsqldbTestServer;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 import java.sql.Types;
@@ -51,6 +53,7 @@ import static org.mockito.Mockito.when;
 /**
  * Test Hive DDL statement generation.
  */
+@Category(UnitTest.class)
 public class TestTableDefWriter {
 
   private static final String TEST_AVRO_SCHEMA = "{\"type\":\"record\",\"name\":\"IMPORT_TABLE_1\",\"fields\":[{\"name\":\"C1_VARCHAR\",\"type\":[\"null\",\"string\"]},{\"name\":\"C2_INTEGER\",\"type\":[\"null\",\"int\"]},{\"name\":\"_3C_CHAR\",\"type\":[\"null\",\"string\"]}]}";

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/hive/TestTableDefWriterForExternalTable.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/hive/TestTableDefWriterForExternalTable.java b/src/test/org/apache/sqoop/hive/TestTableDefWriterForExternalTable.java
index f1768ee..978432c 100644
--- a/src/test/org/apache/sqoop/hive/TestTableDefWriterForExternalTable.java
+++ b/src/test/org/apache/sqoop/hive/TestTableDefWriterForExternalTable.java
@@ -25,14 +25,17 @@ import org.apache.sqoop.SqoopOptions;
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.BeforeClass;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.mockito.Mockito;
 
 import java.sql.*;
 import java.util.HashMap;
 import java.io.IOException;
 
+@Category(UnitTest.class)
 public class TestTableDefWriterForExternalTable {
   static String inputTableName = "genres";
   static String outputTableName = "genres";

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/importjob/NumericTypesImportTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/importjob/NumericTypesImportTest.java b/src/test/org/apache/sqoop/importjob/NumericTypesImportTest.java
index 0714441..af310cb 100644
--- a/src/test/org/apache/sqoop/importjob/NumericTypesImportTest.java
+++ b/src/test/org/apache/sqoop/importjob/NumericTypesImportTest.java
@@ -31,6 +31,7 @@ import org.apache.sqoop.importjob.configuration.MySQLImportJobTestConfiguration;
 import org.apache.sqoop.importjob.configuration.OracleImportJobTestConfiguration;
 import org.apache.sqoop.importjob.configuration.ParquetTestConfiguration;
 import org.apache.sqoop.importjob.configuration.PostgresqlImportJobTestConfigurationForNumeric;
+import org.apache.sqoop.testcategories.thirdpartytest.ThirdPartyTest;
 import org.apache.sqoop.testutil.ArgumentArrayBuilder;
 import org.apache.sqoop.testutil.AvroTestUtils;
 import org.apache.sqoop.testutil.ImportJobTestCase;
@@ -42,10 +43,12 @@ import org.apache.sqoop.testutil.adapter.PostgresDatabaseAdapter;
 import org.apache.sqoop.importjob.configuration.OracleImportJobTestConfigurationForNumber;
 import org.apache.sqoop.importjob.configuration.PostgresqlImportJobTestConfigurationPaddingShouldSucceed;
 import org.apache.sqoop.util.ParquetReader;
+import org.apache.sqoop.util.BlockJUnit4ClassRunnerWithParametersFactory;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
@@ -61,6 +64,8 @@ import static org.apache.sqoop.SqoopOptions.FileLayout.AvroDataFile;
 import static org.apache.sqoop.SqoopOptions.FileLayout.ParquetFile;
 
 @RunWith(Parameterized.class)
+@Parameterized.UseParametersRunnerFactory(BlockJUnit4ClassRunnerWithParametersFactory.class)
+@Category(ThirdPartyTest.class)
 /**
  * This test covers the behavior of the Avro import for fixed point decimal types, i.e. NUMBER, NUMERIC
  * and DECIMAL.

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/io/TestCodecMap.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/io/TestCodecMap.java b/src/test/org/apache/sqoop/io/TestCodecMap.java
index e719218..7a30a06 100644
--- a/src/test/org/apache/sqoop/io/TestCodecMap.java
+++ b/src/test/org/apache/sqoop/io/TestCodecMap.java
@@ -24,6 +24,7 @@ import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.io.compress.CompressionCodec;
 import org.apache.hadoop.io.compress.GzipCodec;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Test;
 
 import static org.junit.Assert.assertEquals;
@@ -31,11 +32,13 @@ import static org.junit.Assert.assertTrue;
 
 import org.junit.Rule;
 
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 /**
  * Test looking up codecs by name.
  */
+@Category(UnitTest.class)
 public class TestCodecMap  {
 
 

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/io/TestLobFile.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/io/TestLobFile.java b/src/test/org/apache/sqoop/io/TestLobFile.java
index 2bc95f2..bd9d510 100644
--- a/src/test/org/apache/sqoop/io/TestLobFile.java
+++ b/src/test/org/apache/sqoop/io/TestLobFile.java
@@ -36,6 +36,7 @@ import org.apache.hadoop.crypto.JceAesCtrCryptoCodec;
 import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Before;
 
 import org.junit.Test;
@@ -51,11 +52,13 @@ import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.withSettings;
 
 import org.junit.Rule;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 /**
  * Test the LobFile reader/writer implementation.
  */
+@Category(UnitTest.class)
 public class TestLobFile {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/io/TestNamedFifo.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/io/TestNamedFifo.java b/src/test/org/apache/sqoop/io/TestNamedFifo.java
index a93784e..6cbefdb 100644
--- a/src/test/org/apache/sqoop/io/TestNamedFifo.java
+++ b/src/test/org/apache/sqoop/io/TestNamedFifo.java
@@ -35,8 +35,10 @@ import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.util.Shell;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNull;
@@ -44,6 +46,7 @@ import static org.junit.Assert.assertNull;
 /**
  * Test the named fifo utility.
  */
+@Category(UnitTest.class)
 public class TestNamedFifo {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/io/TestSplittableBufferedWriter.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/io/TestSplittableBufferedWriter.java b/src/test/org/apache/sqoop/io/TestSplittableBufferedWriter.java
index c59aa26..71d6971 100644
--- a/src/test/org/apache/sqoop/io/TestSplittableBufferedWriter.java
+++ b/src/test/org/apache/sqoop/io/TestSplittableBufferedWriter.java
@@ -35,10 +35,12 @@ import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.compress.GzipCodec;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.apache.sqoop.testutil.ImportJobTestCase;
 
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
@@ -50,6 +52,7 @@ import static org.junit.Assert.fail;
 /**
  * Test that the splittable buffered writer system works.
  */
+@Category(UnitTest.class)
 public class TestSplittableBufferedWriter {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/lib/TestBlobRef.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/lib/TestBlobRef.java b/src/test/org/apache/sqoop/lib/TestBlobRef.java
index b271d3c..74aa205 100644
--- a/src/test/org/apache/sqoop/lib/TestBlobRef.java
+++ b/src/test/org/apache/sqoop/lib/TestBlobRef.java
@@ -20,6 +20,7 @@ package org.apache.sqoop.lib;
 
 import java.io.*;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.apache.sqoop.testutil.BaseSqoopTestCase;
 import org.apache.sqoop.testutil.CommonArgs;
 
@@ -28,6 +29,7 @@ import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.sqoop.io.LobFile;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
@@ -39,6 +41,7 @@ import static org.junit.Assert.assertTrue;
  * Note that we don't support inline parsing here; we only expect this to
  * really work for external BLOBs.
  */
+@Category(UnitTest.class)
 public class TestBlobRef {
 
   @Test

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/lib/TestBooleanParser.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/lib/TestBooleanParser.java b/src/test/org/apache/sqoop/lib/TestBooleanParser.java
index 914ab37..9f95c9d 100644
--- a/src/test/org/apache/sqoop/lib/TestBooleanParser.java
+++ b/src/test/org/apache/sqoop/lib/TestBooleanParser.java
@@ -19,7 +19,9 @@
 package org.apache.sqoop.lib;
 
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
@@ -27,6 +29,7 @@ import static org.junit.Assert.assertTrue;
 /**
  * Test the boolean parser.
  */
+@Category(UnitTest.class)
 public class TestBooleanParser {
 
   @Test

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/lib/TestClobRef.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/lib/TestClobRef.java b/src/test/org/apache/sqoop/lib/TestClobRef.java
index f94d1a8..d65c36f 100644
--- a/src/test/org/apache/sqoop/lib/TestClobRef.java
+++ b/src/test/org/apache/sqoop/lib/TestClobRef.java
@@ -20,6 +20,7 @@ package org.apache.sqoop.lib;
 
 import java.io.*;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.apache.sqoop.testutil.BaseSqoopTestCase;
 import org.apache.sqoop.testutil.CommonArgs;
 
@@ -28,6 +29,7 @@ import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.sqoop.io.LobFile;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
@@ -37,6 +39,7 @@ import static org.junit.Assert.assertTrue;
 /**
  * Test parsing of ClobRef objects.
  */
+@Category(UnitTest.class)
 public class TestClobRef {
 
   @Test

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/lib/TestFieldFormatter.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/lib/TestFieldFormatter.java b/src/test/org/apache/sqoop/lib/TestFieldFormatter.java
index 9ac55e7..c7ffb10 100644
--- a/src/test/org/apache/sqoop/lib/TestFieldFormatter.java
+++ b/src/test/org/apache/sqoop/lib/TestFieldFormatter.java
@@ -18,7 +18,9 @@
 
 package org.apache.sqoop.lib;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNull;
@@ -27,6 +29,7 @@ import static org.junit.Assert.assertNull;
 /**
  * Test that the field formatter works in a variety of configurations.
  */
+@Category(UnitTest.class)
 public class TestFieldFormatter {
 
   @Test

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/lib/TestLargeObjectLoader.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/lib/TestLargeObjectLoader.java b/src/test/org/apache/sqoop/lib/TestLargeObjectLoader.java
index 1e07d71..c5aabcc 100644
--- a/src/test/org/apache/sqoop/lib/TestLargeObjectLoader.java
+++ b/src/test/org/apache/sqoop/lib/TestLargeObjectLoader.java
@@ -24,6 +24,7 @@ import java.io.Reader;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.apache.sqoop.testutil.BaseSqoopTestCase;
 import org.apache.sqoop.testutil.CommonArgs;
 
@@ -33,6 +34,7 @@ import org.apache.hadoop.fs.Path;
 import org.apache.sqoop.testutil.MockResultSet;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
@@ -42,6 +44,7 @@ import static org.junit.Assert.assertTrue;
 /**
  * Test deserialization of ClobRef and BlobRef fields.
  */
+@Category(UnitTest.class)
 public class TestLargeObjectLoader {
 
   protected Configuration conf;

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/lib/TestRecordParser.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/lib/TestRecordParser.java b/src/test/org/apache/sqoop/lib/TestRecordParser.java
index d6844c1..dd8619a 100644
--- a/src/test/org/apache/sqoop/lib/TestRecordParser.java
+++ b/src/test/org/apache/sqoop/lib/TestRecordParser.java
@@ -21,8 +21,10 @@ package org.apache.sqoop.lib;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Rule;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 import org.junit.rules.ExpectedException;
 
 import static org.junit.Assert.fail;
@@ -31,6 +33,7 @@ import static org.junit.Assert.fail;
 /**
  * Test that the record parser works in a variety of configurations.
  */
+@Category(UnitTest.class)
 public class TestRecordParser {
 
   @Rule

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/TestDefaultManagerFactory.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/TestDefaultManagerFactory.java b/src/test/org/apache/sqoop/manager/TestDefaultManagerFactory.java
index 8e16324..0f5d75e 100644
--- a/src/test/org/apache/sqoop/manager/TestDefaultManagerFactory.java
+++ b/src/test/org/apache/sqoop/manager/TestDefaultManagerFactory.java
@@ -22,7 +22,9 @@ import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.metastore.JobData;
 import org.apache.commons.lang.RandomStringUtils;
 import org.apache.hadoop.conf.Configuration;
+import org.apache.sqoop.testcategories.sqooptest.UnitTest;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.hamcrest.core.IsInstanceOf.instanceOf;
 import static org.junit.Assert.assertThat;
@@ -32,7 +34,7 @@ import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 
-
+@Category(UnitTest.class)
 public class TestDefaultManagerFactory {
 
     DefaultManagerFactory mf = new DefaultManagerFactory();

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/TestSqlManager.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/TestSqlManager.java b/src/test/org/apache/sqoop/manager/TestSqlManager.java
index 185f5a7..6bb5479 100644
--- a/src/test/org/apache/sqoop/manager/TestSqlManager.java
+++ b/src/test/org/apache/sqoop/manager/TestSqlManager.java
@@ -29,11 +29,13 @@ import java.util.Map;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.sqoop.SqoopOptions;
+import org.apache.sqoop.testcategories.sqooptest.IntegrationTest;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
 import org.apache.sqoop.testutil.HsqldbTestServer;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
@@ -44,6 +46,7 @@ import static org.junit.Assert.assertArrayEquals;
 /**
  * Test methods of the generic SqlManager implementation.
  */
+@Category(IntegrationTest.class)
 public class TestSqlManager {
 
   public static final Log LOG = LogFactory.getLog(TestSqlManager.class.getName());

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/cubrid/CubridAuthTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/cubrid/CubridAuthTest.java b/src/test/org/apache/sqoop/manager/cubrid/CubridAuthTest.java
index 82fac12..c19385b 100644
--- a/src/test/org/apache/sqoop/manager/cubrid/CubridAuthTest.java
+++ b/src/test/org/apache/sqoop/manager/cubrid/CubridAuthTest.java
@@ -28,6 +28,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.sqoop.manager.CubridManager;
+import org.apache.sqoop.testcategories.thirdpartytest.CubridTest;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -35,6 +36,7 @@ import org.junit.Test;
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.manager.ConnManager;
 import org.apache.sqoop.testutil.ImportJobTestCase;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
@@ -62,6 +64,7 @@ import static org.junit.Assert.fail;
  *   $csql -u dba SQOOPCUBRIDTEST
  *   csql>CREATE USER SQOOPUSER password 'PASSWORD';
  */
+@Category(CubridTest.class)
 public class CubridAuthTest extends ImportJobTestCase {
 
   public static final Log LOG = LogFactory.getLog(CubridAuthTest.class

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/cubrid/CubridCompatTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/cubrid/CubridCompatTest.java b/src/test/org/apache/sqoop/manager/cubrid/CubridCompatTest.java
index 8a075e8..e47f8d1 100644
--- a/src/test/org/apache/sqoop/manager/cubrid/CubridCompatTest.java
+++ b/src/test/org/apache/sqoop/manager/cubrid/CubridCompatTest.java
@@ -28,7 +28,9 @@ import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 
 import org.apache.sqoop.SqoopOptions;
+import org.apache.sqoop.testcategories.thirdpartytest.CubridTest;
 import org.apache.sqoop.testutil.ManagerCompatTestCase;
+import org.junit.experimental.categories.Category;
 
 /**
  * Test the basic Cubrid connection manager with the various column types.
@@ -53,6 +55,7 @@ import org.apache.sqoop.testutil.ManagerCompatTestCase;
  *   $csql -u dba SQOOPCUBRIDTEST
  *   csql>CREATE USER SQOOPUSER password 'PASSWORD';
  */
+@Category(CubridTest.class)
 public class CubridCompatTest extends ManagerCompatTestCase {
 
   public static final Log LOG = LogFactory.getLog(CubridCompatTest.class

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/cubrid/CubridManagerExportTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/cubrid/CubridManagerExportTest.java b/src/test/org/apache/sqoop/manager/cubrid/CubridManagerExportTest.java
index 4de8e40..aaacfe8 100644
--- a/src/test/org/apache/sqoop/manager/cubrid/CubridManagerExportTest.java
+++ b/src/test/org/apache/sqoop/manager/cubrid/CubridManagerExportTest.java
@@ -32,12 +32,14 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.util.StringUtils;
 import org.apache.sqoop.manager.CubridManager;
+import org.apache.sqoop.testcategories.thirdpartytest.CubridTest;
 import org.junit.After;
 import org.junit.Before;
 
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.TestExport;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
@@ -67,6 +69,7 @@ import static org.junit.Assert.fail;
  *   $csql -u dba SQOOPCUBRIDTEST
  *   csql>CREATE USER SQOOPUSER password 'PASSWORD';
  */
+@Category(CubridTest.class)
 public class CubridManagerExportTest extends TestExport {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/cubrid/CubridManagerImportTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/cubrid/CubridManagerImportTest.java b/src/test/org/apache/sqoop/manager/cubrid/CubridManagerImportTest.java
index addf1ae..88230e9 100644
--- a/src/test/org/apache/sqoop/manager/cubrid/CubridManagerImportTest.java
+++ b/src/test/org/apache/sqoop/manager/cubrid/CubridManagerImportTest.java
@@ -36,6 +36,7 @@ import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.IOUtils;
 import org.apache.sqoop.manager.ConnManager;
 import org.apache.sqoop.manager.CubridManager;
+import org.apache.sqoop.testcategories.thirdpartytest.CubridTest;
 import org.apache.sqoop.util.FileListing;
 
 import org.junit.After;
@@ -45,6 +46,7 @@ import org.junit.Test;
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.testutil.CommonArgs;
 import org.apache.sqoop.testutil.ImportJobTestCase;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
@@ -75,6 +77,7 @@ import static org.junit.Assert.fail;
  *   $csql -u dba SQOOPCUBRIDTEST
  *   csql>CREATE USER SQOOPUSER password 'PASSWORD';
  */
+@Category(CubridTest.class)
 public class CubridManagerImportTest extends ImportJobTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/db2/DB2ImportAllTableWithSchemaManualTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/db2/DB2ImportAllTableWithSchemaManualTest.java b/src/test/org/apache/sqoop/manager/db2/DB2ImportAllTableWithSchemaManualTest.java
index d1a6d69..ed949b9 100644
--- a/src/test/org/apache/sqoop/manager/db2/DB2ImportAllTableWithSchemaManualTest.java
+++ b/src/test/org/apache/sqoop/manager/db2/DB2ImportAllTableWithSchemaManualTest.java
@@ -34,6 +34,8 @@ import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.IOUtils;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.sqoop.manager.Db2Manager;
+import org.apache.sqoop.testcategories.thirdpartytest.Db2Test;
+import org.apache.sqoop.testcategories.sqooptest.ManualTest;
 import org.apache.sqoop.tool.ImportAllTablesTool;
 import org.apache.sqoop.Sqoop;
 import org.junit.After;
@@ -47,6 +49,7 @@ import org.apache.sqoop.testutil.ImportJobTestCase;
 import org.apache.sqoop.tool.SqoopTool;
 import org.apache.sqoop.util.FileListing;
 import org.apache.sqoop.util.LoggingUtils;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
@@ -72,6 +75,7 @@ import static org.junit.Assert.fail;
  *   Create a login SQOOP with password PASSWORD and grant all
  *   access for database SQOOP to user SQOOP.
  */
+@Category({ManualTest.class, Db2Test.class})
 public class DB2ImportAllTableWithSchemaManualTest extends ImportJobTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/db2/DB2ManagerImportManualTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/db2/DB2ManagerImportManualTest.java b/src/test/org/apache/sqoop/manager/db2/DB2ManagerImportManualTest.java
index b5d47f2..32dfc5e 100644
--- a/src/test/org/apache/sqoop/manager/db2/DB2ManagerImportManualTest.java
+++ b/src/test/org/apache/sqoop/manager/db2/DB2ManagerImportManualTest.java
@@ -32,6 +32,8 @@ import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.IOUtils;
 import org.apache.sqoop.manager.Db2Manager;
+import org.apache.sqoop.testcategories.thirdpartytest.Db2Test;
+import org.apache.sqoop.testcategories.sqooptest.ManualTest;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -40,6 +42,7 @@ import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.testutil.CommonArgs;
 import org.apache.sqoop.testutil.ImportJobTestCase;
 import org.apache.sqoop.util.FileListing;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
@@ -65,6 +68,7 @@ import static org.junit.Assert.fail;
  *   Create a login SQOOP with password PASSWORD and grant all
  *   access for database SQOOP to user SQOOP.
  */
+@Category({ManualTest.class, Db2Test.class})
 public class DB2ManagerImportManualTest extends ImportJobTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/db2/DB2XmlTypeImportManualTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/db2/DB2XmlTypeImportManualTest.java b/src/test/org/apache/sqoop/manager/db2/DB2XmlTypeImportManualTest.java
index 393a110..494c75b 100644
--- a/src/test/org/apache/sqoop/manager/db2/DB2XmlTypeImportManualTest.java
+++ b/src/test/org/apache/sqoop/manager/db2/DB2XmlTypeImportManualTest.java
@@ -32,6 +32,8 @@ import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.IOUtils;
 import org.apache.sqoop.manager.Db2Manager;
+import org.apache.sqoop.testcategories.thirdpartytest.Db2Test;
+import org.apache.sqoop.testcategories.sqooptest.ManualTest;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -40,6 +42,7 @@ import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.testutil.CommonArgs;
 import org.apache.sqoop.testutil.ImportJobTestCase;
 import org.apache.sqoop.util.FileListing;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
@@ -65,6 +68,7 @@ import static org.junit.Assert.fail;
  *   Create a login SQOOP with password PASSWORD and grant all
  *   access for database SQOOP to user SQOOP.
  */
+@Category({ManualTest.class, Db2Test.class})
 public class DB2XmlTypeImportManualTest extends ImportJobTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/hsqldb/TestHsqldbManager.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/hsqldb/TestHsqldbManager.java b/src/test/org/apache/sqoop/manager/hsqldb/TestHsqldbManager.java
index 745a812..0faabdc 100644
--- a/src/test/org/apache/sqoop/manager/hsqldb/TestHsqldbManager.java
+++ b/src/test/org/apache/sqoop/manager/hsqldb/TestHsqldbManager.java
@@ -23,11 +23,13 @@ import java.sql.SQLException;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.sqoop.manager.ConnManager;
+import org.apache.sqoop.testcategories.sqooptest.IntegrationTest;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
 import org.apache.sqoop.testutil.HsqldbTestServer;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
@@ -37,6 +39,7 @@ import static org.junit.Assert.fail;
  * Test HsqldbManager-specific functionality that overrides SqlManager
  * behavior.
  */
+@Category(IntegrationTest.class)
 public class TestHsqldbManager {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mainframe/MainframeManagerImportTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mainframe/MainframeManagerImportTest.java b/src/test/org/apache/sqoop/manager/mainframe/MainframeManagerImportTest.java
index af5c754..38f7c06 100644
--- a/src/test/org/apache/sqoop/manager/mainframe/MainframeManagerImportTest.java
+++ b/src/test/org/apache/sqoop/manager/mainframe/MainframeManagerImportTest.java
@@ -30,12 +30,14 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.fs.Path;
 import org.apache.sqoop.mapreduce.mainframe.MainframeConfiguration;
+import org.apache.sqoop.testcategories.thirdpartytest.MainFrameTest;
 import org.apache.sqoop.testutil.CommonArgs;
 import org.apache.sqoop.testutil.ImportJobTestCase;
 import org.apache.sqoop.tool.MainframeImportTool;
 import org.apache.sqoop.util.FileListing;
 import org.apache.commons.lang3.StringUtils;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertTrue;
 
@@ -56,7 +58,7 @@ import static org.junit.Assert.assertTrue;
  * <property name="sqoop.test.mainframe.ftp.dataset.gdg.filename" value="G0001V43" />
  * <property name="sqoop.test.mainframe.ftp.dataset.gdg.md5" value="43eefbe34e466dd3f65a3e867a60809a" />
  */
-
+@Category(MainFrameTest.class)
 public class MainframeManagerImportTest extends ImportJobTestCase {
   private static final Log LOG = LogFactory.getLog(
       MainframeManagerImportTest.class.getName());

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/DirectMySQLExportTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/DirectMySQLExportTest.java b/src/test/org/apache/sqoop/manager/mysql/DirectMySQLExportTest.java
index b3570ff..8ac0aa3 100644
--- a/src/test/org/apache/sqoop/manager/mysql/DirectMySQLExportTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/DirectMySQLExportTest.java
@@ -33,6 +33,7 @@ import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.sqoop.manager.DirectMySQLManager;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
 import org.junit.After;
 import org.junit.Before;
 
@@ -41,6 +42,7 @@ import org.apache.sqoop.TestExport;
 import org.apache.sqoop.mapreduce.MySQLExportMapper;
 import org.junit.Ignore;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
@@ -49,6 +51,7 @@ import static org.junit.Assert.fail;
 /**
  * Test the DirectMySQLManager implementation's exportJob() functionality.
  */
+@Category( MysqlTest.class)
 public class DirectMySQLExportTest extends TestExport {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/DirectMySQLTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/DirectMySQLTest.java b/src/test/org/apache/sqoop/manager/mysql/DirectMySQLTest.java
index 89a7fec..b34894e 100644
--- a/src/test/org/apache/sqoop/manager/mysql/DirectMySQLTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/DirectMySQLTest.java
@@ -30,6 +30,7 @@ import java.util.ArrayList;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -43,6 +44,7 @@ import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.testutil.CommonArgs;
 import org.apache.sqoop.testutil.ImportJobTestCase;
 import org.apache.sqoop.util.FileListing;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
@@ -69,6 +71,7 @@ import static org.junit.Assert.fail;
  * flush privileges;
  *
  */
+@Category(MysqlTest.class)
 public class DirectMySQLTest extends ImportJobTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/JdbcMySQLExportTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/JdbcMySQLExportTest.java b/src/test/org/apache/sqoop/manager/mysql/JdbcMySQLExportTest.java
index f655bcc..076c65a 100644
--- a/src/test/org/apache/sqoop/manager/mysql/JdbcMySQLExportTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/JdbcMySQLExportTest.java
@@ -27,12 +27,14 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.util.StringUtils;
 import org.apache.sqoop.manager.MySQLManager;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
 import org.junit.After;
 import org.junit.Before;
 
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.TestExport;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.fail;
 
@@ -41,6 +43,7 @@ import static org.junit.Assert.fail;
  * This does a better test of ExportOutputFormat than TestExport does,
  * because it supports multi-row INSERT statements.
  */
+@Category(MysqlTest.class)
 public class JdbcMySQLExportTest extends TestExport {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/MySQLAllTablesTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/MySQLAllTablesTest.java b/src/test/org/apache/sqoop/manager/mysql/MySQLAllTablesTest.java
index baf0e2a..65cd529 100644
--- a/src/test/org/apache/sqoop/manager/mysql/MySQLAllTablesTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/MySQLAllTablesTest.java
@@ -27,10 +27,13 @@ import org.apache.hadoop.conf.Configuration;
 
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.TestAllTables;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
+import org.junit.experimental.categories.Category;
 
 /**
  * Test the --all-tables functionality with MySQL.
  */
+@Category(MysqlTest.class)
 public class MySQLAllTablesTest extends TestAllTables {
 
   private MySQLTestUtils mySQLTestUtils = new MySQLTestUtils();

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/MySQLAuthTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/MySQLAuthTest.java b/src/test/org/apache/sqoop/manager/mysql/MySQLAuthTest.java
index 1e2f70d..88b0448 100644
--- a/src/test/org/apache/sqoop/manager/mysql/MySQLAuthTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/MySQLAuthTest.java
@@ -29,6 +29,7 @@ import java.util.List;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -39,6 +40,7 @@ import org.apache.sqoop.manager.DirectMySQLManager;
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.testutil.CommonArgs;
 import org.apache.sqoop.testutil.ImportJobTestCase;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
@@ -77,6 +79,7 @@ import static org.junit.Assert.fail;
  * -Dtestcase=MySQLAuthTest
  *
  */
+@Category(MysqlTest.class)
 public class MySQLAuthTest extends ImportJobTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/MySQLCompatTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/MySQLCompatTest.java b/src/test/org/apache/sqoop/manager/mysql/MySQLCompatTest.java
index 7e822e6..45f6f4c 100644
--- a/src/test/org/apache/sqoop/manager/mysql/MySQLCompatTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/MySQLCompatTest.java
@@ -27,14 +27,17 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
 import org.junit.Test;
 
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.testutil.ManagerCompatTestCase;
+import org.junit.experimental.categories.Category;
 
 /**
  * Test the basic mysql connection manager with the various column types.
  */
+@Category(MysqlTest.class)
 public class MySQLCompatTest extends ManagerCompatTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/MySQLFreeFormQueryTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/MySQLFreeFormQueryTest.java b/src/test/org/apache/sqoop/manager/mysql/MySQLFreeFormQueryTest.java
index f4f0b74..b4ba86b 100644
--- a/src/test/org/apache/sqoop/manager/mysql/MySQLFreeFormQueryTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/MySQLFreeFormQueryTest.java
@@ -29,10 +29,13 @@ import org.apache.hadoop.conf.Configuration;
 
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.TestFreeFormQueryImport;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
+import org.junit.experimental.categories.Category;
 
 /**
  * Test free form query import with the MySQL db.
  */
+@Category(MysqlTest.class)
 public class MySQLFreeFormQueryTest extends TestFreeFormQueryImport {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/MySQLLobAvroImportTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/MySQLLobAvroImportTest.java b/src/test/org/apache/sqoop/manager/mysql/MySQLLobAvroImportTest.java
index 6208975..ca8958a 100644
--- a/src/test/org/apache/sqoop/manager/mysql/MySQLLobAvroImportTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/MySQLLobAvroImportTest.java
@@ -25,11 +25,14 @@ import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 
 import org.apache.sqoop.SqoopOptions;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
 import org.apache.sqoop.testutil.LobAvroImportTestCase;
+import org.junit.experimental.categories.Category;
 
 /**
  * Tests BLOB/CLOB import for Avro with MySQL Db.
  */
+@Category(MysqlTest.class)
 public class MySQLLobAvroImportTest extends LobAvroImportTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/MySqlCallExportTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/MySqlCallExportTest.java b/src/test/org/apache/sqoop/manager/mysql/MySqlCallExportTest.java
index 22a6676..060e03e 100644
--- a/src/test/org/apache/sqoop/manager/mysql/MySqlCallExportTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/MySqlCallExportTest.java
@@ -35,15 +35,18 @@ import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 
 import org.apache.sqoop.SqoopOptions;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
 import org.apache.sqoop.testutil.CommonArgs;
 import org.apache.sqoop.testutil.ExportJobTestCase;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 /**
  * Test free form query import with the MySQL db.
  */
+@Category(MysqlTest.class)
 public class MySqlCallExportTest extends ExportJobTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/mysql/MySqlColumnEscapeImportTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/mysql/MySqlColumnEscapeImportTest.java b/src/test/org/apache/sqoop/manager/mysql/MySqlColumnEscapeImportTest.java
index eaab8c5..837d580 100644
--- a/src/test/org/apache/sqoop/manager/mysql/MySqlColumnEscapeImportTest.java
+++ b/src/test/org/apache/sqoop/manager/mysql/MySqlColumnEscapeImportTest.java
@@ -19,6 +19,7 @@
 package org.apache.sqoop.manager.mysql;
 
 import org.apache.sqoop.SqoopOptions;
+import org.apache.sqoop.testcategories.thirdpartytest.MysqlTest;
 import org.apache.sqoop.testutil.CommonArgs;
 import org.apache.sqoop.testutil.ImportJobTestCase;
 import com.google.common.base.Charsets;
@@ -29,6 +30,7 @@ import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.Path;
 import org.junit.After;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 import java.io.File;
 import java.io.IOException;
@@ -37,6 +39,7 @@ import java.util.ArrayList;
 
 import static org.junit.Assert.assertEquals;
 
+@Category(MysqlTest.class)
 public class MySqlColumnEscapeImportTest extends ImportJobTestCase {
 
   public static final Log LOG = LogFactory.getLog(

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaExportManualTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaExportManualTest.java b/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaExportManualTest.java
index 0a6997f..09daceb 100644
--- a/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaExportManualTest.java
+++ b/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaExportManualTest.java
@@ -25,15 +25,19 @@ import java.util.Arrays;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.sqoop.manager.DirectNetezzaManager;
+import org.apache.sqoop.testcategories.sqooptest.ManualTest;
+import org.apache.sqoop.testcategories.thirdpartytest.NetezzaTest;
 import org.junit.Test;
 
 import org.apache.sqoop.SqoopOptions;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.fail;
 
 /**
  * Test the DirectNetezzaManager implementation's exportJob() functionality.
  */
+@Category({ManualTest.class, NetezzaTest.class})
 public class DirectNetezzaExportManualTest extends NetezzaExportManualTest {
 
   public static final Log LOG = LogFactory

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatExportManualTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatExportManualTest.java b/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatExportManualTest.java
index 9365ba0..9988a57 100644
--- a/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatExportManualTest.java
+++ b/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatExportManualTest.java
@@ -31,14 +31,18 @@ import org.apache.sqoop.hcat.HCatalogTestUtils;
 import org.apache.sqoop.hcat.HCatalogTestUtils.ColumnGenerator;
 import org.apache.sqoop.hcat.HCatalogTestUtils.KeyType;
 import org.apache.sqoop.manager.NetezzaManager;
+import org.apache.sqoop.testcategories.sqooptest.ManualTest;
+import org.apache.sqoop.testcategories.thirdpartytest.NetezzaTest;
 import org.junit.Before;
 
 import org.apache.sqoop.SqoopOptions;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 /**
  * Test the DirectNetezzaManager implementation's hcatalog export functionality.
  */
+@Category({ManualTest.class, NetezzaTest.class})
 public class DirectNetezzaHCatExportManualTest extends HCatalogExportTest {
   // instance variables populated during setUp, used during tests
   private NetezzaManager manager;

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatImportManualTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatImportManualTest.java b/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatImportManualTest.java
index c05b733..97af830 100644
--- a/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatImportManualTest.java
+++ b/src/test/org/apache/sqoop/manager/netezza/DirectNetezzaHCatImportManualTest.java
@@ -31,14 +31,18 @@ import org.apache.sqoop.hcat.HCatalogTestUtils;
 import org.apache.sqoop.hcat.HCatalogTestUtils.ColumnGenerator;
 import org.apache.sqoop.hcat.HCatalogTestUtils.KeyType;
 import org.apache.sqoop.manager.NetezzaManager;
+import org.apache.sqoop.testcategories.sqooptest.ManualTest;
+import org.apache.sqoop.testcategories.thirdpartytest.NetezzaTest;
 import org.junit.Before;
 
 import org.apache.sqoop.SqoopOptions;
 import org.junit.Test;
+import org.junit.experimental.categories.Category;
 
 /**
  * Test the DirectNetezzaManager implementation's hcatalog import functionality.
  */
+@Category({ManualTest.class, NetezzaTest.class})
 public class DirectNetezzaHCatImportManualTest extends HCatalogImportTest {
   // instance variables populated during setUp, used during tests
   private NetezzaManager manager;

http://git-wip-us.apache.org/repos/asf/sqoop/blob/d58e5f10/src/test/org/apache/sqoop/manager/netezza/NetezzaExportManualTest.java
----------------------------------------------------------------------
diff --git a/src/test/org/apache/sqoop/manager/netezza/NetezzaExportManualTest.java b/src/test/org/apache/sqoop/manager/netezza/NetezzaExportManualTest.java
index 95abe7a..2ca9853 100644
--- a/src/test/org/apache/sqoop/manager/netezza/NetezzaExportManualTest.java
+++ b/src/test/org/apache/sqoop/manager/netezza/NetezzaExportManualTest.java
@@ -31,12 +31,15 @@ import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.sqoop.manager.DirectNetezzaManager;
 import org.apache.sqoop.manager.NetezzaManager;
+import org.apache.sqoop.testcategories.sqooptest.ManualTest;
+import org.apache.sqoop.testcategories.thirdpartytest.NetezzaTest;
 import org.junit.Before;
 
 import org.apache.sqoop.SqoopOptions;
 import org.apache.sqoop.TestExport;
 import org.apache.sqoop.testutil.BaseSqoopTestCase;
 import org.apache.sqoop.testutil.CommonArgs;
+import org.junit.experimental.categories.Category;
 
 import static org.junit.Assert.fail;
 
@@ -51,6 +54,7 @@ import static org.junit.Assert.fail;
  * this manually with -Dtestcase=NetezzaExportManualTest.
  *
  */
+@Category({ManualTest.class, NetezzaTest.class})
 public class NetezzaExportManualTest extends TestExport {
   public static final Log LOG = LogFactory.getLog(NetezzaExportManualTest.class
     .getName());


Mime
View raw message