문제

여기 내 상황이 있습니다 :

이 작업을 수행하고 싶습니다 :

HTTP 요청을 사용하여 HTTP 상태 코드가 404인지 여부를 확인하기 위해 HTTP 요청을 사용하여 히트를 눌러 히트 목록이 있습니다.

이 작업을 수행했습니다 :

  1. jdbc config 요소가 추가되고 구성되었습니다.
  2. jdbc 요청 샘플러를 추가하고 구성했습니다. 기본적으로 8 열이있는 테이블을 반환하는 SELECT 문입니다. 나는 '변수 이름'필드에 8 개의 쉼표로 구분 된 변수를 제공하므로 JDBC 요청의 결과를 이러한 변수 이름으로 식별 할 수 있습니다.
  3. 은 '서버 이름 또는 IP'필드에 해당 변수 $ {URL} 중 하나를 사용하는 HTTP 요청 샘플러를 만들었습니다.
  4. JDBC 요청이 완벽하게 작동하고 행의 무리가있는 테이블을 반환하지만 HTTP 요청 샘플러가 JDBC 요청 결과에서 변수를 선택하지 않는다는 것입니다. HTTP 요청은 '결과 트리보기'에서 다음과 같습니다.

    GET http://${url}/
    
    .

    이 솔루션을 시도했습니다 :

    1. '파일에 응답을 파일에 저장 "청취자에게 JDBC 요청에 추가하십시오. 이것은 CSV가 아닌 '.plain'유형의 파일을 만듭니다. CSV는 CSV 데이터 세트 구성을 생성하여 CSV 파일을 활용할 수있었습니다. 따라서이 시도가 실패했습니다.
    2. 위의 파일 이름을 항상 'C : \ jmeTertest \ data.csv'를 사용하려고 시도했습니다. 그러나 'C : \ \ jmetertest \ data.csv1.plain'이라는 새 파일을 만드는 것이 끝납니다. 이 시도도 실패했습니다.
    3. HTTP 요청의 서버 이름 필드에서 URL 열을 $ {URL_1}으로 참조하려고했습니다. 그것은 일했습니다. 그러나 문제는 결과 트리에서 모든 요청이 결과 집합의 첫 번째 행에서만 URL에 대해 가기 때문입니다. 위의 $ {URL_1}에 지정된 행 번호 '_1'때문임을 봅니다. 누군가가 '_1'을 매개 변수를 루프 할 수있는 변수로 (아마 '카운터'요소를 사용하여) 할 수있는 방법을 제안 할 수있는 경우에 사용할 수 있습니다. 참조 이름 '루프 카운터'로 카운터 구성 요소를 만들었습니다. 및 HTTP 요청의 서버 이름 필드에 이것을 사용했습니다.

      $ {URL _ ( "$ {loopcounter}")}}}}}

    4. 그러나 이제는 HTTP 요청이 Lamer :

      GET http://${url_("${loopCounter}")}/
      
      .

      이것은 작동하지 않았습니다.

      솔루션 3은 행 번호의 매개 변수화를 해결할 수있는 경우에만 더 많은 일을 할 수 있습니다. 나는 JMeter 플러그인 제안에도 열려 있습니다. 우리가 계속하려는 다른 것을 업데이트 할 것입니다.

      p.s. 내 질문이 어쨌든 분명하지 않은지 알려주십시오.

도움이 되었습니까?

해결책

컨트롤러의 변수가 JDBC 샘플러에서 얻은 URL 변수 인 foreach 컨트롤러 (상위)에서 HTTP 샘플러를 래핑하려고 시도 했습니까?

또한 foreach의 출력 변수가 HTTP 샘플러에서 사용되는 변수가됩니다.

그런 식으로 인덱스의 시작 부분에서 끝까지 각 변수를 반복하고 샘플러를 매번 샘플러를 실행합니다.

다른 팁

파일 'Listener에 대한 응답을 저장 "Checkbox"를 선택하십시오. "접미사 및 접두사를 추가하지 마십시오"를 선택하십시오.이 두 가지 옵션을 확인하면 정확한 로그 파일 이름을 얻을 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top