Geekin 기능 파일을 JSON으로 구문 분석하기위한 예쁜 접근법



작은 오이는 자동화 테스트를 실행하기 위해 오이를 이해할 수있는 일반 영어 형식입니다. Gherkin 기능 파일 언어는 비즈니스에서 읽을 수있는 도메인 별 언어입니다.

이 코드는 Gherkin 기능 파일을 JSON Formatter 프레임 워크를 기반으로 JSON 형식으로 변환합니다.

JSON 파서 메인에 작은 오이

// JSON 변환 메인 클래스의 Gherkin 기능 파일

public class GToJRun {

// 여기에 Gherkin 경로를 설정하여 피쳐 파일 및 JSON 파일 경로를 가져옵니다.

// JSON 형식으로 작성

개인 정적 문자열 featurePath = "c : \ Json \ login.feature";

개인 정적 String jasonPath = "c : \ Json \ login.json";

// JSON 출력에 대해 예쁜 / 못생긴 형식으로 설정합니다. 기본적으로 꽤 예쁘다.

정적 GtoJCore testG = 새로운 GtoJCore ( "pretty");

public static void main (String [] args) {

testG.gherkinTojson (featurePath, jasonPath);

}

}

핵심 클래스는 JSON 포맷터 프레임 워크를 기반으로합니다. 더 큰 기능 파일의 총 처리 시간을 확인하려면 변환 시간을 얻을 수 있습니다.

JSON Parser Core에 작은 오이

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileWriter;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.UnsupportedEncodingException;

import gherkin.formatter.JSONFormatter;

import gherkin.formatter.JSONPrettyFormatter;

import gherkin.parser.Parser;

import gherkin.util.FixJava;

// Gherkin from Json 파서 코어 파일.

public class GtoJCore {

전용 문자열 형식;

// 총 실행 시간을 얻으려면 (선택 사항)

긴 startTime = System.currentTimeMillis ();

public GtoJCore (String outFormat) {

this.format = outFormat;

}

public String getOutFormat () {

반환 형식;

}

공용 무효 gherkinTojson (문자열 fPath, 문자열 jPath) {

// 기능 파일 및 JSON 파일 경로를 정의합니다.

문자열 gherkin = null;

시도 {

gherkin = FixJava.readReader (새로운 InputStreamReader (

새로운 FileInputStream (fPath), "UTF-8"));

} catch (FileNotFoundException e) {

System.out.println ( "지형지 물 파일을 찾을 수 없음");

// e.printStackTrace ();

} catch (UnsupportedEncodingException e) {

e.printStackTrace ();

} catch (RuntimeException e) {

e.printStackTrace ();

}

StringBuilder json = new StringBuilder ();

JSONFormatter 포맷터.

// 예쁜 또는 추한 선택, 예쁜 기본적으로

if (format.equalsIgnoreCase ( "ugly")) {

formatter = 새 JSONFormatter (json); // 예쁜 것은 아닙니다.

} else {

formatter = 새 JSONPrettyFormatter (json); // 예쁜

}

파서 파서 = 새로운 파서 (포매터);

parser.parse (gherkin, fPath, 0);

formatter.done ();

formatter.close ();

System.out.println ( "json 출력 : n"+ json + " '");

// 마지막으로 플러시 및 닫기

시도 {

FileWriter file = 새 FileWriter (jPath);

file.write (json.toString ());

file.flush ();

file.close ();

} catch (IOException e) {

e.printStackTrace ();

}

long endTime = System.currentTimeMillis ();

//선택 과목

System.out.println ( "n 총 실행 시간 :"+ (endTime - startTime)

+ "밀리 초");

}

}

이것은 메인 클래스에서 선택할 수있는 꽤 또는 못생긴 JSON 형식을 제공합니다. 기능 파일을 읽기위한 파일 경로와 JSON 파일을 모두 출력 옵션을 사용하여 꽤나 못 생겨서 출력 형식을 선택할 수 있습니다.

이전 기사

Mac 및 Windows 용 Best VPN Services (2019 년 유료 및 무료)

Mac 및 Windows 용 Best VPN Services (2019 년 유료 및 무료)

VPN 서비스는 동일한 Wi-Fi 핫 스폿의 모든 사용자가 웹 트래픽을 가로채는 것을 방지합니다. 특히 공용 Wi-Fi 네트워크를 사용하는 여행자에게 유용합니다. 컴퓨터의 IP 주소를 숨기는 것은 VPN의 또 다른 기능이므로 광고주에게 온라인으로 추적하기가 어렵습니다. PC 및 Mac 용 VPN, 무료 VPN 및 유료 VPN 서비스가 있으며 가격이 책정됩니다. 그러나 가격은 초점을 맞추는 요인이 아닙니다. 대부분의 회사는 Windows VPN 소프트웨어 및 Mac VPN 응용 프로그램에 대한 무료 평가판을 제공하고, 이를 활용하고 지불하기 전에 원하는 서비스를 제공하는지 확인하십시오. Mac 및 Window...

다음 기사

iPhone 및 Android 용 7 개의 최고의 무선 이어 버드

iPhone 및 Android 용 7 개의 최고의 무선 이어 버드

페이스 북 지저귀다 Pinterest WhatsApp 전보 우리는 평생 동안 어떤 시점에서 "무선 헤드폰"을 사용했지만 거의 모든 단일 문제는 두 개의 이어 버드를 연결하는 일종의 와이어를 가지고 있다는 사실입니다. 글쎄, 이것은 우리 목구멍을 감싸는 와이어가있는 것을 좋아하지 않으므로, 우리 모두가 원하는 "무선"이 아닙니다. 그것은 우리가 무선 이어 버드에서 기대하는 상당히 편리하지 않습니다. 시대는 변하고 기술은 발전했으며 오늘날에는 "진정한 무선 이어 버드"라는 완전히 새로운 범주의 헤드폰이 있습니다. 이름에서 알 수 있듯이 두 개의 이어 피스를 연결하는 케이블이 없기 때문에 사실 무선입니다. 따라서 목 뒤에있는 귀찮은 와이어에 대해 걱정할 필요가 없습니다. 이러한 기능을 통해 무선 헤드폰을 통해 항상 편리하게 사용...