Не работает с vstest.console.exe, если указан файл .runsettings - MS Test - PullRequest
1 голос
/ 06 марта 2019

Я использую проект MSTest для автоматизации моей системы.Тестовый проект работает нормально.Но мне нужно запустить тестовый проект в моем производстве без установки Visual Studio.Так что я использую командную строку VSTest.Console.exe.

Мой метод входа в систему, как показано ниже

    [TestMethod]
    [TestCategory("SmokeTests")]
    public void Can_login_with_Empty_UserName()
    {             
     Login(TestContext.Properties["UserName"].ToString(), TestContext.Properties["Password"].ToString());                
    }

, и моя команда vstest.console, как показано ниже

vstest.console MyPath \ SmokeTests.dll / Тесты: Вход в систему / Настройки: PathToSettingFile \ tests.runsettings

, когда я запускаю эту команду, она выдаст мне «System.NullReferenceException: ссылка на объект не установлена ​​для экземпляра объекта».Ошибка

Но если я изменю свой метод, как показано ниже

    [TestMethod]
    [TestCategory("SmokeTests")]
    public void Can_login_with_Empty_UserName()
    {            
     Login("Admin", "1234");                
    }

Выше код будет работать правильно.

Итак, проблема в

TestContext.Properties ["UserName"]. ToString ()

Когда я запускаю тестовый пример через Visual Studio, никаких проблем не возникает.Любая идея, почему / Settings: PathToSettingFile \ tests.runsettings не может загрузить файл runsettings, работающий с помощью команды vstest.console.Спасибо.

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