2016-06-16 1 views
0

Beanshell Post Processor를 자식으로 사용하여 jmeter 스크립트를 실행할 때 아래 오류가 발생합니다.오류 - jmeter.util.BeanShellInterpreter : bsh 메서드를 호출하는 중 오류가 발생했습니다 : eval t 소스 파일 : 인라인 평가 :

ERROR - jmeter.util.BeanShellInterpreter: Error invoking bsh method: eval Sourced file: inline evaluation of:``시도 {NEWUSER = vars.get ("prevUsrResponse"); org.json.JSONObject userJSON = new o. . . '': 입력 된 변수 선언 : 클래스 : 아래 서면 JMeter를 2.9에서 실행되는 코드는 네임 스페이스

에 를 찾을 수 없습니다 org.json.JSONObject. 다음 샘플러 요청에 사용될 때

newuser= vars.get("prevUsrResponse"); 
org.json.JSONObject userJSON= new org.json.JSONObject(newuser); 

if(prevUsrJSON.has("User") && custJSON.get("User")!= null) { 
    org.json.JSONObject contactJSON = userJSON.getJSONObject("User"); 

    contactJSON.put("UserType","Private"); 

} 

vars.put("updatedUser", userJSON.toString()); 

${updatedUser} 변수 JSON (또는 값)를 돌려주지 않는다.

답변

0

는 다음과 같은 가능한 이유가있을 수 있습니다

  1. 당신은 JMeter를 클래스 경로에 org.json.JSONObject 클래스를 제공 .JAR이 없습니다.

    • 그것이 .JAR 당신은 관련 수입 라인을 해달라고까지
  2. 을 선택하는 JMeter를의 "lib 디렉토리"폴더

  3. 다시 시작하여 JMeter에 복사 Maven central repo
  4. 에서 항아리 즉를 다운로드합니다. 스크립트의 시작 부분에 추가

    import org.json.JSONObject; 
    

또한 JSON 내장 된 지원을 제공하고 JSON Path PostProcessor이 JSON 응답에서 데이터를 추출하기 위해 제공 JMeter 3.0로 업그레이드 할 수 있습니다. Beanshell을 계속 사용하고 싶다면 json-smart 클래스를 사용하십시오.

+0

JMeter 3.0에서는 BeanShellPostProcessor가 위에서 언급 한 것과 동일한 오류를 나타내며 실패합니다. 제 경우에는 JSON Path PostProcessor를 사용할 수 없습니다. 도움을 청하십시오. – Val

관련 문제