calling TestRunner 에서 에러가 발생합니다.

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

calling TestRunner 에서 에러가 발생합니다.

jinyoungpark
vUser를 1로 하고, 나머지 전체 기본값으로 둔채 테스트를 하려고하니 계속 아래와 같은 에러가 발생합니다.

net.grinder.scriptengine.jython.JythonScriptExecutionException: Java exception calling TestRunner
        result = request1.GET("https://주소는 보안상 삭제", params)
        File "/home/ec2-user/.ngrinder_agent/file-store/admin/current/TestRunner.py", line 47, in __call__
net.grinder.plugin.http.TimeoutException: Connection establishment timed out
        at HTTPClient.HTTPConnection.getSocket(HTTPConnection.java:3448) ~[grinder-httpclient-3.9.1.jar:na]
        at HTTPClient.HTTPConnection.sendRequest(HTTPConnection.java:3089) ~[grinder-httpclient-3.9.1.jar:na]
        at HTTPClient.HTTPConnection.handleRequest(HTTPConnection.java:2883) ~[grinder-httpclient-3.9.1.jar:na]
        at HTTPClient.HTTPConnection.setupRequest(HTTPConnection.java:2675) ~[grinder-httpclient-3.9.1.jar:na]
..
..
..
..


스크립트는 기본으로 생성되는 스크립트를 사용하였는데 무슨 문제가 있을까요?
아무리 구글링 해보아도 모르겠어서 이렇게 글 남겨봅니다 ㅜ
참고로 nGrinder3.4 버전을 사용중입니다.

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 = []
        public static NVPair[] params = []
        public static Cookie[] cookies = []

        @BeforeProcess
        public static void beforeProcess() {
                HTTPPluginControl.getConnectionDefaults().timeout = 6000
                test = new GTest(1, "주소는 보안상 삭제")
                request = new HTTPRequest()
                grinder.logger.info("before process.");
        }

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

        @Test
        public void test(){
                HTTPResponse result = request.GET("https://주소는 보안상 삭제", params)

                if (result.statusCode == 301 || result.statusCode == 302) {
                        grinder.logger.warn("Warning. The response may not be correct. The response code was {}.", result.statusCode);
                } else {
                        assertThat(result.statusCode, is(200));
                }
        }
}
Reply | Threaded
Open this post in threaded view
|

Re: calling TestRunner 에서 에러가 발생합니다.

songeunwoo
안녕하세요
에이전트에서 해당 타겟 서버로 ping은 잘 나가는지 확인 부탁 드릴게요.