Разница между Microsoft.VisualStudio.TestPlatform.TestFramework и Microsoft.VisualStudio.QualityTools.UnitTestFramework

Я заметил изменение в одном из наших решений в VS 2015 сегодня. Кажется, что тестовые проекты, созданные для решения, используют другое пространство имен, чем существующие тестовые проекты в том же решении.

Только те проекты тестирования, которые ссылаются на

Microsoft.VisualStudio.QualityTools.UnitTestFramework

распознаются как тестовые проекты в Visual Studio 2015.

Однако теперь есть несколько тестовых проектов, ссылающихся на

Microsoft.VisualStudio.TestPlatform.TestFramework Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions

Возможно, что этот тестовый проект, сгенерированный из VS 2017 RC. Это объясняет различное пространство имен. Я не нашел никаких документов о обратной совместимости.

Вопрос: какое пространство имен использовать? Поскольку мы не можем использовать оба пространства имен одновременно. Каковы различия между двумя пространствами имен?

VisualStudio 2015 может создавать тестовые проекты с любой ссылкой. Чтобы переключить новое пространство имен обратно в более старое пространство имен только из-за генерации тестового проекта, я не думаю, что это разумно.

Ответ 1

MsTest выпущен как новое пакетное решение NuGet, которое больше не тесно связано с версией Visual Studio. Ваши новые проекты используют MsTest 2.0.

Подробнее см. Объявление MsTest 2.0