2016-08-24 8 views
2

Я совершенно новый для визуальной студии. У меня есть сообщество visual studio 2015.Вывод из UnitTest в папке «Out» в приложении TestResultsFolder, с MSTest в Visual Studio

Что я хотел бы сделать, это при выводе конкретных данных в моем unittest с MSTest, я хотел бы сохранить вывод в файл.

Я видел, что при каждом запуске теста автоматически создается папка в TestResuls/Deploy_username date hour/out. Я ищу способ сохранить результаты тестов в этой папке.

Возможно ли это или есть другие способы копирования файлов или отправки моих данных? Я смотрел на эти следующие ссылки: https://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.unittesting.deploymentitemattribute.aspx

https://msdn.microsoft.com/en-us/library/ee256991.aspx

DeploymentItem not deploying files

Generating Unit Test Reports in Visual Studio 2013

Ни одна из этих ссылок не помогли мне в достижении того, что я хотел.

Заранее благодарю вас за помощь.

ответ

1

Я не буду объяснять, как обрабатывается выходной файл .Net, я полагаю, у вас есть это Знание.

Если у вас есть TestClass объявлен с атрибутом [TestClass] вы можете добавить публичную собственность TestContextTestContext Типа (см MSDN), который будет получать установленный MSTest во время выполнения теста. Там у вас есть свойства TestResultsDirectory (что обычно приводит к папке «IN») и TestDeploymentDir (что обычно приводит к папке «OUT»). например: TestContext.TestResultsDirectory приведет к "D: \ Visual Studio 2015 \ Projects \ UnitTestProject1 \ TestResults \ Deploy_user 2017-02-23 07_37_49 \ В"

Если вам нужна TestContext раньше, чем в [TestMethod] Вы необходимо использовать метод public static void TestInit(TestContext testContext) в вашем TestClass, чтобы вы получили экземпляр TestContext, когда ваш класс был создан.

Есть также такие свойства, как TestLogsDir, TestDir, которые устарели, вы можете прочитать в документах MSDN об этом.