yaml 파일 형식

1. yaml 파일 형식

api-version: 버전
name: 제목
databases:
  - kind: postgresql
    code-stub: '베이스라인 코드'
  - kind: mariadb
    code-stub: '베이스 라인코드'
  - kind: oracle
    code-stub: '베이스 라인 코드'
schema:
  tables:
    - name: 테이블 이름
      columns:
        - name: 컬럼 이름
          type: 컬럼 타입
          comment: '컬럼설명'
        - name: 컬럼이름
          type: datetime
          format : 'yyyy-mm-dd hh24:mi:ss'
          comment : '컬럼설명
    - name: 테이블 이름
      columns:
        - name: 컬럼 이름
          type: 컬럼 타입
          comment: '컬럼 설명'
        - name: 컬럼이름
          type: datetime
          format : 'yyyy-mm-dd hh24:mi:ss'
          comment : '컬럼설명'
  expected:
    columns:
      - name: 컬럼 이름
        type: 컬럼 타입
      - name: 컬럼 이름
        type: 컬럼 타입

cases:
  - title: 테스트 케이스 제목
    description: 테스트 케이스 설명
    example: true|false
    expected:
      data:
        - ['첫번째 컬럼 결과 값','두번째 컬럼 결과 값']
        - ['첫번째 컬럼 결과 값','두번째 컬럼 결과 값']
    tables:
      - name: 테이블 이름
        data:
          - ['첫번째 컬럼 입력 값', '첫번째 컬럼 입력 값']
          - ['첫번째 컬럼 입력 값', '첫번째 컬럼 입력 값']

  - title: 테스트 케이스 제목
    description: 테스트 케이스 설명
    expected:
      data:
        - ['첫번째 컬럼 결과 값','두번째 컬럼 결과 값']
        - ['첫번째 컬럼 결과 값','두번째 컬럼 결과 값']
    tables:
      - name: 테이블 이름
        data:
          - ['첫번째 컬럼 입력 값', '첫번째 컬럼 입력 값']
          - ['첫번째 컬럼 입력 값', '첫번째 컬럼 입력 값']

solutions:
  postgresql:
    - type: evaluation
      code: "솔루션 SQL"
  oracle:
    - type: evaluation
      code: "솔루션 SQL"
  mariadb:
    - type: evaluation
      code: "솔루션 SQL"

2. api-version : 버전

v(카운트)
  • 버전은 위와 같이 작성하면 되며, 수정할 때 마다 카운트를 늘려주시면 됩니다.

2. name : 문항 제목

  • 문항의 제목을 작성해주세요.

3. database : 베이스라인 코드

databases:
  - kind: postgresql
    code-stub: '베이스라인 코드'
  - kind: mariadb
    code-stub: '베이스 라인코드'
  - kind: oracle
    code-stub: '베이스 라인 코드'
  • 응시자가 평가 화면에 들어오면 볼 수 있는 초기 코드입니다.

  • 베이스 라인 코드 : 따옴표를 작성하세요.

4. schema : 스키마

schema:
  tables:
    - name: 테이블 이름
      columns:
        - name: 컬럼 이름
          type: 컬럼 타입
          comment: '컬럼 설명'
        - name: 컬럼이름
          type: datetime
          format : 'yyyy-mm-dd hh24:mi:ss'
          comment : '컬럼설명'
    - name: 테이블 이름
      columns:
        - name: 컬럼 이름
          type: 컬럼 타입
          comment: '컬럼 설명'
        - name: 컬럼이름
          type: datetime
          format : 'yyyy-mm-dd hh24:mi:ss'
          comment : '컬럼설명'
  expected:
    columns:
      - name: 컬럼 이름
        type: 컬럼 타입
  • 테이블 이름 : lower_camel_case로 따옴표 없이 작성하세요.

  • 컬럼 이름 : lower_camel_case로 따옴표 없이 작성하세요.

  • 컬럼 타입 : 소문자로 따옴표 없이 작성하세요.

  • format : 컬럼 타입이 datetime인 경우 반드시 'yyyy-mm-dd hh24:mi:ss'를작성하세요.

  • expected : 기대 값에 대한 schma 입니다.

5. cases : 테스트케이스

cases:
  - title: 테스트 케이스 제목
    description: 테스트 케이스 설명
    example: true|false
    expected:
      data:
        - ['첫번째 컬럼 결과 값','두번째 컬럼 결과 값']
        - ['첫번째 컬럼 결과 값','두번째 컬럼 결과 값']
    tables:
      - name: 테이블 이름
        data:
          - ['첫번째 컬럼 입력 값', '첫번째 컬럼 입력 값']
          - ['첫번째 컬럼 입력 값', '첫번째 컬럼 입력 값']

  - title: 테스트 케이스 제목
    description: 테스트 케이스 설명
    expected:
      data:
        - ['첫번째 컬럼 결과 값','두번째 컬럼 결과 값']
        - ['첫번째 컬럼 결과 값','두번째 컬럼 결과 값']
    tables:
      - name: 테이블 이름
        data:
          - ['첫번째 컬럼 입력 값', '첫번째 컬럼 입력 값']
          - ['첫번째 컬럼 입력 값', '첫번째 컬럼 입력 값']
  • 테스트 케이스 제목 : 응시자 화면에 노출되는 테스트 케이스 제목입니다.

  • 테스트 케이스 설명 : 응시자 화면에 노출되지 않습니다.

  • example : 사용자 화면에 노출할지 여부입니다.

  • expected : 기대 값을 입력합니다. 응시자가 입력한 SQL 실행 결과가 아래와 동일해야 합니다. Row 의 순서는 관계 없습니다.

  • table : 테스트 케이스 용 테이블의 값입니다.

6. solutions : 정답

solutions:
  postgresql:
    - type: evaluation
      code: '솔루션 SQL'
  oracle:
    - type: evaluation
      code: '솔루션 SQL'
  mariadb:
    - type: evaluation
      code: '솔루션 SQL'
  • 문제의 해답을 DBMS 별로 작성해주세요.

Last updated

Was this helpful?