2016-08-15 8 views
2

xunit.console.exe를 사용하여 Jenkins를 사용하여 실행중인 C#/Selenium/Specflow 테스트 제품군이 있습니다. 이 테스트를 다른 환경 (Test/QA/Prod 등)으로 지정해야하며 명령 줄 매개 변수를 사용하고 싶습니다. "%WORKSPACE%\packages\xunit.runner.console.2.1.0\tools\xunit.console""%WORKSPACE%\[MyProject]\bin\Debug\eDC6.Test.Specs.dll" -xml test_output.xmlxunit.runner.console을 사용하여 사용자 지정 매개 변수를 지정하는 방법

과 같은 추가 매개 변수를 포함시킬 :

내가 부르고 배치 명령은 는 "-env = PROD는" 특정 환경에 그 일을 가리 키도록합니다.

나는 이것을 더 나은 방법으로 공개하고 있습니다.

답변

1

IIRC 저는이 질문을 코드 렉스 시대의 xunit 포럼에서 2010 년 이전 기능 요청으로 요청했지만 자체적으로 대답했습니다 (아마도 CodeRush의 테스트 러너의 맥락에서 묻고 있었을 것입니다). 어느 쪽이든 위의 대답은 그 당시의 답변이었고 테스트 주자이자 CI 도구 중립적 인 것처럼 여전히 의미가 있습니다.

일반적으로 이는 환경 변수에 의해 처리됩니다 (예 : GetEnvironmentVariable).

Visual Studio와 같은 주자를 사용하려는 사람들은 그에 따라 조정해야한다는 것을 고려해야합니다. .NET Core는 이러한 환경 선택기를 기본적으로 지원합니다.이 기능은 편집자 및 기타 툴링에서 시간이 지남에 따라 노출 될 가능성이있는 유용한 접근 방식 일 수 있습니다.

마지막으로 가장 낮은 수준의 해킹은 .config 설정 (예 : <DllName>.dll.config)에 붙어있을 수 있으며이를 통해 전달할 수 있습니다. 추가 명령 줄이 나에게 더 많은 유연성 제공이 솔루션에 대한

1

:

"%의 작업 공간 %의 \ 패키지 \ xunit.runner.console.2.1.0 \ 도구 \ xunit.console" "%의 작업 공간 %를 [MyProject를 ] \ bin \ Debug \ eDC6.Test.Specs.dll "-TargEnv QAConfig.json - xml test_output.xml