Привет всем.
Есть такая проблема в реализации такой функциональности.Хотелось бы брать конфигурационные параметры из xmlки …тесты запускаются используя mstest.
Подскажите как можно реализовать?
App.config тебе в помощь. Создай солюшн в VS.
Простой пример:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="Environment" value="QA" />
...
</appSettings>
</configuration>
Всем привет
А если есть множество вариантов тестов?
Например разные среды которые можно запускать через BrowserStack?
Как организовать выбор разных конфигураций через MTM? Не строя новый билд понятное дело.
А с Excel подойдет?
Я этот подход использовал когда-то давно, сейчас нет – в NUnit параметризация гараздо лучше.
Судя по вопросу, топикстартер хочет конфигурацию, а не data-driven.
Что касается data-driven, делал я давеча, может, с год назад, загрузку данных из XML, кажется, на основе этого How To: Create a Data-Driven Unit Test - Visual Studio 2015 | Microsoft Learn
Делается довольно легко, мстест умеет и из БД данные брать. Надо только догадаться про статическую пропертю.
Но у меня сложилось впечатление, что это было срочная фича (поддержка дэйта-дривн), которую автор написал этак за вечер. Фича заработала, но чуть шаг в сторону - абсолютно ни о чём не говорящие ошибки и всё краснеет.
Есть ещё косяк в подсчёте результатов: если, скажем, тест с XML, а в XML 10 наборов данных, то будет одиннадцать результатов. И на некотором кол-ве тестов с разными наборами данных кол-во результатов сильно отличается от ожидаемого.
Ну и я присоединяюсь к Диминым пожеланиям делать data-driven на NUnit или xUnit не в пример проще, если ошибся, найти причину, и с подсчётом результатов всё нормально.
А ещё пробовал мстест из csv, с ходу не завелось, перешёл на XML. Ошибка была что-то там про отсутствие MS Jet 4.0, вообще ни капли помощи. Ошибки, если неудачно загрузился XML, тоже весьма далёкие от описания причины.
Ребята, а что, форматы попроще для параметризации в .NET - моветон? какой-нибудь JSON, например?