Запуск универсальных модульных тестов Windows из командной строки
4745 просмотра
3 ответа
Как вы запускаете проекты модульного тестирования Universal Windows (UWP) из командной строки?
Я использую MSTestFramework.
Автор: James Newton-King Источник Размещён: 12.11.2019 09:52Ответы (3)
23 плюса
Краткий ответ:
vstest.console.exe /Platform:x64 AppPackages\UnitTestProject1_1.0.0.0_x64_Debug_Test\UnitTestProject1_1.0.0.0_x64_Debug.appx
Длинный ответ:
Создайте проект, выбрав шаблон Universal / Unit Test App (Universal Windows):
Создайте его с помощью командной строки, используя в папке, где находится файл решения
msbuild /p:Platform=x64;Configuration=Debug
Попробуйте выполнить
vstest.console.exe
команду выше, в кратком ответе. Это не удастся, выдав следующее сообщение об ошибке:error 0x800B0109: The root certificate of the signature in the app package or bundle must be trusted.. For more details look into Event Viewer under Applications and Services Logs -> Microsoft -> Windows -> AppXDeployment-Server -> Microsoft-Windows-AppXDeploymentServer/Operational.
Чтобы иметь возможность запускать тесты из командной строки, вам нужно использовать сертификат с доверенным корнем или сделать сертификат, сгенерированный Visual Studio, надежным. Для последнего дважды щелкните
UnitTestProject1_TemporaryKey.pfx
файл в проводнике Windows и следуйте инструкциям мастера импорта по умолчанию, но измените две вещи:- Попробуйте запустить,
vstest.console.exe
используя параметры в кратком ответе, и теперь он должен запустить все ваши тесты.
6 плюса
Я последовал ответу Ивана Маринова, но мне нужно было чисто командное решение. После того, как ваш UWP Unit Test Project заработал и вы готовы к автоматизации, выполните следующие действия:
(Я назвал свое решение Win10Universal и мой проект модульного тестирования Win10-UnitTests. Вам нужно будет заменить имена в моих примерах на свои)
Откройте командную строку от имени администратора и перейдите в тот же каталог, что и ваше решение.
Запустите MSBuild.exe для вашего решения.
>"C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe" Win10Universal.sln /p:Platform=x86;Configuration=Release
- В процессе сборки будет создан каталог, аналогичный {SolutionDirectory} / AppPackages / {UnitTestTargetProjectName} / {Something_Test} . Перейдите в этот каталог, и внутри вы увидите сертификат безопасности .cer.
>cd AppPackages/Win10-UnitTests/Win10-UnitTests_1.1.0.0._x86_Test
- Запустите CertMgr.exe для этого сгенерированного сертификата. Этот шаг не будет выполнен, если вы не запускаете командную строку с правами администратора.
>"C:\Program Files (x86)\Windows Kits\10\bin\x86\certmgr.exe" -add Win10-UnitTests_1.1.0.0_x86_Release.cer -s -r localmachine root
- Запустите VSTest.Console.exe для файла .appx в этом каталоге.
>"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" Win10-UnitTests_1.1.0.0_x86_Release.appx /Platform:x86
Вы должны увидеть свои юнит-тесты, перечисленные в окне, если вы все сделали правильно! Надеюсь это поможет!
Автор: Kylaaa Размещён: 04.04.2017 06:360 плюса
Вслед за @Marinov, UWP в настоящее время не поддерживает тестирование приложения . Только библиотека может быть проверена.
Итак, если вы хотите выполнить модульное тестирование в UWP, вам нужно извлечь свои логические коды из проекта App и вставить их во вновь созданный проект библиотеки. На тестовый проект и оригинальный проект приложения можно ссылаться впоследствии.
Автор: Youngjae Размещён: 29.04.2016 04:42Вопросы из категории :
- unit-testing Каковы основные различия между TDD и BDD?
- unit-testing В чем разница между интеграционными и модульными тестами?
- unit-testing Как мне проверить приватную функцию или класс, который имеет закрытые методы, поля или внутренние классы?
- unit-testing Куда идут юнит-тесты Python?
- unit-testing Стоит ли тестировать частные методы или только публичные?
- unit-testing Как имитировать ошибки выделения памяти
- mstest Можно ли иметь несколько TestClass'ов в MSTest?
- mstest Проблемы с атрибутом DeploymentItem
- mstest Как я могу использовать Assert, чтобы проверить, что было сгенерировано исключение?
- mstest Как перенести файл конфигурации NUnit в MSTest?
- mstest Есть ли у MSTest эквивалент TestCase от NUnit?
- mstest Какие преимущества / недостатки MSTest и NUnit сравнивают друг с другом?
- uwp Получить текущую версию приложения из пакета
- uwp Предупреждение: MapServiceToken не указан
- uwp Переопределение кистей переднего плана заголовка Pivot в приложении UWP (Win 10 RTM SDK)
- uwp Приложение Windows 10 UWP - Настройка размера окна на рабочем столе
- uwp Как изменить цвет выделения выбранного элемента ListView в UWP (Windows 10)
- uwp Хранилище Azure: серверу 403 не удалось аутентифицировать запрос