Skip to content
This repository was archived by the owner on Jan 3, 2020. It is now read-only.

nGrinder Script

Min Kuk Jo edited this page Aug 18, 2018 · 1 revision
import static net.grinder.script.Grinder.grinder
import static org.junit.Assert.*
import static org.hamcrest.Matchers.*
import net.grinder.plugin.http.HTTPRequest
import net.grinder.plugin.http.HTTPPluginControl
import net.grinder.script.GTest
import net.grinder.script.Grinder
import net.grinder.scriptengine.groovy.junit.GrinderRunner
import net.grinder.scriptengine.groovy.junit.annotation.BeforeProcess
import net.grinder.scriptengine.groovy.junit.annotation.BeforeThread
// import static net.grinder.util.GrinderUtils.* // You can use this if you're using nGrinder after 3.2.3
import org.junit.Before
import org.junit.BeforeClass
import org.junit.Test
import org.junit.runner.RunWith

import java.util.Date
import java.util.List
import java.util.ArrayList

import HTTPClient.Cookie
import HTTPClient.CookieModule
import HTTPClient.HTTPResponse
import HTTPClient.NVPair

/**
 * 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 admin
 */
@RunWith(GrinderRunner)
class TestRunner {

	public static GTest test
	public static HTTPRequest request
	public static NVPair[] headers = [new NVPair("postId", "1"), new NVPair("userId", "1")]
	public static NVPair[] params = []
	public static Cookie[] cookies = []

	@BeforeProcess
	public static void beforeProcess() {
		HTTPPluginControl.getConnectionDefaults().timeout = 6000
		test = new GTest(1, "slb-777197.ncloudslb.com")
		request = new HTTPRequest()
		test.record(request)
		grinder.logger.info("before process.");
	}

	@BeforeThread 
	public void beforeThread() {
		test.record(this, "test")
		grinder.statistics.delayReports=true;
	}
	
	@Before
	public void before() {
		request.setHeaders(headers)
		cookies.each { CookieModule.addCookie(it, HTTPPluginControl.getThreadHTTPClientContext()) }
	}

	@Test
	public void test1(){
	
		int num = Math.abs(new Random().nextInt() % 10) + 1
	
		HTTPResponse result = request.GET("http://slb-777197.ncloudslb.com/v1/comments?cursor=1&pageSize=10&pageNo="+num+"&orderType=ASC", headers, params)

		assertThat(result.statusCode, is(200));
	}
	
	@Test
	public void test2(){
		
		int num1 = Math.abs(new Random().nextInt() % 50) + 1
		int num2 = Math.abs(new Random().nextInt() % 50) + 1
	
		HTTPResponse result = request.GET("http://slb-777197.ncloudslb.com/react/1/"+num1+"/"+num2+"/Pst", params)

		assertThat(result.statusCode, is(200));
		
	}
}

Clone this wiki locally