2014-01-10 7 views
0

현재 FitSharp와 dbfit의 .net 구현을 사용하여 Fitnesse를 설정하고 있습니다. 내가 알아낼 수 없습니다 무엇쿼리 문자열에서 fitnesse 변수를 설정하는 방법

java -jar fitnesse-standalone.jar -c "MyTest?test&format=text" 

이 쿼리에 변수 값을 제출하는 방법입니다 :

나는 예를 들면, URL의 제출에서 테스트 또는 스위트를 실행하거나 명령 줄에서하는 방법을 이해 끈.

Where 절에서 언급 된 Fitnesse 변수가있는 Sql 문을 포함하는 테스트가 있고이 변수의 값이 형제 정적 페이지에 정의되어 있으면이 테스트를 실행할 수 있기를 원합니다. 명령 줄에서이 변수에 대한 값을 제출하십시오.이 값은 정적 페이지의 값보다 우선합니다. 다음과 같음 :

java -jar fitnesse-standalone.jar -c "MyTest?test&format=text&${myVar}=abc" 

이 모든 것이 가능합니까?

감사 마크

답변

0

명령 줄에서 변수를 전달하는 방법은 두 가지 모두 포함하는 환경 변수가 있습니다.

(1) 환경 변수를 정의하십시오 (또는 이미 존재하는 것을 식별하십시오). 범용 시스템 변수 (예 : %TMP% 또는 %HOMEPATH%) 또는 사용자 정의 변수 (예 : %JAVA_HOME%)를 사용하거나 직접 만들 수 있습니다. 내 짧은 Fitnesse 런처 (A .CMD 파일)이 있습니다 :

set SEED=%RANDOM% 
set FITNESSE_PORT=9999 
java -jar fitnesse-standalone.jar -p %FITNESSE_PORT% -e 0 

FITNESSE_PORT 변수가 단지 바로 다음 줄에 사용하기 위해 정의된다. 그러나 SEED 변수는 마법을 사용합니다. 세션 당 고유 값을 생성하여 여러 사람이 동시에 동일한 테스트를 실행할 수 있습니다. (이것은 각 사용자가 자신의 FitNesse 서버를 실행한다고 가정하므로 각각 고유 한 세션을 갖습니다.) 그런 다음 시드를 기준으로 ID를 정의하여 테스트를 수행합니다.

!define TestClient (MyTestClient_${SEED}) 

(2) 환경 변수 설정 범위를 FitNesse 러너를 인스턴스화하는 Java 프로세스로 전달하십시오. 이 기술은 당신에게 단지 다른 구현과 정확히 같은 결과를 제공합니다

java -DSEED=%RANDOM% -jar fitnesse-standalone.jar -p %FITNESSE_PORT% -e 0 

이것은 당신이 ${SEED}%SEED% 환경 변수에 대한 액세스를 제공 FitNesse 내에서 정확하게 같은 결과를 얻을 수 있습니다.

자세한 내용은 의 7 부작 시리즈 part 2을 참조하십시오. SimpleTalk.com에 게시 된 FitNesse으로 허용 테스트.