diff --git a/src/test/java/org/codelibs/fess/it/CrawlTestBase.java b/src/test/java/org/codelibs/fess/it/CrawlTestBase.java
index aebe335851fee4c03546ac9aa6dc307a7a6da045..393f8f21147ae71991aadd0480a8c65b63eff451 100644
--- a/src/test/java/org/codelibs/fess/it/CrawlTestBase.java
+++ b/src/test/java/org/codelibs/fess/it/CrawlTestBase.java
@@ -17,6 +17,7 @@ package org.codelibs.fess.it;
 
 import static io.restassured.RestAssured.given;
 import static org.hamcrest.Matchers.equalTo;
+import static org.junit.Assert.fail;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
@@ -27,6 +28,7 @@ import java.util.Map;
 
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
+import org.codelibs.core.lang.ThreadUtil;
 
 import io.restassured.path.json.JsonPath;
 import io.restassured.response.Response;
@@ -52,21 +54,17 @@ public class CrawlTestBase extends ITBase {
                 logger.info("Start scheduler \"{}\"", schedulerId);
                 return;
             }
-            try {
-                Thread.sleep(1000L);
-            } catch (InterruptedException e) {
-                // ignore
-            }
+            ThreadUtil.sleep(1000L);
         }
-        assertTrue(false, "could not start job.");
+        fail("could not start job.");
     }
 
-    protected static void waitJob(final String namePrefix) throws InterruptedException {
+    protected static void waitJob(final String namePrefix) {
         Boolean isRunning = false;
         int count = 0;
 
         while (count < 300 && !isRunning) { // Wait until the crawler starts
-            Thread.sleep(500);
+            ThreadUtil.sleep(500);
             count++;
             final Map<String, Object> scheduler = getSchedulerItem(namePrefix);
             assertTrue(scheduler.containsKey("running"));
@@ -74,14 +72,14 @@ public class CrawlTestBase extends ITBase {
         }
         if (300 <= count) {
             logger.info("Time out: Failed to start crawler)");
-            assertTrue(false); // Time Out
+            fail(); // Time Out
         }
 
         logger.info("Crawler is running");
         count = 0;
         isRunning = true;
         while (count < 300 && isRunning) { // Wait until the crawler terminates
-            Thread.sleep(1000);
+            ThreadUtil.sleep(1000);
             count++;
             final Map<String, Object> scheduler = getSchedulerItem(namePrefix);
             assertTrue(scheduler.containsKey("running"));
@@ -90,7 +88,7 @@ public class CrawlTestBase extends ITBase {
         }
         if (300 <= count) {
             logger.info("Time out: Crawler takes too much time");
-            //TODO assertTrue(false); // Time Out
+            //TODO fail(); // Time Out
         }
 
         logger.info("Crawler terminated");
diff --git a/src/test/java/org/codelibs/fess/it/admin/BackupTests.java b/src/test/java/org/codelibs/fess/it/admin/BackupTests.java
index 36cfaa34738340c8b2915e3453fc6289beb27fd9..8a679ed6664a314b0401d5cfec93b7173b9cd57a 100644
--- a/src/test/java/org/codelibs/fess/it/admin/BackupTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/BackupTests.java
@@ -16,7 +16,7 @@
 package org.codelibs.fess.it.admin;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -64,13 +64,13 @@ public class BackupTests extends CrudTestBase {
 
     @Override
     protected Map<String, Object> createTestParam(int id) {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
     @Override
     protected Map<String, Object> getUpdateMap() {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
diff --git a/src/test/java/org/codelibs/fess/it/admin/CrawlerLogTests.java b/src/test/java/org/codelibs/fess/it/admin/CrawlerLogTests.java
index 4f85f30be40ed10bb02e3554ea16c34c607c16d3..137c2511232081a541a5df0206bc5aadaa66d608 100644
--- a/src/test/java/org/codelibs/fess/it/admin/CrawlerLogTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/CrawlerLogTests.java
@@ -57,24 +57,19 @@ public class CrawlerLogTests extends CrawlTestBase {
         settingTestToken();
 
         // create and execute a web crawler
-        try {
-            createWebConfig();
-            logger.info("WebConfig is created");
-            refresh();
-            webConfigId = getWebConfigIds(NAME_PREFIX).get(0);
-
-            createJob();
-            logger.info("Job is created");
-            refresh();
-
-            startJob(NAME_PREFIX);
-
-            waitJob(NAME_PREFIX);
-            refresh();
-        } catch (InterruptedException e) {
-            e.printStackTrace();
-            assertTrue(false);
-        }
+        createWebConfig();
+        logger.info("WebConfig is created");
+        refresh();
+        webConfigId = getWebConfigIds(NAME_PREFIX).get(0);
+
+        createJob();
+        logger.info("Job is created");
+        refresh();
+
+        startJob(NAME_PREFIX);
+
+        waitJob(NAME_PREFIX);
+        refresh();
     }
 
     @BeforeEach
diff --git a/src/test/java/org/codelibs/fess/it/admin/GeneralTests.java b/src/test/java/org/codelibs/fess/it/admin/GeneralTests.java
index 2464cc2a6c4481d2fb6120b297ac6e7fba7bebc9..7843a8493d45790cd7cb1e203a0f5975cc39dd3b 100644
--- a/src/test/java/org/codelibs/fess/it/admin/GeneralTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/GeneralTests.java
@@ -17,6 +17,7 @@ package org.codelibs.fess.it.admin;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -64,13 +65,13 @@ public class GeneralTests extends CrudTestBase {
 
     @Override
     protected Map<String, Object> createTestParam(int id) {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
     @Override
     protected Map<String, Object> getUpdateMap() {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
diff --git a/src/test/java/org/codelibs/fess/it/admin/JobLogTests.java b/src/test/java/org/codelibs/fess/it/admin/JobLogTests.java
index 811fda883a66070c3853e6d59926cf90f9caf1f2..b53d2f6b21b03ab3e823a924ddb153883effb87d 100644
--- a/src/test/java/org/codelibs/fess/it/admin/JobLogTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/JobLogTests.java
@@ -16,7 +16,7 @@
 package org.codelibs.fess.it.admin;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -64,13 +64,13 @@ public class JobLogTests extends CrudTestBase {
 
     @Override
     protected Map<String, Object> createTestParam(int id) {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
     @Override
     protected Map<String, Object> getUpdateMap() {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
diff --git a/src/test/java/org/codelibs/fess/it/admin/LogTests.java b/src/test/java/org/codelibs/fess/it/admin/LogTests.java
index e7a4ed1faa435b00ca538faa6a6f45b63ab62ef9..0fca13e0a7b7ec50256bed3bd798d7ab68bff58e 100644
--- a/src/test/java/org/codelibs/fess/it/admin/LogTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/LogTests.java
@@ -16,7 +16,7 @@
 package org.codelibs.fess.it.admin;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -64,13 +64,13 @@ public class LogTests extends CrudTestBase {
 
     @Override
     protected Map<String, Object> createTestParam(int id) {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
     @Override
     protected Map<String, Object> getUpdateMap() {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
diff --git a/src/test/java/org/codelibs/fess/it/admin/PluginTests.java b/src/test/java/org/codelibs/fess/it/admin/PluginTests.java
index 3ae7ceb5b4ce8f29a036c65392d4fe71fa95b6a7..0a01ab306648f4759d68396f9883a907aef3941a 100644
--- a/src/test/java/org/codelibs/fess/it/admin/PluginTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/PluginTests.java
@@ -24,6 +24,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import org.codelibs.core.lang.ThreadUtil;
 import org.codelibs.fess.helper.PluginHelper.Artifact;
 import org.codelibs.fess.it.CrudTestBase;
 import org.junit.jupiter.api.AfterEach;
@@ -146,7 +147,7 @@ public class PluginTests extends CrudTestBase {
                 boolean exists = installed.stream().map(this::getArtifactFromMap)
                         .anyMatch(a -> a.getName().equals(target.getName()) && a.getVersion().equals(target.getVersion()));
                 if (!exists) {
-                    Thread.sleep(500);
+                    ThreadUtil.sleep(500);
                     continue;
                 }
                 assertTrue(exists);
@@ -166,7 +167,7 @@ public class PluginTests extends CrudTestBase {
                 boolean exists = installed.stream().map(this::getArtifactFromMap)
                         .anyMatch(a -> a.getName().equals(target.getName()) && a.getVersion().equals(target.getVersion()));
                 if (exists) {
-                    Thread.sleep(500);
+                    ThreadUtil.sleep(500);
                     continue;
                 }
                 assertFalse(exists);
diff --git a/src/test/java/org/codelibs/fess/it/admin/SuggestTests.java b/src/test/java/org/codelibs/fess/it/admin/SuggestTests.java
index e43fe9ddb2264b0d5c24b401ce58bda528cd27ad..b0bf7412938bbf9af942d50dbbe8a6c229a13800 100644
--- a/src/test/java/org/codelibs/fess/it/admin/SuggestTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/SuggestTests.java
@@ -17,6 +17,7 @@ package org.codelibs.fess.it.admin;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -64,13 +65,13 @@ public class SuggestTests extends CrudTestBase {
 
     @Override
     protected Map<String, Object> createTestParam(int id) {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
     @Override
     protected Map<String, Object> getUpdateMap() {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
diff --git a/src/test/java/org/codelibs/fess/it/admin/SystemInfoTests.java b/src/test/java/org/codelibs/fess/it/admin/SystemInfoTests.java
index 095e4d193dc89b47561719457fc3a12dd34dc167..33f6546faa695789f5a4a6c2116145e9e715c5c5 100644
--- a/src/test/java/org/codelibs/fess/it/admin/SystemInfoTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/SystemInfoTests.java
@@ -17,6 +17,7 @@ package org.codelibs.fess.it.admin;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -64,13 +65,13 @@ public class SystemInfoTests extends CrudTestBase {
 
     @Override
     protected Map<String, Object> createTestParam(int id) {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
     @Override
     protected Map<String, Object> getUpdateMap() {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
diff --git a/src/test/java/org/codelibs/fess/it/admin/dict/DictCrudTestBase.java b/src/test/java/org/codelibs/fess/it/admin/dict/DictCrudTestBase.java
index b9567f23a489fc90cfc99b27b56a4110dfa5c5fb..fe092be6b0e32c7bb51be088ecbcd77962d69c11 100644
--- a/src/test/java/org/codelibs/fess/it/admin/dict/DictCrudTestBase.java
+++ b/src/test/java/org/codelibs/fess/it/admin/dict/DictCrudTestBase.java
@@ -17,6 +17,7 @@ package org.codelibs.fess.it.admin.dict;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -61,7 +62,7 @@ public abstract class DictCrudTestBase extends CrudTestBase {
             }
         }
 
-        assertTrue(false);
+        fail();
     }
 
     @Override
diff --git a/src/test/java/org/codelibs/fess/it/admin/dict/DictTests.java b/src/test/java/org/codelibs/fess/it/admin/dict/DictTests.java
index 7c35350bcb842fe657484c0f2580d96fd92d3650..1a5e50b52172ed5a83b06735795385a1cb95ffce 100644
--- a/src/test/java/org/codelibs/fess/it/admin/dict/DictTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/dict/DictTests.java
@@ -16,7 +16,7 @@
 package org.codelibs.fess.it.admin.dict;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.HashMap;
 import java.util.List;
@@ -65,13 +65,13 @@ public class DictTests extends CrudTestBase {
 
     @Override
     protected Map<String, Object> createTestParam(int id) {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
     @Override
     protected Map<String, Object> getUpdateMap() {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
diff --git a/src/test/java/org/codelibs/fess/it/admin/dict/ProtwordsTests.java b/src/test/java/org/codelibs/fess/it/admin/dict/ProtwordsTests.java
index b00e37e3a7dadcfee5e250eba410cf50514a3ff0..0a73e5e18bf1c964fcc4df4b4ec83e09f84bab2a 100644
--- a/src/test/java/org/codelibs/fess/it/admin/dict/ProtwordsTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/dict/ProtwordsTests.java
@@ -15,7 +15,7 @@
  */
 package org.codelibs.fess.it.admin.dict;
 
-import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -74,7 +74,7 @@ public class ProtwordsTests extends DictCrudTestBase {
 
     @Override
     protected Map<String, Object> getUpdateMap() {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
diff --git a/src/test/java/org/codelibs/fess/it/admin/dict/StopwordsTests.java b/src/test/java/org/codelibs/fess/it/admin/dict/StopwordsTests.java
index b02739d16097c1139a7b88db8599469ce74bedb3..7ebbd8d83aaea3f12af44d707a1714609dd7c6cc 100644
--- a/src/test/java/org/codelibs/fess/it/admin/dict/StopwordsTests.java
+++ b/src/test/java/org/codelibs/fess/it/admin/dict/StopwordsTests.java
@@ -15,7 +15,7 @@
  */
 package org.codelibs.fess.it.admin.dict;
 
-import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -74,7 +74,7 @@ public class StopwordsTests extends DictCrudTestBase {
 
     @Override
     protected Map<String, Object> getUpdateMap() {
-        assertTrue(false); // Unreachable
+        fail(); // Unreachable
         return null;
     }
 
diff --git a/src/test/java/org/codelibs/fess/it/search/SearchApiTests.java b/src/test/java/org/codelibs/fess/it/search/SearchApiTests.java
index 849d0517bd17f76b6432c3c02dbfade19308a3b7..b7fd29503368e1e0e36d4715b619ae51b62b0aca 100644
--- a/src/test/java/org/codelibs/fess/it/search/SearchApiTests.java
+++ b/src/test/java/org/codelibs/fess/it/search/SearchApiTests.java
@@ -58,27 +58,22 @@ public class SearchApiTests extends CrawlTestBase {
         settingTestToken();
 
         // create and execute a file crawler
-        try {
-            labelId = createLabel();
-            crawlLabelId = createCrawlLabel();
-
-            createFileConfig();
-            logger.info("FileConfig is created");
-            refresh();
-            fileConfigId = getFileConfigIds(NAME_PREFIX).get(0);
-
-            createJob();
-            logger.info("Job is created");
-            refresh();
-
-            startJob(NAME_PREFIX);
-
-            waitJob(NAME_PREFIX);
-            refresh();
-        } catch (Exception e) {
-            e.printStackTrace();
-            assertTrue(false);
-        }
+        labelId = createLabel();
+        crawlLabelId = createCrawlLabel();
+
+        createFileConfig();
+        logger.info("FileConfig is created");
+        refresh();
+        fileConfigId = getFileConfigIds(NAME_PREFIX).get(0);
+
+        createJob();
+        logger.info("Job is created");
+        refresh();
+
+        startJob(NAME_PREFIX);
+
+        waitJob(NAME_PREFIX);
+        refresh();
     }
 
     @BeforeEach