2010-04-24 3 views

답변

3

러너가 테스트 어셈블리를 반영한 ​​후 러너를 정렬하는 방법에 따라 다릅니다. 각 주자는 이것을 다르게 할 수 있습니다.

예를 들어, Reshaper의 러너는 알파벳순으로 실행됩니다.

그러나 여기서 중요한 문제는 NUnit 테스트에 순차적 인 규정이나 종속성이 없어야한다는 것입니다.

테스트를 다른 테스트에 의존해야하는 경우 MbUnit을 사용하십시오. This은 DependsOnAttribute를 사용하여 조명기 종속성의 예입니다.

+0

실제로 실행 명령을 이해하고 싶었습니다. 나는이 문제에 직면 한 후이 질문을하지 않을 것이다. – anonymous

+0

@ JMSA - 대답은 "주자가 테스트 어셈블리를 반영한 ​​후 주자를 정렬하는 방식에 달려 있습니다. 각 주자가 다르게 수행 할 수 있습니다". - 대답이 명확하게 업데이트 됨 –

2

모든 단위 테스트 러너는 테스트 픽스처 클래스를 반영하고 특정 속성이 적용된 (또는 일부 명명 규칙과 일치하는) 모든 메소드를 검색합니다. 이러한 메소드가 리턴되는 순서는 소스 파일에 지정된 순서에 의존하지 않으므로 정의 된 순서대로 수행 될 수 없습니다. 단위 테스트는 서로 독립적으로 실행되어야하기 때문에 이것은 문제가되지 않습니다.

+0

사실 실행 명령을 이해하고 싶었습니다. 나는이 문제에 직면 한 후이 질문을하지 않을 것이다. 그리고, 그런데, @ 샌디 샌더스의 대답을 확인했습니다. 그건 진실이야. 테스트는 알파벳 순으로 실행됩니다. – anonymous

2

언급 한대로 알파벳순으로 실행됩니다. GUI NUnit 러너에서 테스트 DLL을 열면 순서가 표시됩니다.

그럼에도 불구하고 단위 테스트가 실행되는 순서는 이 아니고이되어야합니다. 단위 테스트는 이어야합니다.이므로 순서는 문제가되지 않습니다.

+1

아아, 나는 실제로 질문에 답하거나 문제를 해결하지 않는이 모든 대답을 싫어한다. NUnit을 사용하여 일련의 통합 스타일 테스트를 실행하려면 어떻게해야합니까? 훌륭한 도구이지만 실행 순서를 제어 할 능력이없는 경우 가끔 있습니다. –

관련 문제