Z pewnością pewne elementy się pokrywają. NUnit jest poprzednikiem, w związku z czym jest bardziej dojrzały. Framework C # Unit Test jest młodszy, ale zintegrowany z Visual Studio.
Pochodzę ze świata Java, w którym JUnit jest królem (są inne, ale żadne nie są tak popularne), a NUnit 2.5.x jest naprawdę dobrym dopasowaniem do sposobu działania JUnit 4. W rzeczywistości działa znacznie lepiej niż odpowiednik Java.
Jeśli chodzi o definicję testu, wolę NUnit. Pewnie MS Test ma podobne (ale różne) atrybuty, które stosujesz do swoich klas, ale uważam, że brakuje niektórych funkcji, które mogą zaoszczędzić ci trochę pracy przy niektórych rodzajach testów. Możesz sprawdzić podobną dyskusję na temat StackOverflow .
Podoba mi się nowy model asercji wbudowany w NUnit (używa stwierdzeń w stylu Hamcrest ), ponieważ oba są łatwe do odczytania i łatwo rozszerzalne.
- NUnit będzie miał lepszą obsługę stron trzecich, MS Test będzie miał lepszą integrację (po wyjęciu z pudełka).
- NUnit będzie miał większą elastyczność i rozszerzalność, w tym obszarze ucierpi MS Test.
- Oba uruchom testy jednostkowe i sprawdź swoje wyniki, oba będą działać dla TDD.