2016-11-04 11 views
2

필자의 소규모 기술 전문가 동료들이 명령 행을 사용하지 않고도 테스트를 실행할 수 있도록 실행 가능한 jar 파일을 생성합니다. 테스트하려는 기능을 선택하고 단계 라이브러리가 패키지 된 간단한 GUI입니다.Cucumber JVM의 동적 피쳐 파일 할당

작은 문제 하나만 제외하면 문제가 없습니다. 지금은 기능 파일을 어디에서 호출해야하는지 지정해야합니다. 지금은 features= {"c://Features"} 폴더를 찾고 거기에있는 모든 것을 실행하도록 설정했습니다. 이 기능을 사용하여 기능 폴더를 만들지 않아도되고 GUI를 통해 생성 할 수있는 변수를 사용하여 원하는 파일을 가리킬 수 있습니다.

현재 해결 방법은 내가 선택한 파일을 읽고 각 테스트 후에 정리 된 기능 폴더 내에 복사본을 만드는 것입니다. 이는 최적의 방법이 아니므로 사용자가 원하는 폴더를 지정하고 해당 폴더에서 기능 파일을 실행하도록 허용하고 싶습니다. 일부 고객의 경우 C 드라이브를 수정할 수 없기 때문입니다. 내가 선택한 폴더에 여전히 쓸 수 있으며 임시 파일 복사본을 만들 수 있습니다. 하지만 주석을 변수에 전달할 수는 없지만 대신이 오류가 발생합니다.

The value for annotation attribute CucumberOptions.features must be a constant expression 
+0

보기 [해당 솔루션] (http://stackoverflow.com/questions/9663117/how-do-i-set-the-path-to-my-cucumber-features-using-cucumber-junit)에서 모아서 docs. – ekostadinov

답변

2

QMetry Automation Framework을 사용하면 작은 오이를 실행할 수 있습니다. QAF gherkin client을 사용하면 xml 구성 파일에서 실행되도록 기능을 구성 할 수 있습니다. 필터를 적용 할 수있을뿐만 아니라 실행할 dir 또는 기능 파일 중 하나를 지정할 수도 있고 다른 플랫폼에서 실행되도록 테스트를 구성 할 수도 있습니다. 다음은 샘플 XML 구성 파일

<test name="Gherkin-QAF-Test"> 
    <parameter name="scenario.file.loc" value="resources/features" /> 
    <classes> 
     <class name="com.qmetry.qaf.automation.step.client.gherkin.GherkinScenarioFactory" /> 
    </classes> 
</test> 

당신이 명령 줄 인수로 또는 속성의 파일에서 scenario.file.loc을 설정할 수 있습니다 이상 더있다.

+0

고마워요. 이건 내가 찾던 일이야. – Jrawr