이 답변을 작성할 당시 최신 NUnit 버전은 v3.5이고 xUnit.net은 v2.1입니다.
두 프레임 워크 모두 훌륭하며, 둘 다 병렬 테스트 실행을 지원합니다 (다른 방식으로). NUnit 은 2002 년부터 사용되어 왔으며 널리 사용되고 잘 문서화되어 있으며 대규모 커뮤니티가있는 반면 xUnit.net 은 더 현대적이고 TDD를 더 잘 준수 하며 확장 가능하며 .NET Core 개발에서 유행하고 있습니다. 또한 잘 문서화되어 있습니다.
그 외에도 내가 알아 차린 주요 차이점은 xUnit.net이 테스트 메서드를 실행하는 방식입니다. 그래서 NUnit 에는 테스트 클래스와 테스트 메서드 세트가 있습니다. NUnit은 테스트 클래스의 새 인스턴스를 만든 다음 동일한 인스턴스에서 모든 테스트 메서드를 실행합니다. 반면 xUnit.net 시험 방법 매우 각 테스트 클래스의 새로운 인스턴스를 생성한다. . 따라서 TDD에서 허용되지 않는 테스트 방법이 서로 의존하기 때문에 필드 또는 속성을 사용하여 테스트 방법간에 데이터를 공유 할 수 없습니다. 따라서 xunit.net을 사용하면 테스트 방법이 완전히 격리되어 있는지 확인할 수 있습니다.
하지만 테스트 방법간에 일부 데이터를 공유하려는 경우 xUnit을 사용하면 그렇게 할 수 있습니다. 따라서 기본적으로 모든 테스트 방법은 완전히 격리되지만 의도적으로 특정 경우에이 격리를 해제 할 수 있습니다. 나는이 태도를 좋아한다. 그것이 내가 더 좋아하는 이유이다.