запуск тестов для приложения wp7 - PullRequest
0 голосов
/ 30 января 2012

Я хочу запустить модульные и интегрированные тесты для моего приложения для Windows Phone 7. Но библиотека, предоставленная Джеффом Уилкоксом и кодом из http://smartypantscoding.com/a-cheat-sheet-for-unit-testing-silverlight-apps-on-windows-phone-7, запускается через эмулятор.

Но я хочу запускать отдельные тесты таким же образом, как и любое приложение Windows, например, щелкая правой кнопкой мыши по отдельным тестам в классе тестов ... также, если soemone хочет запустить тесты через командную строку, не вызывая sdk.

Но среда модульного тестирования, доступная в настоящее время, запускается через эмулятор.

Ответы [ 3 ]

2 голосов
/ 30 января 2012

Имея хорошее разделение проблем и некоторые ограничения, вы можете выполнять свои тесты, используя среду выполнения Silverlight. Как только это настроено, вы можете запускать свои тесты, используя ReSharper + AgUnit или TestDriven.net в VS и Statlight из командной строки.

Вы можете прочитать об инструкциях по настройке в блоге , который я написал , но для хранения информации о SO я подведу итоги здесь:

  • Reference Microsoft.Silverlight.Testing и Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight из Silverlight (не WP) инструментарий
  • Эталонные сборки от %programfiles%\Reference Assemblies\Microsoft\Framework\Silverlight\v4.0\Profile\WindowsPhone71 и установки Copy Local на true

Ограничения включают в себя:

  • Ваша протестированная сборка не может ссылаться на определенные сборки или типы телефонов (например, Microsoft.Phone.*)
  • Некоторые общие API фактически отличаются

Если вы можете справиться со всем этим (я все еще не решил, стоит ли это того), он может обеспечить довольно быстрый цикл тестирования, и тесты в эмуляторе все еще можно запускать для всего, что выходит за пределы ограничений.

Что нам действительно нужно, так это эмулятор, поддерживающий быстрый режим без головы (тесты в эмуляторе более совместимы) и какой-то Gallio адаптер.

1 голос
/ 30 января 2012

Вам придется запускать юнит-тесты через эмулятор.Конец истории.

0 голосов
/ 30 января 2012

Вы можете запускать приложения Silverlight Unit Test на своем телефоне, но если у вас WP7.5 "Mango", убедитесь, что вы получили сначала совместимые с Mango двоичные файлы из блога Джеффа Уилкокса .

Для запуска отдельных тестов используйте возможность «test tag»: добавьте тег к тестам, которые вы хотите запустить [Tag("MyTag")], либо на уровне TestClass, либо на уровне TestMethod. Затем введите соответствующий тег в текстовое поле на экране запуска тестового приложения.

Это лучший способ, с помощью которого я нашел повторные тесты, чтобы быстро проверить исправление, которое вы получили. Обычно я сохраняю короткий тег для отладки (например, «e»), чтобы его можно было быстро напечатать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...