t.me/atinfo_chat Telegram группа по автоматизации тестирования

Параметризация selenium тестов на С# c помощью xml

Теги: #<Tag:0x00007f9afa8a9980> #<Tag:0x00007f9afa8a98b8> #<Tag:0x00007f9afa8a97f0> #<Tag:0x00007f9afa8a9728>

Привет всем.
Есть такая проблема в реализации такой функциональности.Хотелось бы брать конфигурационные параметры из 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, кажется, на основе этого https://msdn.microsoft.com/en-us/library/ms182527.aspx

Делается довольно легко, мстест умеет и из БД данные брать. Надо только догадаться про статическую пропертю.
Но у меня сложилось впечатление, что это было срочная фича (поддержка дэйта-дривн), которую автор написал этак за вечер. Фича заработала, но чуть шаг в сторону - абсолютно ни о чём не говорящие ошибки и всё краснеет.
Есть ещё косяк в подсчёте результатов: если, скажем, тест с XML, а в XML 10 наборов данных, то будет одиннадцать результатов. И на некотором кол-ве тестов с разными наборами данных кол-во результатов сильно отличается от ожидаемого.

Ну и я присоединяюсь к Диминым пожеланиям делать data-driven на NUnit или xUnit :slight_smile: не в пример проще, если ошибся, найти причину, и с подсчётом результатов всё нормально.

А ещё пробовал мстест из csv, с ходу не завелось, перешёл на XML. Ошибка была что-то там про отсутствие MS Jet 4.0, вообще ни капли помощи. Ошибки, если неудачно загрузился XML, тоже весьма далёкие от описания причины.

Ребята, а что, форматы попроще для параметризации в .NET - моветон? какой-нибудь JSON, например?