From d914e274fdcb23a335be6b639bb85c7077d5b555 Mon Sep 17 00:00:00 2001 From: Calvin Date: Sat, 6 Oct 2012 12:26:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E5=BC=BA=E7=94=A8=E4=BE=8B=E5=81=A5?= =?UTF-8?q?=E5=A3=AE=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../applicationContext-quartz-cron-local.xml | 4 +-- .../demos/schedule/JdkTimerJobTest.java | 25 +++++++++++++------ .../schedule/QuartzTimerClusterJobTest.java | 25 +++++++++++++------ .../demos/schedule/SpringTimerJobTest.java | 22 +++++++++++----- 4 files changed, 52 insertions(+), 24 deletions(-) diff --git a/examples/showcase/src/main/resources/schedule/applicationContext-quartz-cron-local.xml b/examples/showcase/src/main/resources/schedule/applicationContext-quartz-cron-local.xml index 0c756404..66acb63c 100644 --- a/examples/showcase/src/main/resources/schedule/applicationContext-quartz-cron-local.xml +++ b/examples/showcase/src/main/resources/schedule/applicationContext-quartz-cron-local.xml @@ -19,8 +19,8 @@ 5 - - + + diff --git a/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/JdkTimerJobTest.java b/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/JdkTimerJobTest.java index 5d672a78..ba1fcf84 100644 --- a/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/JdkTimerJobTest.java +++ b/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/JdkTimerJobTest.java @@ -2,6 +2,8 @@ package org.springside.examples.showcase.demos.schedule; import static org.junit.Assert.*; +import org.junit.AfterClass; +import org.junit.BeforeClass; import org.junit.Test; import org.junit.experimental.categories.Category; import org.springframework.test.annotation.DirtiesContext; @@ -16,20 +18,27 @@ import org.springside.modules.utils.Threads; @ContextConfiguration(locations = { "/applicationContext.xml", "/schedule/applicationContext-jdk-timer.xml" }) public class JdkTimerJobTest extends SpringTransactionalTestCase { - @Test - public void scheduleJob() throws Exception { + private static Log4jMockAppender appender; - //加载测试用logger appender - Log4jMockAppender appender = new Log4jMockAppender(); + @BeforeClass + public static void initLogger() { + // 加载测试用logger appender + appender = new Log4jMockAppender(); appender.addToLogger(UserCountScanner.class); + } + + @AfterClass + public static void removeLogger() { + appender.removeFromLogger(UserCountScanner.class); + } - //等待任务启动 + @Test + public void scheduleJob() throws Exception { + // 等待任务延时1秒启动并执行完毕 Threads.sleep(3000); - //验证任务已执行 + // 验证任务已执行 assertEquals(1, appender.getLogsCount()); assertEquals("There are 6 user in database, printed by jdk timer job.", appender.getFirstMessage()); - - appender.removeFromLogger(UserCountScanner.class); } } diff --git a/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/QuartzTimerClusterJobTest.java b/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/QuartzTimerClusterJobTest.java index f31df965..2edcfbae 100644 --- a/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/QuartzTimerClusterJobTest.java +++ b/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/QuartzTimerClusterJobTest.java @@ -2,6 +2,8 @@ package org.springside.examples.showcase.demos.schedule; import static org.junit.Assert.*; +import org.junit.AfterClass; +import org.junit.BeforeClass; import org.junit.Test; import org.junit.experimental.categories.Category; import org.springframework.test.annotation.DirtiesContext; @@ -21,22 +23,29 @@ import org.springside.modules.utils.Threads; @ContextConfiguration(locations = { "/applicationContext.xml", "/schedule/applicationContext-quartz-timer-cluster.xml" }) public class QuartzTimerClusterJobTest extends SpringTransactionalTestCase { - @Test - public void scheduleJob() throws Exception { + private static Log4jMockAppender appender; - //加载测试用logger appender - Log4jMockAppender appender = new Log4jMockAppender(); + @BeforeClass + public static void initLogger() { + // 加载测试用logger appender + appender = new Log4jMockAppender(); appender.addToLogger(QuartzClusterableJob.class); + } + + @AfterClass + public static void removeLogger() { + appender.removeFromLogger(QuartzClusterableJob.class); + } - //等待任务延时启动 + @Test + public void scheduleJob() throws Exception { + // 等待任务延时2秒启动并执行完毕 Threads.sleep(4000); - //验证任务已执行 + // 验证任务已执行 assertEquals(1, appender.getLogsCount()); assertEquals("There are 6 user in database, printed by quartz cluster job on node default.", appender.getFirstMessage()); - - appender.removeFromLogger(QuartzClusterableJob.class); } } diff --git a/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/SpringTimerJobTest.java b/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/SpringTimerJobTest.java index ec3eb3e6..63e30561 100644 --- a/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/SpringTimerJobTest.java +++ b/examples/showcase/src/test/java/org/springside/examples/showcase/demos/schedule/SpringTimerJobTest.java @@ -2,6 +2,8 @@ package org.springside.examples.showcase.demos.schedule; import static org.junit.Assert.*; +import org.junit.AfterClass; +import org.junit.BeforeClass; import org.junit.Test; import org.junit.experimental.categories.Category; import org.springframework.test.annotation.DirtiesContext; @@ -16,19 +18,27 @@ import org.springside.modules.utils.Threads; @ContextConfiguration(locations = { "/applicationContext.xml", "/schedule/applicationContext-spring-scheduler.xml" }) public class SpringTimerJobTest extends SpringTransactionalTestCase { - @Test - public void scheduleJob() throws Exception { + private static Log4jMockAppender appender; + @BeforeClass + public static void initLogger() { // 加载测试用logger appender - Log4jMockAppender appender = new Log4jMockAppender(); + appender = new Log4jMockAppender(); appender.addToLogger(UserCountScanner.class); + } - // 等待任务启动 - Threads.sleep(3000); + @AfterClass + public static void removeLogger() { + appender.removeFromLogger(UserCountScanner.class); + } + + @Test + public void scheduleJob() throws Exception { + // 等待任务执行完毕 + Threads.sleep(2000); // 验证任务已执行 assertEquals(1, appender.getLogsCount()); assertEquals("There are 6 user in database, printed by spring timer job by xml.", appender.getFirstMessage()); - appender.removeFromLogger(UserCountScanner.class); } } -- GitLab