2016-09-14 2 views
2

JMX 및 생성 된 테스트 데이터 CSV가 꽤 쓸모없는 것으로 보입니다. API 예상대로 매개 변수 정보가없고, http 상태 코드가 없습니다. 응답 매핑 정보 등Swagger Codegen JMeter Swogger Codegen JMeter 테스트 데이터 템플릿

당신은이 문제를 재현하려면 어떤 정의 파일을 취할 수

: http://editor.swagger.io/#/

  • 가 생성 C에서 파일 메뉴
  • 에서 모든 예제를 열려면

    1. 가고 liet menu에서 Jmeter를 클릭하십시오.

    QA 사람들이 걱정할 필요가없고 테스트에만 집중할 수 있도록 API 전체 스켈레톤이있는 JMX를 예상했습니다.

    다른 언어/도구 용으로 제작 한 모든 클라이언트는 Jmeter를 제외하고는 충분히 유용합니다. 여기서 잘못된 것이 있습니까?

  • 답변

    4

    여러 API에 대해 JMeter (JMX)를 생성했으며 몇 가지 문제와주의 사항이 있지만 작동하도록했습니다.

    먼저 호스트에 대체 할

    • 사용자 정의 변수를 생성, 포트, 테스트 케이스는 csvFileName
    • API
    • 방법 당 스레드 그룹 당 JMX는 (POST는 GET ..)
    • 스레드 그룹 당 HTTP 헤더 관리자, 비어 있지만 유용합니다.
    • HTTP 샘플러 각 요청에 대한 매개 변수를 작성을위한 CSV 데이터의
    • 로드 CSV에 정의 된 에러 코드를 검증
    • HTTP 상태 어설

    주의 사항 및 문제점을 제기 값

    • 호스트를 구성에서 제외하지 않고 로컬 호스트로 대체합니다. 변경하거나 명령 줄을 통해 전달해야합니다.
    • 기본 포트 8080을 사용하므로 이로 인해 슬픔이 생깁니다.
    • 루프 카운트는 변수 testCases에 의해 제어됩니다. 당신이

      • 테스트 케이스 변수가 $ {로 테스트 케이스를 정의하는 템플릿에 버그가 명령 줄을 통해이에 전달하려는 경우 JMeter를위한 자신감 코드 세대 템플릿에 버그가 __ P (호스트, 10가)}하지만 $해야한다 {__ P (테스트 케이스, 10)} enter image description here
    • GET 매개 변수 대신 $ {VARIABLE_NAME}으로,이 자신감의 CODEGEN에 template에서 0으로 채울 수 있습니다. 내가 테스트 한 포크에 수정 사항이 있습니다.다른 옵션은 다음은 내가 사용하는 Swagger file입니다

      작동 enter image description here

    예 자신감을 JMX 파일에 문제를 해결 원래 enter image description here 그리고 이후 편집 매개 변수 단지입니다 (에서 수정 echo)와 생성 된 (매개 변수를 수정하여) JMX. 이 JMXRedLine13 Example Test을 사용하여 테스트하고 필요에 따라 매개 변수를 전달했습니다. 예제 매개 변수 여기

    -JtestCases=50 
    -Jhost=mazimi-prod.apigee.net 
    -Jport=80 
    

    과에 전달 YAML

    --- 
    swagger: '2.0' 
    info: 
        version: 1.0.0 
        title: Echo 
        description: | 
        #### Echos back every URL, method, parameter and header 
        Feel free to make a path or an operation and use **Try Operation** to test it. The echo server will 
        render back everything. 
    schemes: 
        - http 
    host: mazimi-prod.apigee.net 
    basePath: /echo 
    paths: 
        /{id}: 
        get: 
         parameters: 
         - name: id 
          in: path 
          description: ID 
          type: string 
          required: true 
         - name: user 
          in: query 
          description: name 
          type: string 
          required: true 
         - name: location 
          in: query 
          description: location 
          type: string 
          required: true 
         responses: 
         200: 
          description: Echo GET 
    

    자신감 CODEGEN에서 업데이트 된 JMeter를 템플릿

    SwaggerCode 세대 난 내 원활한이 작품을 만들기위한 몇 가지 문제가 있기 때문에 issue and pull request을 만들었습니다. 만약 당신이 그것을 더 빨리 사용해야한다면, 포크가 여기 위에 있습니다. https://github.com/richardfriedman/swagger-codegen/commit/5aff601eaccf67ec44bb681816d40a25e5aa20a3

    +0

    고마워요. 그걸 들여다 보니 곧 돌아올 것입니다. –

    +0

    괜찮 았는데 ... 제가 당신의 지점을 가져다가 ... 코드를 만들었습니다. 컨텍스트에 물건을 넣는 것이 좋을 것 같습니다 .. 각 api에 대한 모델 스키마가 미리 채워지도록 body params를 기대했습니다 ... 그럴 수 없습니다. 스키마는 꽤 크고 중첩되어 있으며 요청을 보내는 동안 QA 사람들이 맞춤법 오류를 만들지 않기를 희망합니다. 어떻게 든 완료 될 수 있습니까? –

    +0

    이 템플릿은 많은 개선점을 사용할 수 있다고 생각합니다. 그렇다면 스키마에 정의 된 모든 것이 템플릿에 적용될 수 있습니다. –

    관련 문제