Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

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

xml
csharp
mstest
selenium
Теги: #<Tag:0x00007f7b6a28dce0> #<Tag:0x00007f7b6a28d998> #<Tag:0x00007f7b6a28d6c8> #<Tag:0x00007f7b6a28d2b8>

(Кристина Маркова) #1

Привет всем.
Есть такая проблема в реализации такой функциональности.Хотелось бы брать конфигурационные параметры из xmlки …тесты запускаются используя mstest.
Подскажите как можно реализовать?


(zaleg) #2

App.config тебе в помощь. Создай солюшн в VS.
Простой пример:

<?xml version="1.0" encoding="utf-8"?>
 <configuration>
        <appSettings>
            <add key="Environment" value="QA" />
             ...
        </appSettings>
 </configuration>

(Maxim Ioffe) #3

Всем привет

А если есть множество вариантов тестов?

Например разные среды которые можно запускать через BrowserStack?

Как организовать выбор разных конфигураций через MTM? Не строя новый билд понятное дело.


(Дмитрий Жарий) #4

А с Excel подойдет?

Я этот подход использовал когда-то давно, сейчас нет – в NUnit параметризация гараздо лучше.


(apetrovskiy) #5

Судя по вопросу, топикстартер хочет конфигурацию, а не 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, тоже весьма далёкие от описания причины.


(Евгений Бухгаммер) #6

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