2017-10-13 2 views
1

많은 예제를 보았지만 아무 것도 작동하지 않는 것 같습니다.beanshell에서 쿠키 관리자에 액세스하려면 어떻게해야합니까?

enter image description here

내 변수를 통해 루프에 foreach 문을 사용하여 쿠키 관리자를 사용하게 해요 : : 이 enter image description here

내가 지울으로 Beanshell을 원하는

내가 설정을 가지고 무엇을 각 루프의 쿠키 관리자에있는 쿠키 때문에 내 바에서 다시 추가되지만 액세스 할 수는 없습니다.

나는 시도 다음과 같은 : 나는이 일을 시도

Attempt to resolve method: getCookieManager() on undefined variable or class name: sampler 

:

CookieManager cManager = ctx.getCurrentSampler().getCookieManager(); 

그러나 그 날이 오류를 제공합니다

날이 오류를 제공

import org.apache.jmeter.protocol.http.control.Cookie; 
import org.apache.jmeter.protocol.http.control.CookieManager; 

manager = sampler.getCookieManager(); 

Typed variable declaration : Error in method invocation: Method getCookieManager() not found in class'org.apache.jmeter.protocol.java.sampler.BeanShellSampler' 
,451,515,

편집 :

enter image description here

그리고이 : 그래서 나는이 시도 제안 된 솔루션에 따라

enter image description here

을하지만 그 날이 오류를 제공합니다

2017/10/13 12:26:31 ERROR - jmeter.extractor.JSR223PostProcessor: Problem in JSR223 script JSR223 PostProcessor javax.script.ScriptException: java.lang.NullPointerException: Cannot invoke method clear() on null object 
+0

문제점이 해결 되었습니까? 3.3으로 업그레이드 하시겠습니까? – user7294900

답변

2

Performa로 인해 Beanshell을 사용하지 마십시오. nce이고 이후 버전에서는 제거 될 것입니다.

  • 첫 번째 HTTP 요청에 JSR223 PreProcessor 추가
  • 선택 그루비
  • 확인
  • 추가 다음 코드 "가능한 경우 캐시 컴파일 된 스크립트":

import org.apache.jmeter.protocol.http.control.CookieManager; import org.apache.jmeter.protocol.http.control.Cookie; CookieManager cm = sampler.getCookieManager(); cm.clear();

이가 어떻게 보일까

enter image description here

+0

내가 분명히 알았을 때 나는 다음을 얻는다 : "널 객체에 메서드 clear()를 호출 할 수 없다" – red888

+0

게시물을 사용했는데, 전처리 프로세서가 필요했다 –

+0

후 처리기가 같은 오류를 던져서 포스트 프로세서가 작동하지 않는다고 표시된다 – red888

1

당신은 쿠키 JMeter를 컨텍스트에서 관리를 수행해야 :

CookieManager cm= ctx.getCurrentSampler().getCookieManager(); 

현재는 무관하다 sampler에서 그것을 얻고있다.

관련 문제