Між двома напевно є певне перекриття. NUnit є попередником, і в результаті більш зрілим. C # Unit Test Framework є молодшим, але інтегрований із Visual Studio.
Я приїхав із світу Java, де JUnit є королем (є інші, але жоден не користується популярністю), а NUnit 2.5.x - це дійсно гарна відповідність тому, як працює JUnit 4. Насправді він працює набагато краще, ніж аналог Java.
Що стосується визначення тесту, я віддаю перевагу NUnit. Впевнений, MS Test має схожі (але різні) атрибути, які ви застосовуєте до своїх класів, але я вважаю, що у ньому відсутні деякі функції, які можуть врятувати вам певну роботу над деякими видами тестування. Ви можете перевірити подібну дискусію на StackOverflow .
Мені подобається нова модель твердження, вбудована в NUnit (вона використовує твердження стилю Hamcrest ), оскільки вони одночасно легко читати і легко розширюються.
- NUnit матиме кращу підтримку сторонніх розробників, MS Test матиме кращу інтеграцію (нестандартно).
- NUnit матиме кращу гнучкість та розширюваність, MS Test постраждає в цій області.
- Обидва запустіть одиничні тести та перевіряйте результати, обидва будуть працювати на TDD.