나는 셀레늄과 통합 된 jbehave를 가지고 있습니다. 아래 명령 줄을 통해 테스트를 실행합니다. C:\eclipse_workspace\MySeleniumTests>mvn clean test -Dwebdriver.firefox.bin="C:\Program Files\Mozilla\Firefox\firefox.exe"
jbehave는 특정 이야기 만 실행합니다.
jbehave-maven-plugin을 사용했습니다. Maven은 소스 디렉토리에서 모든 Embedder impl (내 사례의 JunitStories)을 선택하고 하나씩 실행합니다. 그 구성은 pom.xml에 <include>**/*Stories.java</include>
입니다.
그런 다음 지정된 dir
에있는 관련 .story 파일을 찾아 실행합니다. 말해봐, 나는 하나의 스토리 파일 두 개를 가지고있다. 스토리와 두 개의 스토리. 둘 다 실행된다.
시간이 지남에 따라 스토리 파일 수가 늘어날 것입니다. 특정 스토리 파일을 실행하려는 경우에만이 작업을 수행 할 수 있습니까? 특정 이야기 파일 이름을 런타임 매개 변수로 전달할 생각이지만 그렇게하려면 무엇이 필요한지 알지 못합니다.
mvn clean test -Dwebdriver.firefox.bin="C:\Program Files\Mozilla\Firefox\firefox.exe" -Djbehave.story.name=<story filename without extension (wildcards are supported)>
또한 사용해야하는 사용자 정의 테스트 스위트 구현 :
나는 당신의 코드를 시도했지만 반환하는 storiesToRun 크기는 0으로 생각했다. 나는 그것을 얻고있다. – SacTan
@SachinB는 코드를 분석하지 않고는 말할 수 없습니다. –
@ 카이저, JBehaveRunnerStories를 사용하여 JUnitStories {}를 확장하고 Configuration 구성(), InjectableStepsFactory stepsFactory() 및 제공 한 메서드를 재정의합니다. 그것은 실행 구성에서 매개 변수의 이야기를 가지고 있지만 (String storyName : storyNames) for 루프에서 왔을 때 반복문은 두 번만 전달되었지만 반환 storyToRun이 0 일 때 반복 횟수는 0입니다. – SacTan