2010-08-19 4 views
2

mstest (VS 2008) 및 nunit (newest)의 성능을 비교해보고자합니다.성능 비교 Nunit 대 MsTest

나는 기능이 아니라 실행 시간에 대한 예에 대한 유일한 기사를 발견 :/

내가 도움을 감사하게 될 것이다

+0

왜 그렇게 중요한가요? 그냥 가장 적합한 것을 사용하고 필요한 모든 기능을 가지고 있습니다 –

+0

NUnit을 사용하고 싶지만 프로젝트 관리자가 숫자를 원합니다 :/ – user278618

+3

프레임 워크는 실제로 새로운 up 클래스 및 호출 메소드 이외의 다른 것을 사용하지 않습니다. 테스트되는 코드는 시간이 걸립니다. 하지만 정말로 번호가 필요한 경우. 자동은 기본 어서션 세트 (1 == 1)를 수행하는 각각 50 개의 테스트로 100 개의 조명기 세트를 생성합니다. 그들을 실행하고 그들을 시간. 많은 차이가 있다면 나는 충격을받을 것이다. – ryber

답변

0

테스트 러너는 실제로 꽤 많은 않습니다 - 그것은 모든 테스트를 찾을 수있다 클래스를 호출 한 다음 호출하기 전에 모든 테스트 메소드를 식별합니다 (아마도 리플렉션을 통해 가능할 수도 있지만 불가능할 수도 있음). 또한 결과를 수집하고보고해야합니다. 이 모든 것은 효율적이거나 그렇지 않을 수 있습니다. 따라서 특히 많은 수의 테스트에서 성능에 눈에 띄는 차이가있을 수 있습니다.

1

MSTest 및 NUnit 사용 경험이 있습니다. 내 경험에 비추어 볼 때 MSTest는 NUnit보다 훨씬 느립니다. 실제 테스트 실행은 거의 동일하지만 MSTest의 설정 및 해체 시간은 훨씬 더 길다.

통합 된 VS GUI를 통해 MSTest 유닛 테스트를 실행했는데, 이는 가벼운 NUnit GUI와 비교할 때 매우 느린 이유 일 수 있습니다. 분명히 MSTest를 명령 줄을 통해 실행할 수 있으므로 설정 및 해체 시간이 향상 될 수 있습니다.

다른 고려 사항이 있습니다. MSTest는 NUnit에있는 많은 기능이 누락되어 있으며 NUnit은 오래 동안 더 성숙했습니다. 또한 NUnit을 사용하면 MSTest보다 훨씬 빨리 버그 픽스가 제공됩니다 (서비스 팩 출시 빈도는 얼마나됩니까?).

또한 NUnit은 Visual Studio없이 작동합니다. 즉, 다른 VS 라이센스 없이도 서버에서 이러한 테스트를 실행할 수 있습니다. VS를 사용하지 않고 MSTest를 실행할 수있는 방법을 읽었지 만 라이선스 조건을 위반하거나 위반하지 않을 수도있는 파일 복사가 필요합니다.