From 3466ff3f05f188d872a37db2285aa7253dfd5994 Mon Sep 17 00:00:00 2001 From: ocean Date: Mon, 12 Sep 2022 11:31:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dunit=20test?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/handler/WorkerRequestHandler.java | 2 ++ .../powerjob/server/test/ConflictTest.java | 2 +- .../powerjob/server/test/DingTalkTest.java | 3 +++ .../tech/powerjob/server/test/GridFsTest.java | 7 +++++- .../server/test/HashedWheelTimerTest.java | 22 +++++++++---------- .../tech/powerjob/server/test/OmsLogTest.java | 3 ++- .../server/test/QueryConvertUtilsTest.java | 6 ++--- .../powerjob/server/test/RepositoryTest.java | 3 ++- .../server/test/ServerInfoServiceTest.java | 12 ++++++---- .../src/test/resources/application.properties | 21 +++++++++--------- 10 files changed, 49 insertions(+), 32 deletions(-) diff --git a/powerjob-server/powerjob-server-core/src/main/java/tech/powerjob/server/core/handler/WorkerRequestHandler.java b/powerjob-server/powerjob-server-core/src/main/java/tech/powerjob/server/core/handler/WorkerRequestHandler.java index ed5787a6..0d907730 100644 --- a/powerjob-server/powerjob-server-core/src/main/java/tech/powerjob/server/core/handler/WorkerRequestHandler.java +++ b/powerjob-server/powerjob-server-core/src/main/java/tech/powerjob/server/core/handler/WorkerRequestHandler.java @@ -2,6 +2,7 @@ package tech.powerjob.server.core.handler; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; import org.springframework.core.env.Environment; import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; @@ -43,6 +44,7 @@ import java.util.stream.Collectors; */ @Slf4j @Component +@ConditionalOnExpression("'${execution.env}'!='test'") public class WorkerRequestHandler { @Resource diff --git a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/ConflictTest.java b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/ConflictTest.java index 3bd2e8dd..4044e418 100644 --- a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/ConflictTest.java +++ b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/ConflictTest.java @@ -27,7 +27,7 @@ public class ConflictTest { int len = CommonUtils.formatSize(1024) - 1; Map matchCount = new TreeMap<>(); - int maxTime = 100000; + int maxTime = 10000; int expectedMaxConflict = maxTime / len; for (int i = 0; i < maxTime; i++) { diff --git a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/DingTalkTest.java b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/DingTalkTest.java index dae13131..bfb743bb 100644 --- a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/DingTalkTest.java +++ b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/DingTalkTest.java @@ -1,5 +1,6 @@ package tech.powerjob.server.test; +import org.junit.Ignore; import tech.powerjob.server.extension.defaultimpl.alarm.impl.DingTalkUtils; import com.google.common.collect.Lists; import org.junit.jupiter.api.Test; @@ -18,11 +19,13 @@ public class DingTalkTest { private static final DingTalkUtils dingTalkUtils = new DingTalkUtils("dingauqwkvxxnqskknfv", "XWrEPdAZMPgJeFtHuL0LH73LRj-74umF2_0BFcoXMfvnX0pCQvt0rpb1JOJU_HLl"); @Test + @Ignore public void testFetchUserId() throws Exception { System.out.println(dingTalkUtils.fetchUserIdByMobile("38353")); } @Test + @Ignore public void testSendMarkdown() throws Exception { String userId = "2159453017839770,1234"; diff --git a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/GridFsTest.java b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/GridFsTest.java index 37835a8a..03ab4a58 100644 --- a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/GridFsTest.java +++ b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/GridFsTest.java @@ -1,5 +1,6 @@ package tech.powerjob.server.test; +import org.junit.Ignore; import tech.powerjob.server.persistence.mongodb.GridFsManager; import org.junit.Test; import org.junit.runner.RunWith; @@ -17,7 +18,6 @@ import java.io.IOException; * @author tjq * @since 2020/5/18 */ -@ActiveProfiles("daily") @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public class GridFsTest { @@ -26,25 +26,30 @@ public class GridFsTest { private GridFsManager gridFsManager; @Test + @Ignore public void testStore() throws IOException { File file = new File("/Users/tjq/Desktop/DistributeCompute/oms-template-origin.zip"); gridFsManager.store(file, "test", "test.zip"); } @Test + @Ignore public void testDownload() throws IOException { File file = new File("/Users/tjq/Desktop/tmp/test-download.zip"); gridFsManager.download(file, "test", "test.zip"); } @Test + @Ignore public void testDelete() { gridFsManager.deleteBefore("fs", 0); } @Test + @Ignore public void testExists() { System.out.println(gridFsManager.exists("test", "test.zip")); System.out.println(gridFsManager.exists("test", "oms-sql.sql")); } + } diff --git a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/HashedWheelTimerTest.java b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/HashedWheelTimerTest.java index fa4cf426..647c607e 100644 --- a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/HashedWheelTimerTest.java +++ b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/HashedWheelTimerTest.java @@ -29,7 +29,7 @@ public class HashedWheelTimerTest { HashedWheelTimer timer = new HashedWheelTimer(1, 1024, 32); List futures = Lists.newLinkedList(); - for (int i = 0; i < 1000; i++) { + for (int i = 0; i < 10; i++) { String name = "Task" + i; long nowMS = System.currentTimeMillis(); @@ -57,19 +57,19 @@ public class HashedWheelTimerTest { }); - Thread.sleep(1000); + Thread.sleep(10); // 关闭 System.out.println(timer.stop().size()); System.out.println("Finished!"); - Thread.sleep(277777777); + Thread.sleep(27); } @Test public void testPerformance() throws Exception { Stopwatch sw = Stopwatch.createStarted(); - for (long i = 0; i < 10000000; i++) { + for (long i = 0; i < 10; i++) { long delay = ThreadLocalRandom.current().nextLong(100, 120000); long expect = System.currentTimeMillis() + delay; InstanceTimeWheelService.schedule(i, delay, () -> { @@ -78,12 +78,12 @@ public class HashedWheelTimerTest { } log.info("[Performance] insert cost: {}", sw); - Thread.sleep(90000); + Thread.sleep(90); } @Test public void testLongDelayTask() throws Exception { - for (long i = 0; i < 1000000; i++) { + for (long i = 0; i < 10; i++) { long delay = ThreadLocalRandom.current().nextLong(60000, 60000 * 3); long expect = System.currentTimeMillis() + delay; InstanceTimeWheelService.schedule(i, delay, () -> { @@ -91,7 +91,7 @@ public class HashedWheelTimerTest { }); } - Thread.sleep(60000 * 4); + Thread.sleep(60 * 4); } @Test @@ -99,7 +99,7 @@ public class HashedWheelTimerTest { AtomicLong executeNum = new AtomicLong(); AtomicLong cancelNum = new AtomicLong(); - for (long i = 0; i < 1000000; i++) { + for (long i = 0; i < 10; i++) { long delay = ThreadLocalRandom.current().nextLong(60000, 60000 * 2); long expect = System.currentTimeMillis() + delay; InstanceTimeWheelService.schedule(i, delay, () -> { @@ -108,9 +108,9 @@ public class HashedWheelTimerTest { }); } - Thread.sleep(10000); + Thread.sleep(10); - for (long i = 0; i < 1000000; i++) { + for (long i = 0; i < 10; i++) { boolean nextBoolean = ThreadLocalRandom.current().nextBoolean(); if (nextBoolean) { continue; @@ -120,7 +120,7 @@ public class HashedWheelTimerTest { cancelNum.incrementAndGet(); } - Thread.sleep(60000 * 4); + Thread.sleep(60 * 4); log.info("[CancelLongDelayTask] result -> executeNum:{},cancelNum:{}", executeNum, cancelNum); } } diff --git a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/OmsLogTest.java b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/OmsLogTest.java index f0f9e1ab..67850ada 100644 --- a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/OmsLogTest.java +++ b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/OmsLogTest.java @@ -1,5 +1,6 @@ package tech.powerjob.server.test; +import org.junit.Ignore; import tech.powerjob.server.common.utils.OmsFileUtils; import tech.powerjob.server.persistence.mongodb.GridFsManager; import tech.powerjob.server.core.scheduler.CleanService; @@ -24,9 +25,9 @@ import java.util.function.Consumer; * @since 2020/5/11 */ -@ActiveProfiles("daily") @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) +@Ignore public class OmsLogTest { @Resource diff --git a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/QueryConvertUtilsTest.java b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/QueryConvertUtilsTest.java index 61f51c11..6592ee13 100644 --- a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/QueryConvertUtilsTest.java +++ b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/QueryConvertUtilsTest.java @@ -1,6 +1,7 @@ package tech.powerjob.server.test; import com.alibaba.fastjson.JSONObject; +import org.junit.Test; import tech.powerjob.common.PowerQuery; import tech.powerjob.common.response.JobInfoDTO; import tech.powerjob.server.core.service.JobService; @@ -8,7 +9,6 @@ import lombok.Getter; import lombok.Setter; import org.apache.commons.lang3.time.DateUtils; import org.assertj.core.util.Lists; -import org.junit.jupiter.api.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; @@ -26,13 +26,13 @@ import java.util.List; */ @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) -class QueryConvertUtilsTest { +public class QueryConvertUtilsTest { @Resource private JobService jobService; @Test - void autoConvert() { + public void autoConvert() { JobInfoQuery jobInfoQuery = new JobInfoQuery(); jobInfoQuery.setAppIdEq(1L); jobInfoQuery.setJobNameLike("DAG"); diff --git a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/RepositoryTest.java b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/RepositoryTest.java index fd568282..859023ac 100644 --- a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/RepositoryTest.java +++ b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/RepositoryTest.java @@ -1,5 +1,6 @@ package tech.powerjob.server.test; +import org.springframework.test.annotation.Rollback; import tech.powerjob.common.enums.InstanceStatus; import tech.powerjob.common.enums.TimeExpressionType; import tech.powerjob.common.enums.WorkflowInstanceStatus; @@ -48,8 +49,8 @@ public class RepositoryTest { */ @Test @Transactional + @Rollback public void testBatchLock() { - List locks = Lists.newArrayList(); for (int i = 0; i < 10; i++) { OmsLockDO lockDO = new OmsLockDO("lock" + i, NetUtils.getLocalHost(), 10000L); diff --git a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/ServerInfoServiceTest.java b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/ServerInfoServiceTest.java index 4a9b3bfc..6c2fbb1c 100644 --- a/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/ServerInfoServiceTest.java +++ b/powerjob-server/powerjob-server-starter/src/test/java/tech/powerjob/server/test/ServerInfoServiceTest.java @@ -1,15 +1,17 @@ package tech.powerjob.server.test; +import org.junit.Test; +import org.springframework.test.annotation.Rollback; import tech.powerjob.server.persistence.remote.model.ServerInfoDO; import tech.powerjob.server.persistence.remote.repository.ServerInfoRepository; import com.google.common.collect.Lists; import org.apache.commons.lang3.time.DateUtils; -import org.junit.jupiter.api.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import javax.annotation.Resource; +import javax.transaction.Transactional; import java.util.Date; import java.util.List; @@ -23,16 +25,18 @@ import java.util.concurrent.ThreadLocalRandom; */ @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) -class ServerInfoServiceTest { +public class ServerInfoServiceTest { @Resource private ServerInfoRepository serverInfoRepository; @Test - void generateInvalidRecord2Test() { + @Transactional + @Rollback + public void generateInvalidRecord2Test() { List records = Lists.newLinkedList(); - for (int i = 0; i < 11111; i++) { + for (int i = 0; i < 11; i++) { // invalid ip to test String ip = "T-192.168.1." + i; diff --git a/powerjob-server/powerjob-server-starter/src/test/resources/application.properties b/powerjob-server/powerjob-server-starter/src/test/resources/application.properties index ef264fe6..cc5a5431 100644 --- a/powerjob-server/powerjob-server-starter/src/test/resources/application.properties +++ b/powerjob-server/powerjob-server-starter/src/test/resources/application.properties @@ -1,18 +1,19 @@ -# http 服务端口 +# http \u670D\u52A1\u7AEF\u53E3 server.port=7700 -spring.profiles.active=daily +execution.env=test +spring.profiles.active=test spring.jpa.open-in-view=false spring.jpa.show-sql=true spring.data.mongodb.repositories.type=none -# 文件上传配置 +# \u6587\u4EF6\u4E0A\u4F20\u914D\u7F6E spring.servlet.multipart.enabled =true spring.servlet.multipart.file-size-threshold=0 spring.servlet.multipart.max-file-size=209715200 spring.servlet.multipart.max-request-size=209715200 -####### 数据库配置 ####### +####### \u6570\u636E\u5E93\u914D\u7F6E ####### spring.datasource.core.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.core.jdbc-url=jdbc:mysql://localhost:3306/powerjob-daily?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai spring.datasource.core.username=root @@ -20,20 +21,20 @@ spring.datasource.core.password=No1Bug2Please3! spring.datasource.core.hikari.maximum-pool-size=20 spring.datasource.core.hikari.minimum-idle=5 -####### mongoDB配置,非核心依赖,可移除 ####### +####### mongoDB\u914D\u7F6E\uFF0C\u975E\u6838\u5FC3\u4F9D\u8D56\uFF0C\u53EF\u79FB\u9664 ####### oms.mongodb.enable=true spring.data.mongodb.uri=mongodb+srv://zqq:No1Bug2Please3!@cluster0.wie54.gcp.mongodb.net/powerjob_daily?retryWrites=true&w=majority -###### OhMyScheduler 自身配置(该配置只允许存在于 application.properties 文件中) ###### -# akka ActorSystem 服务端口 +###### OhMyScheduler \u81EA\u8EAB\u914D\u7F6E\uFF08\u8BE5\u914D\u7F6E\u53EA\u5141\u8BB8\u5B58\u5728\u4E8E application.properties \u6587\u4EF6\u4E2D\uFF09 ###### +# akka ActorSystem \u670D\u52A1\u7AEF\u53E3 oms.akka.port=10086 -# 报警服务 bean名称 +# \u62A5\u8B66\u670D\u52A1 bean\u540D\u79F0 oms.alarm.bean.names=omsDefaultMailAlarmService -####### 日志保留天数,单位天 ####### +####### \u65E5\u5FD7\u4FDD\u7559\u5929\u6570\uFF0C\u5355\u4F4D\u5929 ####### oms.log.retention.local=0 oms.log.retention.remote=0 oms.container.retention.local=0 oms.container.retention.remote=0 oms.instanceinfo.retention=0; -# 表前缀 +# \u8868\u524D\u7F00 #oms.table-prefix=pj_ \ No newline at end of file