Bu cevabı yazarken en son NUnit sürümü v3.5 ve xUnit.net v2.1'dir.
Her iki çerçeve de harika ve ikisi de paralel test çalışmasını destekliyor (farklı bir şekilde olsa da). NUnit 2002'den beri piyasada , yaygın olarak kullanılıyor, iyi belgelenmiş ve geniş bir topluluğa sahipken, xUnit.net daha modern, daha TDD uyumlu, daha genişletilebilir ve ayrıca .NET Core geliştirmede trend oluyor. Aynı zamanda iyi belgelenmiştir.
Buna ek olarak, fark ettiğim temel fark, xUnit.net'in test yöntemlerini çalıştırma biçimi. Yani, NUnit'te bir test sınıfımız ve içinde bir dizi test yöntemimiz var. NUnit, test sınıfının yeni bir örneğini oluşturur ve ardından tüm test yöntemini aynı örnekten çalıştırır. Oysa xUnit.net, test yöntemlerinin her biri için test sınıfının yeni bir örneğini oluşturur. . Bu nedenle, test yöntemlerimiz arasında veri paylaşmak için alanlar veya özellikler kullanılamaz, bu kötü bir uygulamadır, çünkü test yöntemlerimiz TDD'de kabul edilemez olan birbirine bağımlı olacaktır. Dolayısıyla, xunit.net kullanırsanız, test yöntemlerinin tamamen izole edildiğinden emin olabilirsiniz.
Yine de test yöntemleriniz arasında bazı verileri paylaşmaya istekliyseniz, xUnit bunu yapmanıza izin verecektir. Bu nedenle, varsayılan olarak tüm test yöntemleri tamamen yalıtılmıştır, ancak bu yalıtımı belirli durumlarda kasıtlı olarak kırabilirsiniz. Bu tavrı seviyorum, bu yüzden daha çok seviyorum.