2013-10-29 3 views
1

Visual Studio에서 C#을 사용하여 Selenium webdriver 테스트를 작성하고 있습니다. 이것은 기본적으로 회귀 테스트입니다. 내가 NUnit에서 선택한 프레임 워크.TeamCity에서 NUnit으로 매개 변수화 된 Selenium 테스트를 실행하는 방법은 무엇입니까?

URL을 매개 변수화하고 싶기 때문에 동일한 테스트를 TeamCity의 다른 배포에 대해 실행할 수 있습니다. 어떻게해야합니까? 콘솔 응용 프로그램을 만든 다음 Main()에 인수를 전달해야합니까? 이 경우 NUnit GUI에서 테스트를 실행하려면 어떻게해야합니까?

다른 프레임 워크가 NUnit보다 나은가요?

감사합니다.

+0

테스트 레벨 또는 테스트 픽스처 레벨입니까? 마찬가지로 각 개별 테스트마다 URL이 다르거 나 개별 테스트 픽스처마다 URL이 다르다 (즉 특정 조명기의 모든 테스트에서 해당 URL을 사용하고있는 것)? – Arran

답변

1

이봐, 여기에 질문에 대답 도움이 될 몇 가지 유용한 링크입니다

http://codewandering.blogspot.com.au/2008/11/regression-testing-for-any-web.html

http://kristjansson.us/?p=947

은 또한 당신은 매일 밤 당신이해야 할 수도 있습니다 (그래서에서 빌드에 대해 인 TeamCity에 구성된 환경 변수를 사용할 수 있습니다 dev 빌드와 다른 URL 등) 소스 코드에서 변수를 호출하십시오.

public static string GetBaseUrl() 
{ 
    return string.IsNullOrEmpty(System.Environment.GetEnvironmentVariable("testurl")) ? ConfigurationManager.AppSettings["baseurl"] : System.Environment.GetEnvironmentVariable("testurl"); 
} 

위의 코드 스 니펫에서 환경이 있는지 확인하고 그렇지 않은 경우 appconfig를 백업으로 사용합니다.

는 인 TeamCity 내 각 구성에서 변수를 설정 :

편집 구성>>에 Params 빌드 (내 예에 env.testurl) 종류로 환경 변수> 선택 환경 변수를 추가합니다. note, C#에서이 값을 호출 할 때 env를 포함하지 않습니다. 섹션을 TeamCity 변수 이름에서 가져옵니다.

0

개발을 위해 로컬에서 테스트를 실행하기 위해 설정된 값으로 기본 App.config를 시작합니다. 그런 다음 TeamCity에서 빌드 단계의 App.config를 다른 빌드의 다른 구성 파일로 교체합니다. 이렇게하면 타겟 URL과 같이 서로 다른 빌드에 대해 서로 다른 설정을 할 수 있습니다.

관련 문제