ngrinder groovy script 개발 환경 문의

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

ngrinder groovy script 개발 환경 문의

babo72
안녕하세요,

IntelliJ 환경에 ngrinder 용 groovy script 개발환경 구축과 관련해 문의 드립니다.

IntelliJ 에서 maven과 groovy 개발을 위한 환경은 모두 제대로 갖춘듯한데,
ngrinder 용 groovy script 를 실행하면 아래처럼 오류가 납니다.

원인이 뭔지 조언 부탁드리겠습니다.
감사합니다.


http://www.cubrid.org/wiki_ngrinder/entry/import-groovy-maven-project-in-intellij
*** 아래 진행은 위 URL 페이지를 참고로 진행하였습니다.


0. MacOS 에 IntelliJ 14.1.3, groovy2.4.3 환경

1. IntelliJ 에서 maven 프로젝트 생성 - maven-archetype-quickstart
2. 생성된 프로젝트에 groovy Framework Support 추가
3. 다음 코드로 groovy script 테스트 실행 => 정상 실행


import org.junit.Test

import static junit.framework.TestCase.assertTrue

class GTest {

    @Test
    public void a() {
        assertTrue(true);
    }
}

4. ngrinder 사용을 위해 pom.xml 수정
5. 다음 코드로 grinder 테스트 실행 => 실행 오류 (컴파일 정상)


...
@RunWith(GrinderRunner)
class TestRunner {
    public static GTest test
    public static HTTPRequest request

    @BeforeProcess
    public static void beforeProcess() {
        HTTPPluginControl.getConnectionDefaults().timeout = 6000
        test = new GTest(1, "www.google.com")
        request = new HTTPRequest()
        ...


6. JUnit 런처에 javaagent VM 옵션 주고 테스트 실행 => 실행 오류 (컴파일 정상)

/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/bin/java -ea -javaagent:/Users/babo72/.m2/repository/net/sf/grinder/grinder-dcr-agent/3.9.1/grinder-dcr-agent-3.9.1.jar -Didea.launcher.port=7534 "-Didea.launcher.bin.path=/Applications/IntelliJ IDEA 14 CE.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath "/Applications/IntelliJ IDEA 14 CE.app/Contents/lib/idea_rt.jar:/Applications/IntelliJ IDEA 14 CE.app/Contents/plugins/junit/lib/junit-rt.jar..." com.intellij.rt.execution.application.AppMain com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 mvn_a.TestRunner

java.lang.TypeNotPresentException: Type net.grinder.scriptengine.groovy.junit.GrinderRunner not present
        at sun.reflect.annotation.TypeNotPresentExceptionProxy.generateException(TypeNotPresentExceptionProxy.java:46)
        at sun.reflect.annotation.AnnotationInvocationHandler.invoke(AnnotationInvocationHandler.java:83)
        at com.sun.proxy.$Proxy2.value(Unknown Source)
        at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
        at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
        at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
        at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
...

Reply | Threaded
Open this post in threaded view
|

Re: ngrinder groovy script 개발 환경 문의

junoyoon
Administrator
IntelliJ의 경우는 Eclipse 와는 달리, provided scope로 maven dependency를 걸 경우, 해당 dependency가 classpath로 잡히지 않습니다.
이에 대한 해결 방법은 IntelliJ 로 동작 시킬 때만 해당 dependency를 compile 로 하도록 설정 하여야 하는데요. 
다음과 같이 profile을 하나 만드시고 이를 activate 시킨 상태에서 테스트를 하셔야 합니다.


<profiles>
        <profile>
            <id>intellij</id>
            <dependencies>
                <!-- the dependency to ngrinder-groovy will not be scoped as
                    provided when the intellij profile is activiated -->
                <dependency>
                        <groupId>org.ngrinder</groupId>
                        <artifactId>ngrinder-groovy</artifactId>
                        <version>3.3</version<!-- provide the appropriate version here -->
                </dependency>
            </dependencies>
        </profile>
</profiles>

2015-06-03 0:02 GMT+09:00 babo72 [via ngrinder] <[hidden email]>:
안녕하세요,

IntelliJ 환경에 ngrinder 용 groovy script 개발환경 구축과 관련해 문의 드립니다.

IntelliJ 에서 maven과 groovy 개발을 위한 환경은 모두 제대로 갖춘듯한데,
ngrinder 용 groovy script 를 실행하면 아래처럼 오류가 납니다.

원인이 뭔지 조언 부탁드리겠습니다.
감사합니다.


http://www.cubrid.org/wiki_ngrinder/entry/import-groovy-maven-project-in-intellij
*** 아래 진행은 위 URL 페이지를 참고로 진행하였습니다.


0. MacOS 에 IntelliJ 14.1.3, groovy2.4.3 환경

1. IntelliJ 에서 maven 프로젝트 생성 - maven-archetype-quickstart
2. 생성된 프로젝트에 groovy Framework Support 추가
3. 다음 코드로 groovy script 테스트 실행 => 정상 실행


import org.junit.Test

import static junit.framework.TestCase.assertTrue

class GTest {

    @Test
    public void a() {
        assertTrue(true);
    }
}

4. ngrinder 사용을 위해 pom.xml 수정
5. 다음 코드로 grinder 테스트 실행 => 실행 오류 (컴파일 정상)


...
@RunWith(GrinderRunner)
class TestRunner {
    public static GTest test
    public static HTTPRequest request

    @BeforeProcess
    public static void beforeProcess() {
        HTTPPluginControl.getConnectionDefaults().timeout = 6000
        test = new GTest(1, "www.google.com")
        request = new HTTPRequest()
        ...


6. JUnit 런처에 javaagent VM 옵션 주고 테스트 실행 => 실행 오류 (컴파일 정상)

/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/bin/java -ea -javaagent:/Users/babo72/.m2/repository/net/sf/grinder/grinder-dcr-agent/3.9.1/grinder-dcr-agent-3.9.1.jar -Didea.launcher.port=7534 "-Didea.launcher.bin.path=/Applications/IntelliJ IDEA 14 CE.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath "/Applications/IntelliJ IDEA 14 CE.app/Contents/lib/idea_rt.jar:/Applications/IntelliJ IDEA 14 CE.app/Contents/plugins/junit/lib/junit-rt.jar..." com.intellij.rt.execution.application.AppMain com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 mvn_a.TestRunner

java.lang.TypeNotPresentException: Type net.grinder.scriptengine.groovy.junit.GrinderRunner not present
        at sun.reflect.annotation.TypeNotPresentExceptionProxy.generateException(TypeNotPresentExceptionProxy.java:46)
        at sun.reflect.annotation.AnnotationInvocationHandler.invoke(AnnotationInvocationHandler.java:83)
        at com.sun.proxy.$Proxy2.value(Unknown Source)
        at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
        at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
        at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
        at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
...




If you reply to this email, your message will be added to the discussion below:
http://ngrinder.642.n7.nabble.com/ngrinder-groovy-script-tp1811.html
To start a new topic under ngrinder-user-kr, email [hidden email]
To unsubscribe from ngrinder-user-kr, click here.
NAML