s
import net.grinder.script.Barrier import net.grinder.script.GTest import net.grinder.scriptengine.groovy.junit.GrinderRunner import net.grinder.scriptengine.groovy.junit.annotation.BeforeProcess import net.grinder.scriptengine.groovy.junit.annotation.BeforeThread import net.grinder.scriptengine.groovy.junit.annotation.Repeat import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import java.util.concurrent.CyclicBarrier import static org.junit.Assert.* import static net.grinder.script.Grinder.grinder // import static net.grinder.util.GrinderUtils.* // You can use this if you're using nGrinder after 3.2.3 /** * A simple example using the HTTP plugin that shows the retrieval of a * single page via HTTP. * * This script is automatically generated by ngrinder. * * @author Lindows */ @RunWith(GrinderRunner) class TestBarrier { GTest test = new GTest(1, "upload1") Barrier grinderBarrier @BeforeProcess public static void beforeProcess() { grinder.logger.info("before process."); } @BeforeThread public void beforeThread() { test.record(this, "upload1") grinder.logger.info("before thread."); grinderBarrier = grinder.barrier("集合点1") //等注册完成 sleep(1000) } @Before public void before() { grinder.logger.info("before."); } @Test public void test2() { //等待集合完毕后开始执行 grinderBarrier.await() action() } public void action(){ sleep(1000) } }
end