You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gobblin.apache.org by wl...@apache.org on 2023/03/02 16:47:55 UTC

[gobblin] branch master updated: [GOBBLIN-1792] Upgrade Mockito to 4.* (#3651)

This is an automated email from the ASF dual-hosted git repository.

wlo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/gobblin.git


The following commit(s) were added to refs/heads/master by this push:
     new c84767ba7 [GOBBLIN-1792] Upgrade Mockito to 4.*  (#3651)
c84767ba7 is described below

commit c84767ba79495b384d6b7f49d0c78695faf5b30a
Author: Matthew Ho <ho...@gmail.com>
AuthorDate: Thu Mar 2 08:47:48 2023 -0800

    [GOBBLIN-1792] Upgrade Mockito to 4.*  (#3651)
    
    * [GOBBLIN-1792] Upgrade Mockito to 4.*
    
    * any(class) to any for tests that use null
    
    * Remove powermock
    
    * no underscore before private variables for consisting within the class
    
    * Gobblin OSS styling
---
 gobblin-aws/build.gradle                           |  1 -
 .../gobblin/aws/GobblinAWSClusterLauncher.java     |  2 +-
 .../gobblin/aws/GobblinAWSClusterLauncherTest.java | 24 +++----
 .../cluster/FsJobConfigurationManagerTest.java     |  4 +-
 .../gobblin/cluster/SingleHelixTaskTest.java       |  2 +-
 .../gobblin/cluster/SingleTaskLauncherTest.java    |  2 +-
 .../copy/ManifestBasedDatasetFinder.java           |  9 ++-
 .../gobblin/util/test/RetentionTestHelper.java     |  2 +-
 .../copy/iceberg/IcebergDatasetTest.java           |  6 +-
 .../dataset/ManifestBasedDatasetFinderTest.java    |  4 +-
 gobblin-iceberg/build.gradle                       |  2 -
 .../iceberg/publisher/GobblinMCEPublisherTest.java | 53 ++++++++-------
 .../iceberg/writer/GobblinMCEWriterTest.java       | 75 +++++++++-------------
 .../iceberg/writer/HiveMetadataWriterTest.java     | 10 +--
 .../iceberg/writer/IcebergMetadataWriterTest.java  |  5 +-
 .../org.mockito.plugins.MockMaker                  |  1 +
 .../reporter/FileFailureEventReporterTest.java     |  8 +--
 gobblin-modules/gobblin-azkaban/build.gradle       |  1 -
 .../compliance/purger/HivePurgerConverterTest.java |  4 +-
 .../writer/BatchedEventhubDataWriterTest.java      |  5 +-
 .../eventhub/writer/EventhubDataWriterTest.java    |  2 -
 .../kafka/KafkaDeserializerExtractorTest.java      |  8 +--
 .../extract/kafka/KafkaSimpleStreamingTest.java    |  4 +-
 .../kafka/writer/Kafka09DataWriterTest.java        |  7 +-
 .../gobblin/kafka/writer/Kafka1DataWriterTest.java | 25 ++++----
 .../converter/EnvelopePayloadConverterTest.java    | 11 ++--
 .../EnvelopePayloadExtractingConverterTest.java    | 13 ++--
 .../extract/kafka/ConfigStoreUtilsTest.java        |  4 +-
 .../extract/kafka/ZipConfigStoreUtilsTest.java     | 15 +++--
 .../gobblin/writer/JdbcWriterInitializerTest.java  |  2 +-
 .../org/apache/gobblin/writer/JdbcWriterTest.java  |  7 +-
 .../gobblin/writer/MySqlBufferedInserterTest.java  | 11 ++--
 .../writer/TeradataBufferedInserterTest.java       | 14 ++--
 .../AutomaticTroubleshooterTest.java               |  8 +--
 .../GoogleWebmasterDataFetcherImplTest.java        | 34 +++++-----
 .../GoogleWebmasterExtractorIteratorTest.java      | 10 +--
 .../org/apache/gobblin/service/FlowConfigTest.java |  9 +--
 .../apache/gobblin/service/FlowConfigV2Test.java   |  9 +--
 .../spec_executorInstance/MockedSpecExecutor.java  |  2 +-
 .../apache/gobblin/runtime/TaskContinuousTest.java | 15 ++---
 .../java/org/apache/gobblin/runtime/TaskTest.java  | 12 +---
 .../apache/gobblin/runtime/TestRecordStream.java   | 12 ++--
 .../gobblin/runtime/api/TestJobExecutionState.java | 10 +--
 .../runtime/job_catalog/TestFSJobCatalog.java      | 13 ++--
 .../std/TestFilteredJobLifecycleListener.java      | 10 +--
 .../runtime/std/TestJobLifecycleListenersList.java | 10 +--
 .../troubleshooter/JobIssueEventHandlerTest.java   |  4 +-
 .../modules/orchestration/DagManagerFlowTest.java  |  5 +-
 .../scheduler/GobblinServiceJobSchedulerTest.java  | 38 +++++------
 .../service/monitoring/GitConfigMonitorTest.java   | 11 ++--
 gobblin-yarn/build.gradle                          |  1 -
 .../yarn/HelixInstancePurgerWithMetricsTest.java   | 20 ++----
 .../gobblin/yarn/YarnAutoScalingManagerTest.java   |  9 +--
 .../gobblin/yarn/YarnSecurityManagerTest.java      |  2 +-
 .../org/apache/gobblin/yarn/YarnServiceTest.java   | 69 ++++++++------------
 .../org.mockito.plugins.MockMaker                  |  1 +
 gradle/scripts/dependencyDefinitions.gradle        |  3 +-
 57 files changed, 303 insertions(+), 357 deletions(-)

diff --git a/gobblin-aws/build.gradle b/gobblin-aws/build.gradle
index 1c0fd5fbd..31ed25b07 100644
--- a/gobblin-aws/build.gradle
+++ b/gobblin-aws/build.gradle
@@ -69,7 +69,6 @@ dependencies {
   testCompile externalDependency.curatorFramework
   testCompile externalDependency.curatorTest
   testCompile externalDependency.mockito
-  testCompile externalDependency.powermock
   testCompile externalDependency.slf4jToLog4j
 }
 
diff --git a/gobblin-aws/src/main/java/org/apache/gobblin/aws/GobblinAWSClusterLauncher.java b/gobblin-aws/src/main/java/org/apache/gobblin/aws/GobblinAWSClusterLauncher.java
index c2b0d5db5..ccc3fc2e3 100644
--- a/gobblin-aws/src/main/java/org/apache/gobblin/aws/GobblinAWSClusterLauncher.java
+++ b/gobblin-aws/src/main/java/org/apache/gobblin/aws/GobblinAWSClusterLauncher.java
@@ -319,7 +319,7 @@ public class GobblinAWSClusterLauncher {
   }
 
   @VisibleForTesting
-  AWSSdkClient createAWSSdkClient() {
+  protected AWSSdkClient createAWSSdkClient() {
     return new AWSSdkClient(this.awsClusterSecurityManager,
         Region.getRegion(Regions.fromName(this.awsRegion)));
   }
diff --git a/gobblin-aws/src/test/java/org/apache/gobblin/aws/GobblinAWSClusterLauncherTest.java b/gobblin-aws/src/test/java/org/apache/gobblin/aws/GobblinAWSClusterLauncherTest.java
index 94ca55e8e..17c8ee24a 100644
--- a/gobblin-aws/src/test/java/org/apache/gobblin/aws/GobblinAWSClusterLauncherTest.java
+++ b/gobblin-aws/src/test/java/org/apache/gobblin/aws/GobblinAWSClusterLauncherTest.java
@@ -31,10 +31,6 @@ import org.apache.helix.model.Message;
 import org.mockito.Mock;
 import org.mockito.Mockito;
 import org.mockito.MockitoAnnotations;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.testng.PowerMockTestCase;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.testng.Assert;
@@ -72,9 +68,7 @@ import org.apache.gobblin.testing.AssertWithBackoff;
  * @author Abhishek Tiwari
  */
 @Test(groups = { "gobblin.aws" })
-@PrepareForTest({ AWSSdkClient.class, GobblinAWSClusterLauncher.class})
-@PowerMockIgnore({"javax.*", "org.apache.helix.*", "org.apache.curator.*", "org.apache.zookeeper.*", "org.w3c.*", "org.xml.*"})
-public class GobblinAWSClusterLauncherTest extends PowerMockTestCase implements HelixMessageTestBase  {
+public class GobblinAWSClusterLauncherTest implements HelixMessageTestBase  {
   public final static Logger LOG = LoggerFactory.getLogger(GobblinAWSClusterLauncherTest.class);
 
   private CuratorFramework curatorFramework;
@@ -115,9 +109,7 @@ public class GobblinAWSClusterLauncherTest extends PowerMockTestCase implements
   public void setUp() throws Exception {
 
     // Mock AWS SDK calls
-    MockitoAnnotations.initMocks(this);
-
-    PowerMockito.whenNew(AWSSdkClient.class).withAnyArguments().thenReturn(awsSdkClient);
+    MockitoAnnotations.openMocks(this);
 
     Mockito.doNothing()
         .when(awsSdkClient)
@@ -187,7 +179,7 @@ public class GobblinAWSClusterLauncherTest extends PowerMockTestCase implements
             TestHelper.TEST_HELIX_INSTANCE_NAME, InstanceType.CONTROLLER, zkConnectionString);
 
     // Gobblin AWS Cluster Launcher to test
-    this.gobblinAwsClusterLauncher = new GobblinAWSClusterLauncher(this.config);
+    this.gobblinAwsClusterLauncher = new TestGobblinAWSClusterLauncher(this.config);
   }
 
   @Test
@@ -265,6 +257,16 @@ public class GobblinAWSClusterLauncherTest extends PowerMockTestCase implements
     Assert.assertEquals(message.getMsgSubType(), HelixMessageSubTypes.APPLICATION_MASTER_SHUTDOWN.toString());
   }
 
+  class TestGobblinAWSClusterLauncher extends GobblinAWSClusterLauncher {
+    public TestGobblinAWSClusterLauncher(Config config) throws IOException {
+      super(config);
+    }
+
+    protected AWSSdkClient createAWSSdkClient() {
+      return awsSdkClient;
+    }
+  }
+
   static class GetControllerMessageNumFunc implements Function<Void, Integer> {
     private final CuratorFramework curatorFramework;
     private final String testName;
diff --git a/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/FsJobConfigurationManagerTest.java b/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/FsJobConfigurationManagerTest.java
index cc1954eb1..1af6e1f1c 100644
--- a/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/FsJobConfigurationManagerTest.java
+++ b/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/FsJobConfigurationManagerTest.java
@@ -89,7 +89,7 @@ public class FsJobConfigurationManagerTest {
         throw new IOException("Unexpected event type");
       }
       return null;
-    }).when(this.eventBus).post(Mockito.anyObject());
+    }).when(this.eventBus).post(Mockito.any());
 
     this.fs = FileSystem.getLocal(new Configuration(false));
     Path jobConfDirPath = new Path(jobConfDir);
@@ -221,4 +221,4 @@ public class FsJobConfigurationManagerTest {
       fs.delete(jobCatalogPath, true);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/SingleHelixTaskTest.java b/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/SingleHelixTaskTest.java
index 256ef223e..10ab07324 100644
--- a/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/SingleHelixTaskTest.java
+++ b/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/SingleHelixTaskTest.java
@@ -28,7 +28,7 @@ import org.testng.annotations.Test;
 import com.google.common.collect.ImmutableMap;
 
 import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
diff --git a/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/SingleTaskLauncherTest.java b/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/SingleTaskLauncherTest.java
index 3c56428cc..0befee90b 100644
--- a/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/SingleTaskLauncherTest.java
+++ b/gobblin-cluster/src/test/java/org/apache/gobblin/cluster/SingleTaskLauncherTest.java
@@ -31,7 +31,7 @@ import org.apache.gobblin.util.GobblinProcessBuilder;
 import org.apache.gobblin.util.SystemPropertiesWrapper;
 
 import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
diff --git a/gobblin-data-management/src/main/java/org/apache/gobblin/data/management/copy/ManifestBasedDatasetFinder.java b/gobblin-data-management/src/main/java/org/apache/gobblin/data/management/copy/ManifestBasedDatasetFinder.java
index 5e8f2a68d..083d54aba 100644
--- a/gobblin-data-management/src/main/java/org/apache/gobblin/data/management/copy/ManifestBasedDatasetFinder.java
+++ b/gobblin-data-management/src/main/java/org/apache/gobblin/data/management/copy/ManifestBasedDatasetFinder.java
@@ -17,18 +17,21 @@
 
 package org.apache.gobblin.data.management.copy;
 
-import com.google.common.base.Preconditions;
-import com.google.common.base.Splitter;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Properties;
 import java.util.stream.Collectors;
-import org.apache.gobblin.dataset.IterableDatasetFinder;
+
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 
+import com.google.common.base.Preconditions;
+import com.google.common.base.Splitter;
+
+import org.apache.gobblin.dataset.IterableDatasetFinder;
+
 
 public class ManifestBasedDatasetFinder implements IterableDatasetFinder<ManifestBasedDataset> {
 
diff --git a/gobblin-data-management/src/main/java/org/apache/gobblin/util/test/RetentionTestHelper.java b/gobblin-data-management/src/main/java/org/apache/gobblin/util/test/RetentionTestHelper.java
index 7ad7e7c25..4b9be9382 100644
--- a/gobblin-data-management/src/main/java/org/apache/gobblin/util/test/RetentionTestHelper.java
+++ b/gobblin-data-management/src/main/java/org/apache/gobblin/util/test/RetentionTestHelper.java
@@ -41,7 +41,7 @@ import org.apache.gobblin.dataset.DatasetsFinder;
 import org.apache.gobblin.util.PathUtils;
 import org.apache.gobblin.util.reflection.GobblinConstructorUtils;
 
-import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
diff --git a/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/copy/iceberg/IcebergDatasetTest.java b/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/copy/iceberg/IcebergDatasetTest.java
index d8683d250..40cfb7bc3 100644
--- a/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/copy/iceberg/IcebergDatasetTest.java
+++ b/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/copy/iceberg/IcebergDatasetTest.java
@@ -62,7 +62,7 @@ import org.apache.gobblin.data.management.copy.CopyContext;
 import org.apache.gobblin.data.management.copy.CopyEntity;
 import org.apache.gobblin.data.management.copy.PreserveAttributes;
 
-import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.any;
 
 
 /** Tests for {@link org.apache.gobblin.data.management.copy.iceberg.IcebergDataset} */
@@ -492,11 +492,11 @@ public class IcebergDatasetTest {
       FileSystem fs = Mockito.mock(FileSystem.class);
       Mockito.when(fs.getUri()).thenReturn(fsURI);
       Mockito.when(fs.makeQualified(any(Path.class)))
-          .thenAnswer(invocation -> invocation.getArgumentAt(0, Path.class).makeQualified(fsURI, new Path("/")));
+          .thenAnswer(invocation -> invocation.getArgument(0, Path.class).makeQualified(fsURI, new Path("/")));
 
       if (!this.optPathsWithFileStatuses.isPresent()) {
         Mockito.when(fs.getFileStatus(any(Path.class)))
-            .thenAnswer(invocation -> createEmptyFileStatus(invocation.getArgumentAt(0, Path.class).toString()));
+            .thenAnswer(invocation -> createEmptyFileStatus(invocation.getArgument(0, Path.class).toString()));
       } else {
         // WARNING: order is critical--specific paths *after* `any(Path)`; in addition, since mocking further
         // an already-mocked instance, `.doReturn/.when` is needed (vs. `.when/.thenReturn`)
diff --git a/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/dataset/ManifestBasedDatasetFinderTest.java b/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/dataset/ManifestBasedDatasetFinderTest.java
index 95ab31c34..4b6524f11 100644
--- a/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/dataset/ManifestBasedDatasetFinderTest.java
+++ b/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/dataset/ManifestBasedDatasetFinderTest.java
@@ -36,7 +36,7 @@ import org.mockito.Mockito;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
-import static org.mockito.Matchers.*;
+import static org.mockito.Mockito.*;
 
 
 public class ManifestBasedDatasetFinderTest {
@@ -91,4 +91,4 @@ public class ManifestBasedDatasetFinderTest {
       Assert.assertEquals(fileSet.getFiles().size(), 2);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/gobblin-iceberg/build.gradle b/gobblin-iceberg/build.gradle
index 8405a3c92..fe030f80c 100644
--- a/gobblin-iceberg/build.gradle
+++ b/gobblin-iceberg/build.gradle
@@ -56,8 +56,6 @@ dependencies {
     testCompile project(path: ':gobblin-modules:gobblin-kafka-common', configuration: 'tests')
     testCompile externalDependency.testng
     testCompile externalDependency.mockito
-    // Added to mock static methods for GobblinMCEWriterTest
-    testCompile externalDependency.powermock
 }
 
 configurations {
diff --git a/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/publisher/GobblinMCEPublisherTest.java b/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/publisher/GobblinMCEPublisherTest.java
index faa59dd80..759ddceb2 100644
--- a/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/publisher/GobblinMCEPublisherTest.java
+++ b/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/publisher/GobblinMCEPublisherTest.java
@@ -17,44 +17,28 @@
 
 package org.apache.gobblin.iceberg.publisher;
 
-import azkaban.jobExecutor.AbstractJob;
-import com.google.common.io.Closer;
-import com.google.common.io.Files;
-import java.io.InputStream;
-import java.util.ArrayList;
-import org.apache.avro.generic.GenericDatumReader;
-import org.apache.avro.io.Decoder;
-import org.apache.avro.io.DecoderFactory;
-import org.apache.gobblin.hive.policy.HiveSnapshotRegistrationPolicy;
-import org.apache.gobblin.iceberg.GobblinMCEProducer;
-import org.apache.gobblin.metadata.GobblinMetadataChangeEvent;
-import org.apache.gobblin.metadata.OperationType;
-import org.apache.gobblin.metadata.SchemaSource;
-import gobblin.configuration.WorkUnitState;
 import java.io.File;
 import java.io.IOException;
+import java.io.InputStream;
 import java.nio.CharBuffer;
 import java.nio.charset.Charset;
 import java.nio.charset.CharsetEncoder;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
+
 import org.apache.avro.Schema;
 import org.apache.avro.SchemaBuilder;
 import org.apache.avro.file.DataFileWriter;
 import org.apache.avro.generic.GenericData;
+import org.apache.avro.generic.GenericDatumReader;
 import org.apache.avro.generic.GenericDatumWriter;
 import org.apache.avro.generic.GenericRecord;
 import org.apache.avro.io.DatumWriter;
+import org.apache.avro.io.Decoder;
+import org.apache.avro.io.DecoderFactory;
 import org.apache.commons.io.FileUtils;
-import org.apache.gobblin.configuration.ConfigurationKeys;
-import org.apache.gobblin.configuration.State;
-import org.apache.gobblin.source.workunit.WorkUnit;
-import org.apache.gobblin.writer.FsDataWriterBuilder;
-import org.apache.gobblin.writer.GobblinOrcWriter;
-import org.apache.gobblin.writer.PartitionedDataWriter;
-import org.apache.gobblin.writer.partitioner.TimeBasedWriterPartitioner;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
@@ -67,8 +51,29 @@ import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
 import org.testng.annotations.Test;
 
-import static org.mockito.Matchers.*;
-import static org.mockito.Mockito.*;
+import com.google.common.io.Closer;
+import com.google.common.io.Files;
+
+import azkaban.jobExecutor.AbstractJob;
+import gobblin.configuration.WorkUnitState;
+
+import org.apache.gobblin.configuration.ConfigurationKeys;
+import org.apache.gobblin.configuration.State;
+import org.apache.gobblin.hive.policy.HiveSnapshotRegistrationPolicy;
+import org.apache.gobblin.iceberg.GobblinMCEProducer;
+import org.apache.gobblin.metadata.GobblinMetadataChangeEvent;
+import org.apache.gobblin.metadata.OperationType;
+import org.apache.gobblin.metadata.SchemaSource;
+import org.apache.gobblin.source.workunit.WorkUnit;
+import org.apache.gobblin.writer.FsDataWriterBuilder;
+import org.apache.gobblin.writer.GobblinOrcWriter;
+import org.apache.gobblin.writer.PartitionedDataWriter;
+import org.apache.gobblin.writer.partitioner.TimeBasedWriterPartitioner;
+
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.anyList;
+import static org.mockito.Mockito.anyMap;
+import static org.mockito.Mockito.when;
 
 
 public class GobblinMCEPublisherTest {
diff --git a/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/GobblinMCEWriterTest.java b/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/GobblinMCEWriterTest.java
index 820fbe684..129817b5b 100644
--- a/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/GobblinMCEWriterTest.java
+++ b/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/GobblinMCEWriterTest.java
@@ -26,7 +26,22 @@ import java.util.Set;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.RejectedExecutionException;
 import java.util.function.BiConsumer;
+
+import org.apache.hadoop.fs.FileSystem;
+import org.mockito.Mock;
+import org.mockito.MockedStatic;
+import org.mockito.Mockito;
+import org.mockito.MockitoAnnotations;
+import org.testng.Assert;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.DataProvider;
+import org.testng.annotations.Test;
+
+import com.google.common.collect.Sets;
+
 import lombok.SneakyThrows;
+
 import org.apache.gobblin.configuration.State;
 import org.apache.gobblin.hive.HiveTable;
 import org.apache.gobblin.hive.spec.HiveSpec;
@@ -41,38 +56,11 @@ import org.apache.gobblin.source.extractor.extract.kafka.KafkaStreamingExtractor
 import org.apache.gobblin.stream.RecordEnvelope;
 import org.apache.gobblin.util.ClustersNames;
 import org.apache.gobblin.util.reflection.GobblinConstructorUtils;
-import org.apache.hadoop.fs.FileSystem;
-import org.mockito.Mock;
-import org.mockito.Mockito;
-import org.mockito.MockitoAnnotations;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.testng.PowerMockObjectFactory;
-import org.powermock.modules.testng.PowerMockTestCase;
-import org.testng.Assert;
-import org.testng.IObjectFactory;
-import org.testng.annotations.AfterMethod;
-import org.testng.annotations.BeforeMethod;
-import org.testng.annotations.DataProvider;
-import org.testng.annotations.ObjectFactory;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.Sets;
 
 import static org.mockito.Mockito.*;
 
 
-/**
- * Test class uses PowerMockito and Testng
- * References:
- * https://github.com/powermock/powermock/issues/434
- * https://jivimberg.io/blog/2016/04/03/using-powermock-plus-testng-to-mock-a-static-class/
- * https://www.igorkromin.net/index.php/2018/10/04/how-to-fix-powermock-exception-linkageerror-loader-constraint-violation/
- */
-@PrepareForTest({GobblinConstructorUtils.class, FileSystem.class})
-@PowerMockIgnore("javax.management.*")
-public class GobblinMCEWriterTest extends PowerMockTestCase {
+public class GobblinMCEWriterTest {
 
   private String dbName = "hivedb";
   private String tableName = "testTable";
@@ -93,10 +81,14 @@ public class GobblinMCEWriterTest extends PowerMockTestCase {
 
   @Mock
   private HiveTable mockTable;
+  private MockedStatic<GobblinConstructorUtils> mockConstructorUtils;
+  private MockedStatic<FileSystem> mockedFileSystem;
 
   @AfterMethod
   public void clean() throws Exception {
     gobblinMCEWriter.close();
+    mockConstructorUtils.close();
+    mockedFileSystem.close();
   }
 
   @BeforeMethod
@@ -122,21 +114,21 @@ public class GobblinMCEWriterTest extends PowerMockTestCase {
 
     Mockito.doNothing().when(mockWriter)
         .writeEnvelope(
-            Mockito.any(RecordEnvelope.class), Mockito.anyMap(), Mockito.anyMap(), Mockito.any(HiveSpec.class));
+            any(RecordEnvelope.class), anyMap(), anyMap(), any(HiveSpec.class));
     Mockito.doThrow(new IOException("Test Exception")).when(exceptionWriter)
         .writeEnvelope(
-            Mockito.any(RecordEnvelope.class), Mockito.anyMap(), Mockito.anyMap(), Mockito.any(HiveSpec.class));
+            any(RecordEnvelope.class), anyMap(), anyMap(), any(HiveSpec.class));
 
-    PowerMockito.mockStatic(GobblinConstructorUtils.class);
-    when(GobblinConstructorUtils.invokeConstructor(
+    mockConstructorUtils = Mockito.mockStatic(GobblinConstructorUtils.class);
+    mockConstructorUtils.when(() -> GobblinConstructorUtils.invokeConstructor(
             eq(MetadataWriter.class), eq(mockWriter.getClass().getName()), any(State.class)))
         .thenReturn(mockWriter);
     when(GobblinConstructorUtils.invokeConstructor(
         eq(MetadataWriter.class), eq(exceptionWriter.getClass().getName()), any(State.class)))
         .thenReturn(exceptionWriter);
 
-    PowerMockito.mockStatic(FileSystem.class);
-    when(FileSystem.get(any()))
+    mockedFileSystem = Mockito.mockStatic(FileSystem.class);
+    mockedFileSystem.when(() -> FileSystem.get(any()))
         .thenReturn(fs);
 
     when(mockTable.getDbName()).thenReturn(dbName);
@@ -152,9 +144,9 @@ public class GobblinMCEWriterTest extends PowerMockTestCase {
     writeWithMetadataWriters(gmceBuilder.build());
 
     Mockito.verify(mockWriter, Mockito.times(1)).writeEnvelope(
-        Mockito.any(RecordEnvelope.class), Mockito.anyMap(), Mockito.anyMap(), Mockito.any(HiveSpec.class));
+        any(RecordEnvelope.class), anyMap(), anyMap(), any(HiveSpec.class));
     Mockito.verify(exceptionWriter, never()).writeEnvelope(
-        Mockito.any(RecordEnvelope.class), Mockito.anyMap(), Mockito.anyMap(), Mockito.any(HiveSpec.class));
+        any(RecordEnvelope.class), anyMap(), anyMap(), any(HiveSpec.class));
   }
 
   @Test
@@ -179,9 +171,9 @@ public class GobblinMCEWriterTest extends PowerMockTestCase {
 
         // also validates that order is maintained since all writers after an exception should reset instead of write
         Mockito.verify(mockWriter, Mockito.times(timesCalled)).writeEnvelope(
-            Mockito.any(RecordEnvelope.class), Mockito.anyMap(), Mockito.anyMap(), Mockito.any(HiveSpec.class));
+            any(RecordEnvelope.class), anyMap(), anyMap(), any(HiveSpec.class));
         Mockito.verify(exceptionWriter, Mockito.times(timesCalled)).writeEnvelope(
-            Mockito.any(RecordEnvelope.class), Mockito.anyMap(), Mockito.anyMap(), Mockito.any(HiveSpec.class));
+            any(RecordEnvelope.class), anyMap(), anyMap(), any(HiveSpec.class));
         Mockito.verify(exceptionWriter, Mockito.times(1)).reset(dbName, tableName);
         Mockito.verify(mockWriter, Mockito.times(1)).reset(dbName, tableName);
       }
@@ -239,7 +231,7 @@ public class GobblinMCEWriterTest extends PowerMockTestCase {
   }
 
   private void initMocks() {
-    MockitoAnnotations.initMocks(this);
+    MockitoAnnotations.openMocks(this);
     // Hacky way to have 2 mock MetadataWriter "classes" with different underlying names
     mockWriter = Mockito.mock(MetadataWriter.class);
     exceptionWriter = Mockito.mock(TestExceptionMetadataWriter.class);
@@ -259,10 +251,5 @@ public class GobblinMCEWriterTest extends PowerMockTestCase {
     gobblinMCEWriter.tableOperationTypeMap.put(dbName + "." + tableName, new GobblinMCEWriter.TableStatus(
         OperationType.add_files, datasetPath, "GobblinMetadataChangeEvent_test-1", 0, 50));
   }
-
-  @ObjectFactory
-  public IObjectFactory getObjectFactory() {
-    return new PowerMockObjectFactory();
-  }
 }
 
diff --git a/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/HiveMetadataWriterTest.java b/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/HiveMetadataWriterTest.java
index 392c57f9c..cfcd50d28 100644
--- a/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/HiveMetadataWriterTest.java
+++ b/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/HiveMetadataWriterTest.java
@@ -22,9 +22,9 @@ import java.io.IOException;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
-
 import java.util.Map;
 import java.util.function.Function;
+
 import org.apache.avro.SchemaBuilder;
 import org.apache.avro.file.DataFileWriter;
 import org.apache.avro.generic.GenericData;
@@ -33,7 +33,6 @@ import org.apache.avro.generic.GenericRecord;
 import org.apache.avro.io.DatumWriter;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang3.StringUtils;
-import org.apache.gobblin.hive.metastore.HiveMetaStoreBasedRegister;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
@@ -45,6 +44,7 @@ import org.apache.hadoop.hive.serde2.avro.AvroSerdeUtils;
 import org.apache.iceberg.hive.HiveMetastoreTest;
 import org.apache.iceberg.hive.TestHiveMetastore;
 import org.apache.thrift.TException;
+import org.mockito.Mockito;
 import org.testng.Assert;
 import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
@@ -63,6 +63,7 @@ import org.apache.gobblin.hive.HivePartition;
 import org.apache.gobblin.hive.HiveRegister;
 import org.apache.gobblin.hive.HiveRegistrationUnit;
 import org.apache.gobblin.hive.HiveTable;
+import org.apache.gobblin.hive.metastore.HiveMetaStoreBasedRegister;
 import org.apache.gobblin.hive.policy.HiveRegistrationPolicyBase;
 import org.apache.gobblin.hive.spec.HiveSpec;
 import org.apache.gobblin.hive.spec.SimpleHiveSpec;
@@ -83,9 +84,8 @@ import org.apache.gobblin.stream.RecordEnvelope;
 import org.apache.gobblin.util.ClustersNames;
 import org.apache.gobblin.util.ConfigUtils;
 import org.apache.gobblin.util.function.CheckedExceptionFunction;
-import org.mockito.Mockito;
 
-import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.eq;
 
 
 public class HiveMetadataWriterTest extends HiveMetastoreTest {
@@ -340,7 +340,7 @@ public class HiveMetadataWriterTest extends HiveMetastoreTest {
     gmce.setOperationType(OperationType.drop_files);
     gmce.setOldFilePrefixes(null);
     hiveWriter.write(gmce, null, null, spec, "someTopicPartition");
-    Mockito.verifyZeroInteractions(mockRegister);
+    Mockito.verifyNoInteractions(mockRegister);
   }
 
   /**
diff --git a/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/IcebergMetadataWriterTest.java b/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/IcebergMetadataWriterTest.java
index 5e2e3d00d..f9b3b327c 100644
--- a/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/IcebergMetadataWriterTest.java
+++ b/gobblin-iceberg/src/test/java/org/apache/gobblin/iceberg/writer/IcebergMetadataWriterTest.java
@@ -64,8 +64,8 @@ import org.apache.gobblin.hive.HivePartition;
 import org.apache.gobblin.hive.HiveRegistrationUnit;
 import org.apache.gobblin.hive.HiveTable;
 import org.apache.gobblin.hive.policy.HiveRegistrationPolicyBase;
-import org.apache.gobblin.hive.writer.MetadataWriterKeys;
 import org.apache.gobblin.hive.writer.MetadataWriter;
+import org.apache.gobblin.hive.writer.MetadataWriterKeys;
 import org.apache.gobblin.metadata.DataFile;
 import org.apache.gobblin.metadata.DataMetrics;
 import org.apache.gobblin.metadata.DataOrigin;
@@ -83,6 +83,7 @@ import org.apache.gobblin.source.extractor.extract.kafka.KafkaStreamingExtractor
 import org.apache.gobblin.stream.RecordEnvelope;
 import org.apache.gobblin.util.ClustersNames;
 import org.apache.gobblin.util.ConfigUtils;
+
 import static org.apache.gobblin.iceberg.writer.IcebergMetadataWriterConfigKeys.*;
 
 public class IcebergMetadataWriterTest extends HiveMetastoreTest {
@@ -177,7 +178,7 @@ public class IcebergMetadataWriterTest extends HiveMetastoreTest {
         SchemaBuilder.record("partitionTest").fields().name("ds").type().optional().stringType().endRecord();
 
     gobblinMCEWriter.eventSubmitter = Mockito.mock(EventSubmitter.class);
-    Mockito.doAnswer(invocation -> eventsSent.add(invocation.getArgumentAt(0, GobblinEventBuilder.class)))
+    Mockito.doAnswer(invocation -> eventsSent.add(invocation.getArgument(0, GobblinEventBuilder.class)))
         .when(gobblinMCEWriter.eventSubmitter).submit(Mockito.any(GobblinEventBuilder.class));
   }
 
diff --git a/gobblin-iceberg/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker b/gobblin-iceberg/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
new file mode 100644
index 000000000..1f0955d45
--- /dev/null
+++ b/gobblin-iceberg/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
@@ -0,0 +1 @@
+mock-maker-inline
diff --git a/gobblin-metrics-libs/gobblin-metrics-base/src/test/java/org/apache/gobblin/metrics/reporter/FileFailureEventReporterTest.java b/gobblin-metrics-libs/gobblin-metrics-base/src/test/java/org/apache/gobblin/metrics/reporter/FileFailureEventReporterTest.java
index 07f01729d..aab5ce363 100644
--- a/gobblin-metrics-libs/gobblin-metrics-base/src/test/java/org/apache/gobblin/metrics/reporter/FileFailureEventReporterTest.java
+++ b/gobblin-metrics-libs/gobblin-metrics-base/src/test/java/org/apache/gobblin/metrics/reporter/FileFailureEventReporterTest.java
@@ -19,9 +19,6 @@ package org.apache.gobblin.metrics.reporter;
 
 import java.io.IOException;
 
-import org.apache.gobblin.metrics.GobblinTrackingEvent;
-import org.apache.gobblin.metrics.MetricContext;
-import org.apache.gobblin.metrics.event.FailureEventBuilder;
 import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
@@ -29,7 +26,10 @@ import org.testng.annotations.Test;
 
 import com.google.common.collect.Maps;
 
-import static org.mockito.Matchers.any;
+import org.apache.gobblin.metrics.GobblinTrackingEvent;
+import org.apache.gobblin.metrics.MetricContext;
+import org.apache.gobblin.metrics.event.FailureEventBuilder;
+
 import static org.mockito.Mockito.*;
 
 
diff --git a/gobblin-modules/gobblin-azkaban/build.gradle b/gobblin-modules/gobblin-azkaban/build.gradle
index 5acc034f2..cb4ab7695 100644
--- a/gobblin-modules/gobblin-azkaban/build.gradle
+++ b/gobblin-modules/gobblin-azkaban/build.gradle
@@ -44,7 +44,6 @@ dependencies {
   compile externalDependency.findBugsAnnotations
 
   testCompile externalDependency.mockito
-  testCompile externalDependency.powermock
 }
 
 test {
diff --git a/gobblin-modules/gobblin-compliance/src/test/java/org/apache/gobblin/compliance/purger/HivePurgerConverterTest.java b/gobblin-modules/gobblin-compliance/src/test/java/org/apache/gobblin/compliance/purger/HivePurgerConverterTest.java
index eeae319ff..a74f3e286 100644
--- a/gobblin-modules/gobblin-compliance/src/test/java/org/apache/gobblin/compliance/purger/HivePurgerConverterTest.java
+++ b/gobblin-modules/gobblin-compliance/src/test/java/org/apache/gobblin/compliance/purger/HivePurgerConverterTest.java
@@ -23,6 +23,8 @@ import org.testng.annotations.Test;
 
 import org.apache.gobblin.configuration.WorkUnitState;
 
+import static org.mockito.Mockito.anyList;
+
 
 @Test
 public class HivePurgerConverterTest {
@@ -44,6 +46,6 @@ public class HivePurgerConverterTest {
 
   public void convertRecordTest() {
     this.hivePurgerConverterMock.convertRecord(this.schemaMock, this.datasetMock, this.stateMock);
-    Mockito.verify(this.datasetMock).setPurgeQueries(Mockito.anyListOf(String.class));
+    Mockito.verify(this.datasetMock).setPurgeQueries(anyList());
   }
 }
diff --git a/gobblin-modules/gobblin-eventhub/src/test/java/org/apache/gobblin/eventhub/writer/BatchedEventhubDataWriterTest.java b/gobblin-modules/gobblin-eventhub/src/test/java/org/apache/gobblin/eventhub/writer/BatchedEventhubDataWriterTest.java
index 7c333794b..c26681549 100644
--- a/gobblin-modules/gobblin-eventhub/src/test/java/org/apache/gobblin/eventhub/writer/BatchedEventhubDataWriterTest.java
+++ b/gobblin-modules/gobblin-eventhub/src/test/java/org/apache/gobblin/eventhub/writer/BatchedEventhubDataWriterTest.java
@@ -23,7 +23,6 @@ import java.util.List;
 import java.util.Properties;
 import java.util.concurrent.Future;
 
-import org.apache.gobblin.writer.*;
 import org.apache.http.StatusLine;
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.http.client.methods.HttpPost;
@@ -32,7 +31,9 @@ import org.mockito.Mockito;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
-import static org.mockito.Matchers.isA;
+import org.apache.gobblin.writer.WriteCallback;
+import org.apache.gobblin.writer.WriteResponse;
+
 import static org.mockito.Mockito.*;
 
 
diff --git a/gobblin-modules/gobblin-eventhub/src/test/java/org/apache/gobblin/eventhub/writer/EventhubDataWriterTest.java b/gobblin-modules/gobblin-eventhub/src/test/java/org/apache/gobblin/eventhub/writer/EventhubDataWriterTest.java
index c01b6dc15..db860e7b7 100644
--- a/gobblin-modules/gobblin-eventhub/src/test/java/org/apache/gobblin/eventhub/writer/EventhubDataWriterTest.java
+++ b/gobblin-modules/gobblin-eventhub/src/test/java/org/apache/gobblin/eventhub/writer/EventhubDataWriterTest.java
@@ -31,12 +31,10 @@ import org.mockito.Mockito;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
-
 import org.apache.gobblin.writer.Batch;
 import org.apache.gobblin.writer.WriteCallback;
 import org.apache.gobblin.writer.WriteResponse;
 
-import static org.mockito.Matchers.isA;
 import static org.mockito.Mockito.*;
 
 
diff --git a/gobblin-modules/gobblin-kafka-08/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/KafkaDeserializerExtractorTest.java b/gobblin-modules/gobblin-kafka-08/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/KafkaDeserializerExtractorTest.java
index 06b06e04a..cacba960a 100644
--- a/gobblin-modules/gobblin-kafka-08/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/KafkaDeserializerExtractorTest.java
+++ b/gobblin-modules/gobblin-kafka-08/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/KafkaDeserializerExtractorTest.java
@@ -59,11 +59,7 @@ import org.apache.gobblin.source.extractor.extract.kafka.KafkaDeserializerExtrac
 import org.apache.gobblin.source.workunit.WorkUnit;
 import org.apache.gobblin.util.PropertiesUtils;
 
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
+import static org.mockito.Mockito.*;
 
 
 @Test(groups = { "gobblin.source.extractor.extract.kafka" })
@@ -309,4 +305,4 @@ public class KafkaDeserializerExtractorTest {
 
     private String value;
   }
-}
\ No newline at end of file
+}
diff --git a/gobblin-modules/gobblin-kafka-09/src/test/java/org/apache/gobblin/kafka/source/extractor/extract/kafka/KafkaSimpleStreamingTest.java b/gobblin-modules/gobblin-kafka-09/src/test/java/org/apache/gobblin/kafka/source/extractor/extract/kafka/KafkaSimpleStreamingTest.java
index b3fceac55..9f1025ef0 100644
--- a/gobblin-modules/gobblin-kafka-09/src/test/java/org/apache/gobblin/kafka/source/extractor/extract/kafka/KafkaSimpleStreamingTest.java
+++ b/gobblin-modules/gobblin-kafka-09/src/test/java/org/apache/gobblin/kafka/source/extractor/extract/kafka/KafkaSimpleStreamingTest.java
@@ -43,14 +43,14 @@ import org.apache.gobblin.configuration.WorkUnitState;
 import org.apache.gobblin.kafka.KafkaTestBase;
 import org.apache.gobblin.source.extractor.CheckpointableWatermark;
 import org.apache.gobblin.source.extractor.DataRecordException;
-import org.apache.gobblin.stream.RecordEnvelope;
 import org.apache.gobblin.source.extractor.extract.LongWatermark;
 import org.apache.gobblin.source.extractor.extract.kafka.KafkaSimpleStreamingExtractor;
 import org.apache.gobblin.source.extractor.extract.kafka.KafkaSimpleStreamingSource;
 import org.apache.gobblin.source.workunit.WorkUnit;
+import org.apache.gobblin.stream.RecordEnvelope;
 import org.apache.gobblin.writer.WatermarkStorage;
 
-import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
diff --git a/gobblin-modules/gobblin-kafka-09/src/test/java/org/apache/gobblin/kafka/writer/Kafka09DataWriterTest.java b/gobblin-modules/gobblin-kafka-09/src/test/java/org/apache/gobblin/kafka/writer/Kafka09DataWriterTest.java
index a6e986a8a..8afa50332 100644
--- a/gobblin-modules/gobblin-kafka-09/src/test/java/org/apache/gobblin/kafka/writer/Kafka09DataWriterTest.java
+++ b/gobblin-modules/gobblin-kafka-09/src/test/java/org/apache/gobblin/kafka/writer/Kafka09DataWriterTest.java
@@ -36,18 +36,13 @@ import org.apache.gobblin.kafka.KafkaTestBase;
 import org.apache.gobblin.kafka.schemareg.ConfigDrivenMd5SchemaRegistry;
 import org.apache.gobblin.kafka.schemareg.KafkaSchemaRegistryConfigurationKeys;
 import org.apache.gobblin.kafka.schemareg.SchemaRegistryException;
-//import org.apache.gobblin.kafka.serialize.LiAvroDeserializer;
 import org.apache.gobblin.kafka.serialize.LiAvroDeserializer;
 import org.apache.gobblin.kafka.serialize.LiAvroSerializer;
 import org.apache.gobblin.test.TestUtils;
 import org.apache.gobblin.writer.WriteCallback;
 import org.apache.gobblin.writer.WriteResponse;
 
-import static org.mockito.Matchers.isA;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.*;
 
 
 @Slf4j
diff --git a/gobblin-modules/gobblin-kafka-1/src/test/java/org/apache/gobblin/kafka/writer/Kafka1DataWriterTest.java b/gobblin-modules/gobblin-kafka-1/src/test/java/org/apache/gobblin/kafka/writer/Kafka1DataWriterTest.java
index bd0ddfbee..b7f3de49d 100644
--- a/gobblin-modules/gobblin-kafka-1/src/test/java/org/apache/gobblin/kafka/writer/Kafka1DataWriterTest.java
+++ b/gobblin-modules/gobblin-kafka-1/src/test/java/org/apache/gobblin/kafka/writer/Kafka1DataWriterTest.java
@@ -17,9 +17,21 @@
 
 package org.apache.gobblin.kafka.writer;
 
+import java.io.IOException;
+import java.lang.management.ManagementFactory;
+import java.util.Properties;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.Future;
+
+import org.apache.avro.generic.GenericRecord;
+import org.testng.Assert;
+import org.testng.annotations.AfterSuite;
+import org.testng.annotations.BeforeSuite;
+import org.testng.annotations.Test;
+
 import kafka.message.MessageAndMetadata;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.avro.generic.GenericRecord;
+
 import org.apache.gobblin.kafka.KafkaTestBase;
 import org.apache.gobblin.kafka.schemareg.ConfigDrivenMd5SchemaRegistry;
 import org.apache.gobblin.kafka.schemareg.KafkaSchemaRegistryConfigurationKeys;
@@ -30,18 +42,7 @@ import org.apache.gobblin.kafka.serialize.SerializationException;
 import org.apache.gobblin.test.TestUtils;
 import org.apache.gobblin.writer.WriteCallback;
 import org.apache.gobblin.writer.WriteResponse;
-import org.testng.Assert;
-import org.testng.annotations.AfterSuite;
-import org.testng.annotations.BeforeSuite;
-import org.testng.annotations.Test;
-
-import java.io.IOException;
-import java.lang.management.ManagementFactory;
-import java.util.Properties;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.Future;
 
-import static org.mockito.Matchers.isA;
 import static org.mockito.Mockito.*;
 
 
diff --git a/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/converter/EnvelopePayloadConverterTest.java b/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/converter/EnvelopePayloadConverterTest.java
index 561dfa030..05e49a8cf 100644
--- a/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/converter/EnvelopePayloadConverterTest.java
+++ b/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/converter/EnvelopePayloadConverterTest.java
@@ -28,16 +28,17 @@ import org.apache.avro.file.DataFileReader;
 import org.apache.avro.generic.GenericDatumReader;
 import org.apache.avro.generic.GenericRecord;
 import org.apache.commons.io.FileUtils;
-import org.apache.gobblin.configuration.WorkUnitState;
-import org.apache.gobblin.metrics.kafka.KafkaAvroSchemaRegistryFactory;
-import org.apache.gobblin.metrics.kafka.KafkaSchemaRegistry;
-import org.apache.gobblin.metrics.kafka.SchemaRegistryException;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
 import com.google.common.collect.Iterables;
 
-import static org.mockito.Matchers.any;
+import org.apache.gobblin.configuration.WorkUnitState;
+import org.apache.gobblin.metrics.kafka.KafkaAvroSchemaRegistryFactory;
+import org.apache.gobblin.metrics.kafka.KafkaSchemaRegistry;
+import org.apache.gobblin.metrics.kafka.SchemaRegistryException;
+
+import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
diff --git a/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/converter/EnvelopePayloadExtractingConverterTest.java b/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/converter/EnvelopePayloadExtractingConverterTest.java
index 1aa517e21..57c10568f 100644
--- a/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/converter/EnvelopePayloadExtractingConverterTest.java
+++ b/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/converter/EnvelopePayloadExtractingConverterTest.java
@@ -22,20 +22,21 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Properties;
 
+import org.apache.avro.Schema;
 import org.apache.avro.file.DataFileReader;
 import org.apache.avro.generic.GenericDatumReader;
-import org.apache.commons.io.FileUtils;
-import org.apache.gobblin.configuration.WorkUnitState;
-import org.apache.gobblin.metrics.kafka.KafkaAvroSchemaRegistryFactory;
-import org.apache.gobblin.metrics.kafka.KafkaSchemaRegistry;
-import org.apache.avro.Schema;
 import org.apache.avro.generic.GenericRecord;
+import org.apache.commons.io.FileUtils;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
 import com.google.common.collect.Iterables;
 
-import static org.mockito.Matchers.any;
+import org.apache.gobblin.configuration.WorkUnitState;
+import org.apache.gobblin.metrics.kafka.KafkaAvroSchemaRegistryFactory;
+import org.apache.gobblin.metrics.kafka.KafkaSchemaRegistry;
+
+import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
diff --git a/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/ConfigStoreUtilsTest.java b/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/ConfigStoreUtilsTest.java
index d4d523298..aa1d6e5f3 100644
--- a/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/ConfigStoreUtilsTest.java
+++ b/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/ConfigStoreUtilsTest.java
@@ -45,7 +45,7 @@ import static org.apache.gobblin.source.extractor.extract.kafka.ConfigStoreUtils
 import static org.apache.gobblin.source.extractor.extract.kafka.ConfigStoreUtils.GOBBLIN_CONFIG_FILTER;
 import static org.apache.gobblin.source.extractor.extract.kafka.ConfigStoreUtils.GOBBLIN_CONFIG_TAGS_BLACKLIST;
 import static org.apache.gobblin.source.extractor.extract.kafka.ConfigStoreUtils.GOBBLIN_CONFIG_TAGS_WHITELIST;
-import static org.mockito.Matchers.anyList;
+import static org.mockito.Mockito.anyList;
 
 
 /**
@@ -158,4 +158,4 @@ public class ConfigStoreUtilsTest {
       throws URISyntaxException {
     return new URI("simple-file", "", configDir, null, null);
   }
-}
\ No newline at end of file
+}
diff --git a/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/ZipConfigStoreUtilsTest.java b/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/ZipConfigStoreUtilsTest.java
index 3a9e35077..002bed3e3 100644
--- a/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/ZipConfigStoreUtilsTest.java
+++ b/gobblin-modules/gobblin-kafka-common/src/test/java/org/apache/gobblin/source/extractor/extract/kafka/ZipConfigStoreUtilsTest.java
@@ -26,12 +26,6 @@ import java.util.List;
 import java.util.Properties;
 import java.util.stream.Collectors;
 
-import org.apache.gobblin.config.client.ConfigClient;
-import org.apache.gobblin.config.client.api.VersionStabilityPolicy;
-import org.apache.gobblin.config.store.api.ConfigStoreCreationException;
-import org.apache.gobblin.config.store.zip.SimpleLocalIvyConfigStoreFactory;
-import org.apache.gobblin.config.store.zip.ZipFileConfigStore;
-import org.apache.gobblin.kafka.client.GobblinKafkaConsumerClient;
 import org.mockito.Mockito;
 import org.testng.Assert;
 import org.testng.annotations.BeforeClass;
@@ -42,13 +36,20 @@ import com.google.common.collect.ImmutableList;
 import com.google.common.collect.Lists;
 import com.typesafe.config.Config;
 
+import org.apache.gobblin.config.client.ConfigClient;
+import org.apache.gobblin.config.client.api.VersionStabilityPolicy;
+import org.apache.gobblin.config.store.api.ConfigStoreCreationException;
+import org.apache.gobblin.config.store.zip.SimpleLocalIvyConfigStoreFactory;
+import org.apache.gobblin.config.store.zip.ZipFileConfigStore;
+import org.apache.gobblin.kafka.client.GobblinKafkaConsumerClient;
+
 import static org.apache.gobblin.configuration.ConfigurationKeys.CONFIG_MANAGEMENT_STORE_ENABLED;
 import static org.apache.gobblin.configuration.ConfigurationKeys.CONFIG_MANAGEMENT_STORE_URI;
 import static org.apache.gobblin.source.extractor.extract.kafka.ConfigStoreUtils.GOBBLIN_CONFIG_COMMONPATH;
 import static org.apache.gobblin.source.extractor.extract.kafka.ConfigStoreUtils.GOBBLIN_CONFIG_FILTER;
 import static org.apache.gobblin.source.extractor.extract.kafka.ConfigStoreUtils.GOBBLIN_CONFIG_TAGS_BLACKLIST;
 import static org.apache.gobblin.source.extractor.extract.kafka.ConfigStoreUtils.GOBBLIN_CONFIG_TAGS_WHITELIST;
-import static org.mockito.Matchers.anyList;
+import static org.mockito.Mockito.anyList;
 
 
 /**
diff --git a/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/JdbcWriterInitializerTest.java b/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/JdbcWriterInitializerTest.java
index 65712c3e7..9466832b6 100644
--- a/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/JdbcWriterInitializerTest.java
+++ b/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/JdbcWriterInitializerTest.java
@@ -142,7 +142,7 @@ public class JdbcWriterInitializerTest {
     DatabaseMetaData metadata = mock(DatabaseMetaData.class);
     when(this.conn.getMetaData()).thenReturn(metadata);
     ResultSet rs = mock(ResultSet.class);
-    when(metadata.getTables(anyString(), anyString(), anyString(), any(String[].class))).thenReturn(rs);
+    when(metadata.getTables(any(), anyString(), anyString(), any(String[].class))).thenReturn(rs);
     when(rs.next()).thenReturn(Boolean.FALSE);
 
     this.initializer.initialize();
diff --git a/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/JdbcWriterTest.java b/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/JdbcWriterTest.java
index 2dbee129c..fb2d40bb4 100644
--- a/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/JdbcWriterTest.java
+++ b/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/JdbcWriterTest.java
@@ -25,7 +25,6 @@ import org.testng.Assert;
 import org.testng.annotations.Test;
 
 import org.apache.gobblin.configuration.State;
-import org.apache.gobblin.converter.jdbc.JdbcEntryData;
 import org.apache.gobblin.writer.commands.JdbcWriterCommands;
 
 import static org.mockito.Mockito.*;
@@ -49,7 +48,7 @@ public class JdbcWriterTest {
       Assert.assertEquals(writer.recordsWritten(), writeCount);
     }
 
-    verify(writerCommands, times(writeCount)).insert(anyString(), anyString(), any(JdbcEntryData.class));
+    verify(writerCommands, times(writeCount)).insert(anyString(), anyString(), any());
     verify(conn, times(1)).commit();
     verify(conn, never()).rollback();
     verify(writerCommands, times(1)).flush();
@@ -62,7 +61,7 @@ public class JdbcWriterTest {
     final String table = "users";
     JdbcWriterCommands writerCommands = mock(JdbcWriterCommands.class);
     Connection conn = mock(Connection.class);
-    doThrow(RuntimeException.class).when(writerCommands).insert(anyString(), anyString(), any(JdbcEntryData.class));
+    doThrow(RuntimeException.class).when(writerCommands).insert(anyString(), anyString(), any());
     JdbcWriter writer = new JdbcWriter(writerCommands, new State(), database, table, conn);
 
     try {
@@ -73,7 +72,7 @@ public class JdbcWriterTest {
     }
     writer.close();
 
-    verify(writerCommands, times(1)).insert(anyString(), anyString(), any(JdbcEntryData.class));
+    verify(writerCommands, times(1)).insert(anyString(), anyString(), any());
     verify(conn, times(1)).rollback();
     verify(conn, never()).commit();
     verify(conn, times(1)).close();
diff --git a/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/MySqlBufferedInserterTest.java b/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/MySqlBufferedInserterTest.java
index 55a5fe12d..d1531aa0d 100644
--- a/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/MySqlBufferedInserterTest.java
+++ b/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/MySqlBufferedInserterTest.java
@@ -31,12 +31,9 @@ import org.apache.gobblin.writer.commands.MySqlBufferedInserter;
 
 import static org.apache.gobblin.writer.commands.JdbcBufferedInserter.WRITER_JDBC_INSERT_BATCH_SIZE;
 import static org.apache.gobblin.writer.commands.JdbcBufferedInserter.WRITER_JDBC_MAX_PARAM_SIZE;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.anyObject;
-import static org.mockito.Matchers.anyString;
-import static org.mockito.Matchers.matches;
 import static org.mockito.Mockito.*;
 
+
 @Test(groups = {"gobblin.writer"}, singleThreaded=true)
 public class MySqlBufferedInserterTest extends JdbcBufferedInserterTestBase {
 
@@ -63,7 +60,7 @@ public class MySqlBufferedInserterTest extends JdbcBufferedInserterTestBase {
     verify(conn, times(2)).prepareStatement(matches("INSERT INTO .*"));
     verify(pstmt, times(11)).clearParameters();
     verify(pstmt, times(11)).execute();
-    verify(pstmt, times(colNums * entryCount)).setObject(anyInt(), anyObject());
+    verify(pstmt, times(colNums * entryCount)).setObject(anyInt(), any());
     reset(pstmt);
   }
 
@@ -90,7 +87,7 @@ public class MySqlBufferedInserterTest extends JdbcBufferedInserterTestBase {
     verify(conn, times(2)).prepareStatement(matches("REPLACE INTO .*"));
     verify(pstmt, times(11)).clearParameters();
     verify(pstmt, times(11)).execute();
-    verify(pstmt, times(colNums * entryCount)).setObject(anyInt(), anyObject());
+    verify(pstmt, times(colNums * entryCount)).setObject(anyInt(), any());
     reset(pstmt);
   }
 
@@ -121,7 +118,7 @@ public class MySqlBufferedInserterTest extends JdbcBufferedInserterTestBase {
     verify(conn, times(2)).prepareStatement(matches("INSERT INTO .*"));
     verify(pstmt, times(expectedExecuteCount)).clearParameters();
     verify(pstmt, times(expectedExecuteCount)).execute();
-    verify(pstmt, times(colNums * entryCount)).setObject(anyInt(), anyObject());
+    verify(pstmt, times(colNums * entryCount)).setObject(anyInt(), any());
     reset(pstmt);
   }
 
diff --git a/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/TeradataBufferedInserterTest.java b/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/TeradataBufferedInserterTest.java
index c67d1211c..8b93db519 100644
--- a/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/TeradataBufferedInserterTest.java
+++ b/gobblin-modules/gobblin-sql/src/test/java/org/apache/gobblin/writer/TeradataBufferedInserterTest.java
@@ -17,15 +17,6 @@
 
 package org.apache.gobblin.writer;
 
-import static org.apache.gobblin.writer.commands.JdbcBufferedInserter.WRITER_JDBC_INSERT_BATCH_SIZE;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.anyObject;
-import static org.mockito.Matchers.anyString;
-import static org.mockito.Mockito.reset;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
 import java.sql.Connection;
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
@@ -41,6 +32,9 @@ import org.apache.gobblin.converter.jdbc.JdbcEntryData;
 import org.apache.gobblin.writer.commands.JdbcBufferedInserter;
 import org.apache.gobblin.writer.commands.TeradataBufferedInserter;
 
+import static org.apache.gobblin.writer.commands.JdbcBufferedInserter.WRITER_JDBC_INSERT_BATCH_SIZE;
+import static org.mockito.Mockito.*;
+
 
 @Test(groups = { "gobblin.writer" }, singleThreaded = true)
 public class TeradataBufferedInserterTest extends JdbcBufferedInserterTestBase {
@@ -75,7 +69,7 @@ public class TeradataBufferedInserterTest extends JdbcBufferedInserterTestBase {
     verify(pstmt, times(107)).addBatch();
     verify(pstmt, times((int) Math.ceil((double) entryCount / batchSize))).executeBatch();
     verify(pstmt, times(entryCount)).clearParameters();
-    verify(pstmt, times(colNums * entryCount)).setObject(anyInt(), anyObject());
+    verify(pstmt, times(colNums * entryCount)).setObject(anyInt(), any());
     reset(pstmt);
   }
 
diff --git a/gobblin-modules/gobblin-troubleshooter/src/test/java/org/apache/gobblin/troubleshooter/AutomaticTroubleshooterTest.java b/gobblin-modules/gobblin-troubleshooter/src/test/java/org/apache/gobblin/troubleshooter/AutomaticTroubleshooterTest.java
index f901094ff..331d253b5 100644
--- a/gobblin-modules/gobblin-troubleshooter/src/test/java/org/apache/gobblin/troubleshooter/AutomaticTroubleshooterTest.java
+++ b/gobblin-modules/gobblin-troubleshooter/src/test/java/org/apache/gobblin/troubleshooter/AutomaticTroubleshooterTest.java
@@ -30,11 +30,7 @@ import org.apache.gobblin.runtime.troubleshooter.AutomaticTroubleshooter;
 import org.apache.gobblin.runtime.troubleshooter.AutomaticTroubleshooterFactory;
 import org.apache.gobblin.util.ConfigUtils;
 
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.*;
 import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertTrue;
 
@@ -118,4 +114,4 @@ public class AutomaticTroubleshooterTest {
       troubleshooter.stop();
     }
   }
-}
\ No newline at end of file
+}
diff --git a/gobblin-modules/google-ingestion/src/test/java/org/apache/gobblin/ingestion/google/webmaster/GoogleWebmasterDataFetcherImplTest.java b/gobblin-modules/google-ingestion/src/test/java/org/apache/gobblin/ingestion/google/webmaster/GoogleWebmasterDataFetcherImplTest.java
index 1e2d5eb9e..3fa9591fc 100644
--- a/gobblin-modules/google-ingestion/src/test/java/org/apache/gobblin/ingestion/google/webmaster/GoogleWebmasterDataFetcherImplTest.java
+++ b/gobblin-modules/google-ingestion/src/test/java/org/apache/gobblin/ingestion/google/webmaster/GoogleWebmasterDataFetcherImplTest.java
@@ -27,7 +27,7 @@ import org.mockito.Mockito;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
-import static org.mockito.Matchers.*;
+import static org.mockito.Mockito.*;
 
 
 @Test(groups = {"gobblin.source.extractor.extract.google.webmaster"})
@@ -40,7 +40,7 @@ public class GoogleWebmasterDataFetcherImplTest {
     GoogleWebmasterClient client = Mockito.mock(GoogleWebmasterClient.class);
     List<String> retVal = Arrays.asList("abc", "def");
 
-    Mockito.when(client.getPages(eq(_property), any(String.class), any(String.class), eq("ALL"), any(Integer.class),
+    Mockito.when(client.getPages(eq(_property), any(), any(), eq("ALL"), any(Integer.class),
         any(List.class), any(List.class), eq(0))).thenReturn(retVal);
 
     WorkUnitState workUnitState = new WorkUnitState();
@@ -56,7 +56,7 @@ public class GoogleWebmasterDataFetcherImplTest {
 
     Assert.assertTrue(CollectionUtils.isEqualCollection(retVal, pageStrings));
     Mockito.verify(client, Mockito.times(1))
-        .getPages(eq(_property), any(String.class), any(String.class), eq("ALL"), any(Integer.class), any(List.class),
+        .getPages(eq(_property), any(), any(), eq("ALL"), any(Integer.class), any(List.class),
             any(List.class), eq(0));
   }
 
@@ -67,7 +67,7 @@ public class GoogleWebmasterDataFetcherImplTest {
     for (int i = 0; i < 10; ++i) {
       allPages.add(Integer.toString(i));
     }
-    Mockito.when(client.getPages(eq(_property), any(String.class), any(String.class), eq("ALL"), any(Integer.class),
+    Mockito.when(client.getPages(eq(_property), any(), any(), eq("ALL"), any(Integer.class),
         any(List.class), any(List.class), eq(0))).thenReturn(allPages);
 
     WorkUnitState workUnitState = new WorkUnitState();
@@ -83,7 +83,7 @@ public class GoogleWebmasterDataFetcherImplTest {
 
     Assert.assertTrue(CollectionUtils.isEqualCollection(pageStrings, allPages));
     Mockito.verify(client, Mockito.times(2))
-        .getPages(eq(_property), any(String.class), any(String.class), eq("ALL"), any(Integer.class), any(List.class),
+        .getPages(eq(_property), any(), any(), eq("ALL"), any(Integer.class), any(List.class),
             any(List.class), eq(0));
   }
 
@@ -99,16 +99,16 @@ public class GoogleWebmasterDataFetcherImplTest {
     }
 
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(0))).thenReturn(list5000);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(0))).thenReturn(list5000);
     GoogleWebmasterDataFetcherImpl dataFetcher = new GoogleWebmasterDataFetcherImpl(_property, client, workUnitState);
     Assert.assertEquals(dataFetcher.getPagesSize("start_date", "end_date", "country", null, null), 5000);
 
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(5000))).thenReturn(list5000);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(5000))).thenReturn(list5000);
     Assert.assertEquals(dataFetcher.getPagesSize("start_date", "end_date", "country", null, null), 10000);
 
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(10000))).thenReturn(list5000);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(10000))).thenReturn(list5000);
     Assert.assertEquals(dataFetcher.getPagesSize("start_date", "end_date", "country", null, null), 15000);
   }
 
@@ -124,7 +124,7 @@ public class GoogleWebmasterDataFetcherImplTest {
     }
 
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(0))).thenReturn(list2);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(0))).thenReturn(list2);
     GoogleWebmasterDataFetcherImpl dataFetcher = new GoogleWebmasterDataFetcherImpl(_property, client, workUnitState);
     int size = dataFetcher.getPagesSize("start_date", "end_date", "country", null, null);
     Assert.assertEquals(size, 2);
@@ -142,27 +142,27 @@ public class GoogleWebmasterDataFetcherImplTest {
     }
 
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(0))).thenReturn(list5000);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(0))).thenReturn(list5000);
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(5000))).thenReturn(list5000);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(5000))).thenReturn(list5000);
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(10000))).thenReturn(list5000);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(10000))).thenReturn(list5000);
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(15000))).thenReturn(list5000);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(15000))).thenReturn(list5000);
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(20000))).thenReturn(list5000);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(20000))).thenReturn(list5000);
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(25000))).thenReturn(list5000);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(25000))).thenReturn(list5000);
 
     List<String> list2 = new ArrayList<>();
     for (int i = 0; i < 2; ++i) {
       list2.add(null);
     }
     Mockito.when(client.getPages(any(String.class), any(String.class), any(String.class), any(String.class),
-        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(List.class), any(List.class), eq(30000))).thenReturn(list2);
+        eq(GoogleWebmasterClient.API_ROW_LIMIT), any(), any(), eq(30000))).thenReturn(list2);
 
     GoogleWebmasterDataFetcherImpl dataFetcher = new GoogleWebmasterDataFetcherImpl(_property, client, workUnitState);
     int size = dataFetcher.getPagesSize("start_date", "end_date", "country", null, null);
     Assert.assertEquals(size, 30002);
   }
-}
\ No newline at end of file
+}
diff --git a/gobblin-modules/google-ingestion/src/test/java/org/apache/gobblin/ingestion/google/webmaster/GoogleWebmasterExtractorIteratorTest.java b/gobblin-modules/google-ingestion/src/test/java/org/apache/gobblin/ingestion/google/webmaster/GoogleWebmasterExtractorIteratorTest.java
index 834a91ac7..35dd49858 100644
--- a/gobblin-modules/google-ingestion/src/test/java/org/apache/gobblin/ingestion/google/webmaster/GoogleWebmasterExtractorIteratorTest.java
+++ b/gobblin-modules/google-ingestion/src/test/java/org/apache/gobblin/ingestion/google/webmaster/GoogleWebmasterExtractorIteratorTest.java
@@ -35,11 +35,11 @@ import com.google.api.services.webmasters.model.ApiDimensionFilter;
 
 import org.apache.gobblin.configuration.WorkUnitState;
 
-import static org.mockito.Matchers.argThat;
-import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.argThat;
+import static org.mockito.Mockito.eq;
 
 
-class CollectionEquals extends ArgumentMatcher<Collection> {
+class CollectionEquals implements ArgumentMatcher<Collection> {
 
   private final Collection _expected;
 
@@ -48,8 +48,8 @@ class CollectionEquals extends ArgumentMatcher<Collection> {
   }
 
   @Override
-  public boolean matches(Object actual) {
-    return CollectionUtils.isEqualCollection((Collection) actual, _expected);
+  public boolean matches(Collection actual) {
+    return CollectionUtils.isEqualCollection(actual, _expected);
   }
 }
 
diff --git a/gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-client/src/test/java/org/apache/gobblin/service/FlowConfigTest.java b/gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-client/src/test/java/org/apache/gobblin/service/FlowConfigTest.java
index c2eee206c..9cd040f44 100644
--- a/gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-client/src/test/java/org/apache/gobblin/service/FlowConfigTest.java
+++ b/gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-client/src/test/java/org/apache/gobblin/service/FlowConfigTest.java
@@ -22,8 +22,6 @@ import java.util.ArrayList;
 import java.util.Map;
 
 import org.apache.commons.io.FileUtils;
-import org.apache.gobblin.runtime.api.SpecCatalogListener;
-import org.apache.gobblin.runtime.spec_catalog.AddSpecResponse;
 import org.testng.Assert;
 import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
@@ -47,11 +45,14 @@ import com.typesafe.config.Config;
 import org.apache.gobblin.config.ConfigBuilder;
 import org.apache.gobblin.configuration.ConfigurationKeys;
 import org.apache.gobblin.restli.EmbeddedRestliServer;
+import org.apache.gobblin.runtime.api.SpecCatalogListener;
+import org.apache.gobblin.runtime.spec_catalog.AddSpecResponse;
 import org.apache.gobblin.runtime.spec_catalog.FlowCatalog;
 import org.apache.gobblin.runtime.spec_store.FSSpecStore;
 
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 
 
 @Test(groups = { "gobblin.service" }, singleThreaded = true)
diff --git a/gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-client/src/test/java/org/apache/gobblin/service/FlowConfigV2Test.java b/gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-client/src/test/java/org/apache/gobblin/service/FlowConfigV2Test.java
index fa4ad1153..bc16e3bad 100644
--- a/gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-client/src/test/java/org/apache/gobblin/service/FlowConfigV2Test.java
+++ b/gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-client/src/test/java/org/apache/gobblin/service/FlowConfigV2Test.java
@@ -23,8 +23,6 @@ import java.util.Map;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
-import org.apache.gobblin.runtime.api.SpecCatalogListener;
-import org.apache.gobblin.runtime.spec_catalog.AddSpecResponse;
 import org.mortbay.jetty.HttpStatus;
 import org.testng.Assert;
 import org.testng.annotations.AfterClass;
@@ -54,11 +52,14 @@ import lombok.Setter;
 import org.apache.gobblin.config.ConfigBuilder;
 import org.apache.gobblin.configuration.ConfigurationKeys;
 import org.apache.gobblin.restli.EmbeddedRestliServer;
+import org.apache.gobblin.runtime.api.SpecCatalogListener;
+import org.apache.gobblin.runtime.spec_catalog.AddSpecResponse;
 import org.apache.gobblin.runtime.spec_catalog.FlowCatalog;
 import org.apache.gobblin.runtime.spec_store.FSSpecStore;
 
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 
 
 @Test(groups = { "gobblin.service" }, singleThreaded = true)
diff --git a/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/spec_executorInstance/MockedSpecExecutor.java b/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/spec_executorInstance/MockedSpecExecutor.java
index 5cfc53b44..7c44b9833 100644
--- a/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/spec_executorInstance/MockedSpecExecutor.java
+++ b/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/spec_executorInstance/MockedSpecExecutor.java
@@ -32,7 +32,7 @@ import org.apache.gobblin.runtime.api.SpecExecutor;
 import org.apache.gobblin.runtime.api.SpecProducer;
 import org.apache.gobblin.util.CompletedFuture;
 
-import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.when;
 
 
diff --git a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TaskContinuousTest.java b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TaskContinuousTest.java
index 046df9b30..435d7cd98 100644
--- a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TaskContinuousTest.java
+++ b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TaskContinuousTest.java
@@ -30,8 +30,6 @@ import java.util.concurrent.ScheduledThreadPoolExecutor;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicReference;
 
-import org.apache.gobblin.runtime.util.TaskMetrics;
-import org.apache.gobblin.util.TestUtils;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.testng.Assert;
@@ -49,22 +47,23 @@ import org.apache.gobblin.configuration.WorkUnitState;
 import org.apache.gobblin.fork.IdentityForkOperator;
 import org.apache.gobblin.publisher.TaskPublisher;
 import org.apache.gobblin.qualitychecker.row.RowLevelPolicyChecker;
-import org.apache.gobblin.qualitychecker.task.TaskLevelPolicyCheckResults;
 import org.apache.gobblin.qualitychecker.task.TaskLevelPolicyChecker;
+import org.apache.gobblin.runtime.util.TaskMetrics;
 import org.apache.gobblin.source.extractor.CheckpointableWatermark;
 import org.apache.gobblin.source.extractor.DataRecordException;
 import org.apache.gobblin.source.extractor.DefaultCheckpointableWatermark;
 import org.apache.gobblin.source.extractor.Extractor;
-import org.apache.gobblin.stream.RecordEnvelope;
 import org.apache.gobblin.source.extractor.StreamingExtractor;
 import org.apache.gobblin.source.extractor.extract.LongWatermark;
+import org.apache.gobblin.stream.RecordEnvelope;
 import org.apache.gobblin.util.ExecutorsUtils;
+import org.apache.gobblin.util.TestUtils;
 import org.apache.gobblin.writer.DataWriter;
 import org.apache.gobblin.writer.WatermarkAwareWriter;
 import org.apache.gobblin.writer.WatermarkStorage;
 
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyInt;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.anyInt;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
@@ -273,7 +272,7 @@ public class TaskContinuousTest {
       // Create a mock TaskPublisher
       TaskPublisher mockTaskPublisher = mock(TaskPublisher.class);
       when(mockTaskPublisher.canPublish()).thenReturn(TaskPublisher.PublisherState.SUCCESS);
-      when(mockTaskContext.getTaskPublisher(any(TaskState.class), any(TaskLevelPolicyCheckResults.class))).thenReturn(mockTaskPublisher);
+      when(mockTaskContext.getTaskPublisher(any(TaskState.class), any())).thenReturn(mockTaskPublisher);
 
       // Create a mock TaskStateTracker
       TaskStateTracker mockTaskStateTracker = mock(TaskStateTracker.class);
@@ -360,7 +359,7 @@ public class TaskContinuousTest {
     when(mockTaskContext.getWatermarkStorage()).thenReturn(mockWatermarkStorage);
     when(mockTaskContext.getForkOperator()).thenReturn(new IdentityForkOperator());
     when(mockTaskContext.getTaskState()).thenReturn(taskState);
-    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any(TaskLevelPolicyCheckResults.class)))
+    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any()))
         .thenReturn(mockTaskPublisher);
     when(mockTaskContext.getRowLevelPolicyChecker()).thenReturn(mockRowLevelPolicyChecker);
     when(mockTaskContext.getRowLevelPolicyChecker(anyInt())).thenReturn(mockRowLevelPolicyChecker);
diff --git a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TaskTest.java b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TaskTest.java
index 8d91f8f42..2f8892a2c 100644
--- a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TaskTest.java
+++ b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TaskTest.java
@@ -52,7 +52,6 @@ import org.apache.gobblin.fork.IdentityForkOperator;
 import org.apache.gobblin.publisher.TaskPublisher;
 import org.apache.gobblin.qualitychecker.row.RowLevelPolicyCheckResults;
 import org.apache.gobblin.qualitychecker.row.RowLevelPolicyChecker;
-import org.apache.gobblin.qualitychecker.task.TaskLevelPolicyCheckResults;
 import org.apache.gobblin.qualitychecker.task.TaskLevelPolicyChecker;
 import org.apache.gobblin.runtime.util.TaskMetrics;
 import org.apache.gobblin.source.extractor.Extractor;
@@ -62,12 +61,7 @@ import org.apache.gobblin.testing.AssertWithBackoff;
 import org.apache.gobblin.writer.DataWriter;
 import org.apache.gobblin.writer.DataWriterBuilder;
 
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Mockito.doNothing;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.when;
+import static org.mockito.Mockito.*;
 
 
 /**
@@ -128,7 +122,7 @@ public class TaskTest {
     // Create a mock TaskPublisher
     TaskPublisher mockTaskPublisher = mock(TaskPublisher.class);
     when(mockTaskPublisher.canPublish()).thenReturn(TaskPublisher.PublisherState.SUCCESS);
-    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any(TaskLevelPolicyCheckResults.class)))
+    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any()))
         .thenReturn(mockTaskPublisher);
 
     // Create a mock TaskStateTracker
@@ -176,7 +170,7 @@ public class TaskTest {
     when(mockTaskContext.getRawSourceExtractor()).thenReturn(mockExtractor);
     when(mockTaskContext.getForkOperator()).thenReturn(mockForkOperator);
     when(mockTaskContext.getTaskState()).thenReturn(taskState);
-    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any(TaskLevelPolicyCheckResults.class)))
+    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any()))
         .thenReturn(mockTaskPublisher);
     when(mockTaskContext.getRowLevelPolicyChecker()).thenReturn(mockRowLevelPolicyChecker);
     when(mockTaskContext.getRowLevelPolicyChecker(anyInt())).thenReturn(mockRowLevelPolicyChecker);
diff --git a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TestRecordStream.java b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TestRecordStream.java
index abb8f8ec7..b418493b4 100644
--- a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TestRecordStream.java
+++ b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/TestRecordStream.java
@@ -34,6 +34,9 @@ import org.testng.annotations.Test;
 import com.google.common.base.Optional;
 import com.google.common.collect.Lists;
 
+import io.reactivex.Flowable;
+import lombok.AllArgsConstructor;
+
 import org.apache.gobblin.ack.Ackable;
 import org.apache.gobblin.ack.BasicAckableForTesting;
 import org.apache.gobblin.configuration.ConfigurationKeys;
@@ -45,7 +48,6 @@ import org.apache.gobblin.fork.IdentityForkOperator;
 import org.apache.gobblin.metadata.GlobalMetadata;
 import org.apache.gobblin.publisher.TaskPublisher;
 import org.apache.gobblin.qualitychecker.row.RowLevelPolicyChecker;
-import org.apache.gobblin.qualitychecker.task.TaskLevelPolicyCheckResults;
 import org.apache.gobblin.qualitychecker.task.TaskLevelPolicyChecker;
 import org.apache.gobblin.records.ControlMessageHandler;
 import org.apache.gobblin.records.FlushControlMessageHandler;
@@ -64,11 +66,7 @@ import org.apache.gobblin.stream.StreamEntity;
 import org.apache.gobblin.writer.DataWriter;
 import org.apache.gobblin.writer.DataWriterBuilder;
 
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyInt;
 import static org.mockito.Mockito.*;
-import io.reactivex.Flowable;
-import lombok.AllArgsConstructor;
 
 
 /**
@@ -280,7 +278,7 @@ public class TestRecordStream {
     // Create a mock TaskPublisher
     TaskPublisher mockTaskPublisher = mock(TaskPublisher.class);
     when(mockTaskPublisher.canPublish()).thenReturn(TaskPublisher.PublisherState.SUCCESS);
-    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any(TaskLevelPolicyCheckResults.class)))
+    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any()))
         .thenReturn(mockTaskPublisher);
 
     // Create a mock TaskStateTracker
@@ -341,7 +339,7 @@ public class TestRecordStream {
     // Create a mock TaskPublisher
     TaskPublisher mockTaskPublisher = mock(TaskPublisher.class);
     when(mockTaskPublisher.canPublish()).thenReturn(TaskPublisher.PublisherState.SUCCESS);
-    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any(TaskLevelPolicyCheckResults.class)))
+    when(mockTaskContext.getTaskPublisher(any(TaskState.class), any()))
         .thenReturn(mockTaskPublisher);
 
     // Create a mock TaskStateTracker
diff --git a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/api/TestJobExecutionState.java b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/api/TestJobExecutionState.java
index 99322e094..83e430a44 100644
--- a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/api/TestJobExecutionState.java
+++ b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/api/TestJobExecutionState.java
@@ -16,11 +16,6 @@
  */
 package org.apache.gobblin.runtime.api;
 
-import static org.apache.gobblin.configuration.ConfigurationKeys.JOB_NAME_KEY;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-
 import java.util.Properties;
 import java.util.concurrent.ThreadFactory;
 import java.util.concurrent.TimeoutException;
@@ -42,6 +37,11 @@ import org.apache.gobblin.runtime.std.JobExecutionUpdatable;
 import org.apache.gobblin.testing.AssertWithBackoff;
 import org.apache.gobblin.util.ExecutorsUtils;
 
+import static org.apache.gobblin.configuration.ConfigurationKeys.JOB_NAME_KEY;
+import static org.mockito.Mockito.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+
 /**
  * Unit tests for {@link JobExecutionState}
  */
diff --git a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/job_catalog/TestFSJobCatalog.java b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/job_catalog/TestFSJobCatalog.java
index 149d56ae0..a8af400e9 100644
--- a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/job_catalog/TestFSJobCatalog.java
+++ b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/job_catalog/TestFSJobCatalog.java
@@ -17,8 +17,6 @@
 
 package org.apache.gobblin.runtime.job_catalog;
 
-import org.apache.gobblin.config.ConfigBuilder;
-import org.apache.gobblin.runtime.job_spec.ResolvedJobSpec;
 import java.io.File;
 import java.io.PrintWriter;
 import java.net.URI;
@@ -31,15 +29,18 @@ import org.apache.hadoop.fs.Path;
 import org.mockito.Mockito;
 import org.mockito.invocation.InvocationOnMock;
 import org.mockito.stubbing.Answer;
+import org.testng.Assert;
 import org.testng.annotations.Test;
 
+import org.apache.gobblin.config.ConfigBuilder;
 import org.apache.gobblin.configuration.ConfigurationKeys;
 import org.apache.gobblin.runtime.api.JobCatalogListener;
 import org.apache.gobblin.runtime.api.JobSpec;
+import org.apache.gobblin.runtime.job_spec.ResolvedJobSpec;
 import org.apache.gobblin.util.ConfigUtils;
 import org.apache.gobblin.util.filesystem.PathAlterationObserver;
 
-import org.testng.Assert;
+import static org.mockito.Mockito.any;
 
 
 /**
@@ -83,7 +84,7 @@ public class TestFSJobCatalog {
         specs.put(spec.getUri(), spec);
         return null;
       }
-    }).when(l).onAddJob(Mockito.any(JobSpec.class));
+    }).when(l).onAddJob(any(JobSpec.class));
     Mockito.doAnswer(new Answer<Void>() {
       @Override
       public Void answer(InvocationOnMock invocation)
@@ -92,7 +93,7 @@ public class TestFSJobCatalog {
         specs.put(spec.getUri(), spec);
         return null;
       }
-    }).when(l).onUpdateJob(Mockito.any(JobSpec.class));
+    }).when(l).onUpdateJob(any(JobSpec.class));
 
     Mockito.doAnswer(new Answer<Void>() {
       @Override
@@ -102,7 +103,7 @@ public class TestFSJobCatalog {
         specs.remove(uri);
         return null;
       }
-    }).when(l).onDeleteJob(Mockito.any(URI.class), Mockito.anyString());
+    }).when(l).onDeleteJob(any(URI.class), any());
 
     JobSpec js1_1 = JobSpec.builder("test_job1").withVersion("1").build();
     JobSpec js1_2 = JobSpec.builder("test_job1").withVersion("2").build();
diff --git a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/std/TestFilteredJobLifecycleListener.java b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/std/TestFilteredJobLifecycleListener.java
index 467d8354a..96b8bda96 100644
--- a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/std/TestFilteredJobLifecycleListener.java
+++ b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/std/TestFilteredJobLifecycleListener.java
@@ -16,11 +16,6 @@
  */
 package org.apache.gobblin.runtime.std;
 
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.verify;
-
 import org.testng.annotations.Test;
 
 import com.google.common.base.Optional;
@@ -35,6 +30,11 @@ import org.apache.gobblin.runtime.api.JobExecutionStateListener;
 import org.apache.gobblin.runtime.api.JobLifecycleListener;
 import org.apache.gobblin.runtime.api.JobSpec;
 
+import static org.mockito.Mockito.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.verify;
+
 /**
  * Unit tests for {@link FilteredJobLifecycleListener}
  */
diff --git a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/std/TestJobLifecycleListenersList.java b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/std/TestJobLifecycleListenersList.java
index 24ed6c458..436f678ae 100644
--- a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/std/TestJobLifecycleListenersList.java
+++ b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/std/TestJobLifecycleListenersList.java
@@ -16,11 +16,6 @@
  */
 package org.apache.gobblin.runtime.std;
 
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.verify;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.testng.annotations.Test;
@@ -31,6 +26,11 @@ import org.apache.gobblin.runtime.api.JobExecutionState;
 import org.apache.gobblin.runtime.api.JobLifecycleListener;
 import org.apache.gobblin.runtime.api.JobSpecSchedulerListenersContainer;
 
+import static org.mockito.Mockito.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.verify;
+
 /**
  * Unit tests for {@link JobLifecycleListenersList}
  */
diff --git a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/troubleshooter/JobIssueEventHandlerTest.java b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/troubleshooter/JobIssueEventHandlerTest.java
index c03f81f9b..616d8de0b 100644
--- a/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/troubleshooter/JobIssueEventHandlerTest.java
+++ b/gobblin-runtime/src/test/java/org/apache/gobblin/runtime/troubleshooter/JobIssueEventHandlerTest.java
@@ -21,7 +21,7 @@ import org.testng.annotations.Test;
 
 import org.apache.gobblin.metrics.event.TimingEvent;
 
-import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.verify;
 
@@ -49,4 +49,4 @@ public class JobIssueEventHandlerTest {
   private Issue getTestIssue(String summary, String code) {
     return Issue.builder().summary(summary).code(code).build();
   }
-}
\ No newline at end of file
+}
diff --git a/gobblin-service/src/test/java/org/apache/gobblin/service/modules/orchestration/DagManagerFlowTest.java b/gobblin-service/src/test/java/org/apache/gobblin/service/modules/orchestration/DagManagerFlowTest.java
index ecb84d839..facdca98c 100644
--- a/gobblin-service/src/test/java/org/apache/gobblin/service/modules/orchestration/DagManagerFlowTest.java
+++ b/gobblin-service/src/test/java/org/apache/gobblin/service/modules/orchestration/DagManagerFlowTest.java
@@ -54,10 +54,7 @@ import org.apache.gobblin.service.monitoring.JobStatusRetriever;
 import org.apache.gobblin.testing.AssertWithBackoff;
 import org.apache.gobblin.util.ConfigUtils;
 
-import static org.mockito.Matchers.*;
-import static org.mockito.Mockito.doNothing;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
+import static org.mockito.Mockito.*;
 
 
 public class DagManagerFlowTest {
diff --git a/gobblin-service/src/test/java/org/apache/gobblin/service/modules/scheduler/GobblinServiceJobSchedulerTest.java b/gobblin-service/src/test/java/org/apache/gobblin/service/modules/scheduler/GobblinServiceJobSchedulerTest.java
index 1c67f33e0..897adec1f 100644
--- a/gobblin-service/src/test/java/org/apache/gobblin/service/modules/scheduler/GobblinServiceJobSchedulerTest.java
+++ b/gobblin-service/src/test/java/org/apache/gobblin/service/modules/scheduler/GobblinServiceJobSchedulerTest.java
@@ -16,12 +16,6 @@
  */
 package org.apache.gobblin.service.modules.scheduler;
 
-import com.google.common.base.Optional;
-import com.google.common.base.Predicate;
-import com.google.common.io.Files;
-import com.typesafe.config.Config;
-import com.typesafe.config.ConfigFactory;
-import com.typesafe.config.ConfigValueFactory;
 import java.io.File;
 import java.net.URI;
 import java.net.URISyntaxException;
@@ -30,6 +24,21 @@ import java.util.Collection;
 import java.util.List;
 import java.util.Map;
 import java.util.Properties;
+
+import org.mockito.Mockito;
+import org.mockito.invocation.Invocation;
+import org.mockito.stubbing.Answer;
+import org.testng.Assert;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
+
+import com.google.common.base.Optional;
+import com.google.common.base.Predicate;
+import com.google.common.io.Files;
+import com.typesafe.config.Config;
+import com.typesafe.config.ConfigFactory;
+import com.typesafe.config.ConfigValueFactory;
+
 import org.apache.gobblin.configuration.ConfigurationKeys;
 import org.apache.gobblin.runtime.JobException;
 import org.apache.gobblin.runtime.api.FlowSpec;
@@ -40,6 +49,7 @@ import org.apache.gobblin.runtime.api.SpecExecutor;
 import org.apache.gobblin.runtime.app.ServiceBasedAppLauncher;
 import org.apache.gobblin.runtime.spec_catalog.AddSpecResponse;
 import org.apache.gobblin.runtime.spec_catalog.FlowCatalog;
+import org.apache.gobblin.runtime.spec_catalog.FlowCatalogTest;
 import org.apache.gobblin.runtime.spec_catalog.TopologyCatalog;
 import org.apache.gobblin.runtime.spec_executorInstance.InMemorySpecExecutor;
 import org.apache.gobblin.scheduler.SchedulerService;
@@ -50,23 +60,15 @@ import org.apache.gobblin.service.modules.flowgraph.Dag;
 import org.apache.gobblin.service.modules.orchestration.AbstractUserQuotaManager;
 import org.apache.gobblin.service.modules.orchestration.InMemoryUserQuotaManager;
 import org.apache.gobblin.service.modules.orchestration.Orchestrator;
-import org.apache.gobblin.runtime.spec_catalog.FlowCatalogTest;
 import org.apache.gobblin.service.modules.orchestration.UserQuotaManager;
 import org.apache.gobblin.service.modules.spec.JobExecutionPlan;
 import org.apache.gobblin.service.modules.spec.JobExecutionPlanDagFactory;
 import org.apache.gobblin.testing.AssertWithBackoff;
 import org.apache.gobblin.util.ConfigUtils;
 
-import org.mockito.Mockito;
-import org.mockito.invocation.Invocation;
-import org.mockito.stubbing.Answer;
-import org.testng.Assert;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-import static org.apache.gobblin.runtime.spec_catalog.FlowCatalog.*;
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.*;
+import static org.apache.gobblin.runtime.spec_catalog.FlowCatalog.FLOWSPEC_STORE_DIR_KEY;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.when;
 
 
 public class GobblinServiceJobSchedulerTest {
@@ -414,4 +416,4 @@ public class GobblinServiceJobSchedulerTest {
     jobExecutionPlans.add(jobExecutionPlan);
     return new JobExecutionPlanDagFactory().createDag(jobExecutionPlans);
   }
-}
\ No newline at end of file
+}
diff --git a/gobblin-service/src/test/java/org/apache/gobblin/service/monitoring/GitConfigMonitorTest.java b/gobblin-service/src/test/java/org/apache/gobblin/service/monitoring/GitConfigMonitorTest.java
index 7b735a63a..dad94b054 100644
--- a/gobblin-service/src/test/java/org/apache/gobblin/service/monitoring/GitConfigMonitorTest.java
+++ b/gobblin-service/src/test/java/org/apache/gobblin/service/monitoring/GitConfigMonitorTest.java
@@ -28,9 +28,6 @@ import java.util.concurrent.TimeUnit;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang3.SystemUtils;
-import org.apache.gobblin.runtime.api.SpecCatalogListener;
-import org.apache.gobblin.runtime.spec_catalog.AddSpecResponse;
-import org.apache.gobblin.service.ServiceConfigKeys;
 import org.eclipse.jgit.api.Git;
 import org.eclipse.jgit.api.ResetCommand;
 import org.eclipse.jgit.api.errors.GitAPIException;
@@ -56,10 +53,14 @@ import org.apache.gobblin.config.ConfigBuilder;
 import org.apache.gobblin.configuration.ConfigurationKeys;
 import org.apache.gobblin.runtime.api.FlowSpec;
 import org.apache.gobblin.runtime.api.Spec;
+import org.apache.gobblin.runtime.api.SpecCatalogListener;
+import org.apache.gobblin.runtime.spec_catalog.AddSpecResponse;
 import org.apache.gobblin.runtime.spec_catalog.FlowCatalog;
+import org.apache.gobblin.service.ServiceConfigKeys;
 
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 
 
 public class GitConfigMonitorTest {
diff --git a/gobblin-yarn/build.gradle b/gobblin-yarn/build.gradle
index 9f83dee47..8cfb22ced 100644
--- a/gobblin-yarn/build.gradle
+++ b/gobblin-yarn/build.gradle
@@ -67,7 +67,6 @@ dependencies {
   testCompile externalDependency.hadoopYarnMiniCluster
   testCompile externalDependency.curatorFramework
   testCompile externalDependency.curatorTest
-  testCompile externalDependency.powermock
 
   testCompile ('com.google.inject:guice:3.0') {
     force = true
diff --git a/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/HelixInstancePurgerWithMetricsTest.java b/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/HelixInstancePurgerWithMetricsTest.java
index f889a341f..92325df58 100644
--- a/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/HelixInstancePurgerWithMetricsTest.java
+++ b/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/HelixInstancePurgerWithMetricsTest.java
@@ -29,26 +29,14 @@ import org.mockito.Captor;
 import org.mockito.Mock;
 import org.mockito.Mockito;
 import org.mockito.MockitoAnnotations;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.testng.PowerMockTestCase;
 import org.testng.annotations.BeforeMethod;
 import org.testng.annotations.Test;
 
-import static org.mockito.Mockito.*;
-import static org.testng.Assert.*;
+import static org.mockito.Mockito.times;
+import static org.testng.Assert.assertEquals;
 
 
-/**
- * Test class uses PowerMockito and Testng
- * References:
- * https://github.com/powermock/powermock/issues/434
- * https://www.igorkromin.net/index.php/2018/10/04/how-to-fix-powermock-exception-linkageerror-loader-constraint-violation/
- * https://github.com/powermock/powermock/wiki/MockFinal
- */
-@PrepareForTest(Stopwatch.class)
-@PowerMockIgnore("javax.management.*")
-public class HelixInstancePurgerWithMetricsTest extends PowerMockTestCase {
+public class HelixInstancePurgerWithMetricsTest {
 
   @Mock EventSubmitter eventSubmitter;
   @Mock Stopwatch stopwatch;
@@ -62,7 +50,7 @@ public class HelixInstancePurgerWithMetricsTest extends PowerMockTestCase {
 
   @BeforeMethod
   private void init() {
-    MockitoAnnotations.initMocks(this);
+    MockitoAnnotations.openMocks(this);
     sut = new HelixInstancePurgerWithMetrics(eventSubmitter, PURGE_STATUS_POLLING_RATE_MS);
   }
 
diff --git a/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnAutoScalingManagerTest.java b/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnAutoScalingManagerTest.java
index 259378378..687af96fd 100644
--- a/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnAutoScalingManagerTest.java
+++ b/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnAutoScalingManagerTest.java
@@ -18,11 +18,10 @@
 package org.apache.gobblin.yarn;
 
 import java.io.IOException;
-
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
-import org.apache.gobblin.cluster.GobblinClusterConfigurationKeys;
+
 import org.apache.hadoop.yarn.api.records.Resource;
 import org.apache.helix.HelixDataAccessor;
 import org.apache.helix.HelixProperty;
@@ -42,7 +41,9 @@ import org.testng.annotations.Test;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
 
-import static org.mockito.Matchers.*;
+import org.apache.gobblin.cluster.GobblinClusterConfigurationKeys;
+
+import static org.mockito.Mockito.eq;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.times;
 
@@ -678,4 +679,4 @@ public class YarnAutoScalingManagerTest {
       return alwaysUnused || super.isInstanceUnused(participant);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnSecurityManagerTest.java b/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnSecurityManagerTest.java
index 8b440d3ac..7a59e976e 100644
--- a/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnSecurityManagerTest.java
+++ b/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnSecurityManagerTest.java
@@ -59,7 +59,7 @@ import org.apache.gobblin.cluster.HelixUtils;
 import org.apache.gobblin.cluster.TestHelper;
 import org.apache.gobblin.testing.AssertWithBackoff;
 
-import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.any;
 
 
 /**
diff --git a/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnServiceTest.java b/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnServiceTest.java
index 76f094798..99cf8c096 100644
--- a/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnServiceTest.java
+++ b/gobblin-yarn/src/test/java/org/apache/gobblin/yarn/YarnServiceTest.java
@@ -17,51 +17,42 @@
 
 package org.apache.gobblin.yarn;
 
-import com.google.common.eventbus.EventBus;
-import com.typesafe.config.Config;
-import com.typesafe.config.ConfigFactory;
 import java.io.IOException;
 import java.net.URL;
 import java.nio.ByteBuffer;
 import java.util.Arrays;
 import java.util.Collections;
-import org.apache.hadoop.yarn.api.protocolrecords.RegisterApplicationMasterResponse;
-import org.apache.hadoop.yarn.client.api.async.impl.AMRMClientAsyncImpl;
-import org.mockito.Mockito;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.testng.PowerMockObjectFactory;
-import org.powermock.modules.testng.PowerMockTestCase;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.testng.Assert;
-import org.testng.IObjectFactory;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.ObjectFactory;
-import org.testng.annotations.Test;
-
-import org.apache.gobblin.cluster.GobblinClusterConfigurationKeys;
 
 import org.apache.hadoop.fs.FileSystem;
+import org.apache.hadoop.yarn.api.protocolrecords.RegisterApplicationMasterResponse;
 import org.apache.hadoop.yarn.api.records.ContainerLaunchContext;
 import org.apache.hadoop.yarn.api.records.Resource;
 import org.apache.hadoop.yarn.client.api.async.AMRMClientAsync;
+import org.apache.hadoop.yarn.client.api.async.impl.AMRMClientAsyncImpl;
 import org.apache.hadoop.yarn.conf.YarnConfiguration;
 import org.apache.hadoop.yarn.server.utils.BuilderUtils;
 import org.apache.helix.HelixAdmin;
 import org.apache.helix.HelixManager;
+import org.mockito.MockedStatic;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.testng.Assert;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
+
+import com.google.common.eventbus.EventBus;
+import com.typesafe.config.Config;
+import com.typesafe.config.ConfigFactory;
+
+import org.apache.gobblin.cluster.GobblinClusterConfigurationKeys;
 
-import static org.mockito.Matchers.*;
-import static org.powermock.api.mockito.PowerMockito.*;
+import static org.mockito.Mockito.*;
 
 
 /**
  * Tests for {@link YarnService}.
  */
-@PrepareForTest({AMRMClientAsync.class, RegisterApplicationMasterResponse.class})
-@PowerMockIgnore({"javax.management.*"})
-public class YarnServiceTest extends PowerMockTestCase{
+public class YarnServiceTest {
   final Logger LOG = LoggerFactory.getLogger(YarnServiceTest.class);
   private TestYarnService yarnService;
   private Config config;
@@ -75,10 +66,10 @@ public class YarnServiceTest extends PowerMockTestCase{
 
   @BeforeClass
   public void setUp() throws Exception {
-    mockAMRMClient = Mockito.mock(AMRMClientAsync.class);
-    mockRegisterApplicationMasterResponse = Mockito.mock(RegisterApplicationMasterResponse.class);
-    mockResource = Mockito.mock(Resource.class);
-    mockFs = Mockito.mock(FileSystem.class);
+    mockAMRMClient = mock(AMRMClientAsync.class);
+    mockRegisterApplicationMasterResponse = mock(RegisterApplicationMasterResponse.class);
+    mockResource = mock(Resource.class);
+    mockFs = mock(FileSystem.class);
 
     URL url = YarnServiceTest.class.getClassLoader()
         .getResource(YarnServiceTest.class.getSimpleName() + ".conf");
@@ -86,12 +77,13 @@ public class YarnServiceTest extends PowerMockTestCase{
 
     this.config = ConfigFactory.parseURL(url).resolve();
 
-    PowerMockito.mockStatic(AMRMClientAsync.class);
-    PowerMockito.mockStatic(AMRMClientAsyncImpl.class);
+    MockedStatic<AMRMClientAsync> amrmClientAsyncMockStatic = mockStatic(AMRMClientAsync.class);
+    MockedStatic<AMRMClientAsyncImpl> amrmClientAsyncImplMockStatic = mockStatic(AMRMClientAsyncImpl.class);
 
-    when(AMRMClientAsync.createAMRMClientAsync(anyInt(), any(AMRMClientAsync.CallbackHandler.class)))
+    amrmClientAsyncMockStatic.when(() -> AMRMClientAsync.createAMRMClientAsync(anyInt(), any(AMRMClientAsync.CallbackHandler.class)))
         .thenReturn(mockAMRMClient);
     doNothing().when(mockAMRMClient).init(any(YarnConfiguration.class));
+
     when(mockAMRMClient.registerApplicationMaster(anyString(), anyInt(), anyString()))
         .thenReturn(mockRegisterApplicationMasterResponse);
     when(mockRegisterApplicationMasterResponse.getMaximumResourceCapability())
@@ -125,13 +117,13 @@ public class YarnServiceTest extends PowerMockTestCase{
     }
 
     private static HelixManager getMockHelixManager(Config config) {
-      HelixManager helixManager = Mockito.mock(HelixManager.class);
-      Mockito.when(helixManager.getClusterName()).thenReturn(config.getString(GobblinClusterConfigurationKeys.HELIX_CLUSTER_NAME_KEY));
-      Mockito.when(helixManager.getMetadataStoreConnectionString()).thenReturn("stub");
+      HelixManager helixManager = mock(HelixManager.class);
+      when(helixManager.getClusterName()).thenReturn(config.getString(GobblinClusterConfigurationKeys.HELIX_CLUSTER_NAME_KEY));
+      when(helixManager.getMetadataStoreConnectionString()).thenReturn("stub");
       return helixManager;
     }
 
-    private static HelixAdmin getMockHelixAdmin() { return Mockito.mock(HelixAdmin.class); }
+    private static HelixAdmin getMockHelixAdmin() { return mock(HelixAdmin.class); }
 
     protected ContainerLaunchContext newContainerLaunchContext(ContainerInfo containerInfo)
         throws IOException {
@@ -142,9 +134,4 @@ public class YarnServiceTest extends PowerMockTestCase{
     @Override
     protected ByteBuffer getSecurityTokens() throws IOException { return mock(ByteBuffer.class); }
   }
-
-  @ObjectFactory
-  public IObjectFactory getObjectFactory() {
-    return new PowerMockObjectFactory();
-  }
 }
diff --git a/gobblin-yarn/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker b/gobblin-yarn/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
new file mode 100644
index 000000000..1f0955d45
--- /dev/null
+++ b/gobblin-yarn/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
@@ -0,0 +1 @@
+mock-maker-inline
diff --git a/gradle/scripts/dependencyDefinitions.gradle b/gradle/scripts/dependencyDefinitions.gradle
index dddda7bc9..3e3db2dfd 100644
--- a/gradle/scripts/dependencyDefinitions.gradle
+++ b/gradle/scripts/dependencyDefinitions.gradle
@@ -123,8 +123,7 @@ ext.externalDependency = [
     "guiceMultibindings": "com.google.inject.extensions:guice-multibindings:4.0",
     "guiceServlet": "com.google.inject.extensions:guice-servlet:4.0",
     "derby": "org.apache.derby:derby:10.12.1.1",
-    "mockito": "org.mockito:mockito-core:1.10.19",
-    "powermock": "org.powermock:powermock-mockito-release-full:1.6.2",
+    "mockito": "org.mockito:mockito-core:4.11.0",
     "salesforceWsc": "com.force.api:force-wsc:" + salesforceVersion,
     "salesforcePartner": "com.force.api:force-partner-api:" + salesforceVersion,
     "scala": "org.scala-lang:scala-library:2.11.8",