Интеграция модульных тестов Silverlight в сборку TFS - PullRequest
8 голосов
/ 30 октября 2009

Мы создавали модульные тесты silverlight, создав простой проект модульных тестов .net, удалив все ссылки, кроме единицы unittestframework, а затем добавив ссылки на нужные нам SL-сборки (system, System.Core, ... ). Для получения дополнительной информации, посмотрите это сообщение в блоге. Мы можем сделать это, так как мы придерживаемся шаблона MVVM и почти не имеем кода в коде. Мы тестируем не представление, а функциональность на всех уровнях (в основном VM-M).

Теперь это позволяет нам проверять логику silverlight в нашей сборке каждый вечер. Это работает довольно хорошо, пока мы не начнем смешивать проекты SL и обычные проекты .NET. Когда мы выбираем все модульные тесты SL и запускаем их, они проходят. То же самое касается модульных тестов .NET. Однако, когда мы запускаем их все сразу, либо один сет, либо другой терпят неудачу полностью. Сообщение, которое мы видим, гласит: «Исключение сработало в модульном тесте: невозможно загрузить один или несколько запрошенных типов. Получите свойство LoaderExceptions для получения дополнительной информации ...». Я предполагаю, что проблема в том, что эти два набора тестов используют разные системные сборки, но я не смог точно определить проблему.

Кто-нибудь пробовал это? Ура, Фил

Ответы [ 3 ]

1 голос
/ 18 февраля 2010

Как насчет использования двух отдельных определений сборки? Они оба могут быть запущены одинаково или одновременно. Разница лишь в том, что у вас есть ссылки только на проекты SL в одном и только проекты .NET в другом.

Если вы не хотите ссылаться на проекты из определения сборки, вы можете создать пару решений для использования со своими сборками и ссылаться только на проекты SL в одном решении и только на проекты .Net в другом.

1 голос
/ 25 января 2011

Вы также можете использовать тестовый проект Silverlight (созданный из шаблона проекта Silverlight Toolkit) и использовать это решение для запуска теста Silverlight на сервере сборки TFS.

1 голос
/ 05 ноября 2009

Я предполагаю, что существуют проблемы с наличием нескольких библиотек System, mscorlib и т. Д. В домене приложения, которые, вероятно, путают среду выполнения теста.

Можете ли вы разделить это на несколько тестовых прогонов для сборки TFS, ИЛИ, возможно, создать сценарий msbuild с кодом для вызова mstest.exe для одного из них и получить результаты таким образом?

...