9

Я пытаюсь выполнить модульные тесты Windows Phone 8.1 из командной строки, используя vstest.console.exe. Я создал новый Windows Phone 8,1 единицы тестовый проект в VS 2013 (Update 4):Невозможно запустить тестовые тесты WP81 с помощью VSTest.Console.exe

enter image description here

Испытательное устройство обнаруженное в Visual Studio, и я могу запустить его успешно:

[TestClass] 
public class UnitTest1 
{ 
    [TestMethod] 
    public void TestMethod1() 
    { 
     Assert.IsTrue(true); 
    } 
} 

Следующим шагом является создание нового AppPackage из моего тестового проекта, который сгенерировал нужный файл .appx. Затем я попытался запустить модульный тест, содержащийся в этом файле с помощью следующей команды:

vstest.console.exe /InIsolation /settings:Test.runsettings UnitTestApp1_1.0.0.0_x86_Debug.appx 

где Test.runsettings выглядит следующим образом:

<?xml version="1.0" encoding="utf-8"?> 
<RunSettings> 
    <MSPhoneTest> 
    <TargetDevice>Emulator WVGA</TargetDevice> 
    </MSPhoneTest> 
</RunSettings> 

Эта команда начала эмулятор, но не с этой ошибкой:

Error: Installation of package 'D:\work\WP81UnitTestApp\UnitTestApp1\AppPackages\UnitTestApp1_1.0.0.0_x86_Debug_Test\UnitTestApp1_1.0.0.0_x86_Debug.appx' failed with Error: (0xFFFFFFFF) To run unit tests for a Windows Phone app, the app must target Windows Phone 8 or higher..

Любая идея, что может быть неправильным?

ответ

8

Оказывается, я использовал неправильное имя эмулятора в своем файле Test.runsettings. Меняя это на это, мои тесты работали:

<?xml version="1.0" encoding="utf-8"?> 
<RunSettings> 
    <MSPhoneTest> 
    <TargetDevice>Emulator 8.1 WVGA 4 inch 512MB</TargetDevice> 
    </MSPhoneTest> 
</RunSettings> 
+0

Эти установки должны быть частью тестового проекта, или вы вручную размещаете их вдоль вашего приложения? – sttaq