2016-08-04 4 views
3

이것은 내가 으로 Beanshell 샘플러에서 실행하기 위해 노력하고있어 코드 :: 오류 호출 BSH 방법 : 평가 t 전래 파일 : 인라인 평가 :``

import java.lang.*; 
import java.util.*; 

String name_lead = vars.get("Name_lead"); 

String[] lead = name_lead.split("\\s+"); 
//vars.put("myname",lead[0]); 
//vars.put("myname1",lead[1]); 
//vars.put("myname2",lead[2]); 
for(int i=1; i<=Integer.parseInt(vars.get("title_pass_matchNr")); i++) 
{ 
    String title = vars.get("title_pass_"+i); 
    String fname = vars.get("firstname_"+i); 
    String lname = vars.get("lastname_"+i); 
    String[] fn = fname.split(""); 
//vars.put("title",title); 
//vars.put("fname",fn[1]); 
//vars.put("lname",lname); 

    if(lead[i-1].equals(title) && lead[i].equals(fn[1]) && lead[i+1].equals(lname)) 
    { 
     vars.put("namep",lead[i]); 
    } 
} 

하지만 다음 받고 있어요 오류 :

Response message: org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval Sourced file: inline evaluation of: ``import java.lang.; import java.util.; String name_lead=vars.get("Name_lead"); . . . ''

나는 그것을 이해할 수 없다. 누군가 나를 도울 수 있습니까? 이 문제를 어떻게 해결할 수 있습니까?

name_lead보다 사람이 읽을 수있는 스택 트레이스에이 Error invoking bsh method 오류를 변환하는 좋은 방법이 있습니다 정규식 추출

+0

문제 해결에 대한 자세한 내용은 How to Use BeanShell: JMeter's Favorite Built-in Component 설명서를 참조하십시오? –

+0

메신저 beanshell 샘플러에서 뭐하는거야 .. 생각하지 않는다면 – shett

+0

내가 디버그를 시도했는데 controller.but를 만들 수 없다면 실수가있다. – shett

답변

10

를 사용하여 복용 .. 그리고 미스터 P 싱 같은 것을 가지고

하십시오 try block 등으로 코드를 넣어
try { 
    //your code here 
} 
catch (Throwable ex) { 
    log.error("Error in Beanshell", ex); 
    throw ex; 
} 

당신이 jmeter.log 파일

또 다른 방법으로 예외 세부 사항을 볼 수있게하는을 추가하는 것입니다 이런 식으로지시문은 Beanshell 스크립트의 맨 처음에 있습니다. 이 방법을 사용하면 stdout에 많은 디버깅 출력을 얻을 수 있습니다.

는 JMeter가 테스트 스크립트 개발으로 Beanshell를 사용하여 코드가 클래스/메소드로 묶여 왜