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

selenium
mstest
csharp
xml
Теги: #<Tag:0x00007fedbc638ee8> #<Tag:0x00007fedbc638d30> #<Tag:0x00007fedbc638b78> #<Tag:0x00007fedbc6389e8>

(Кристина Маркова) #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 подойдет?

http://habrahabr.ru/post/192720/

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


(apetrovskiy) #5

Судя по вопросу, топикстартер хочет конфигурацию, а не data-driven.

Что касается data-driven, делал я давеча, может, с год назад, загрузку данных из XML, кажется, на основе этого https://msdn.microsoft.com/en-us/library/ms182527.aspx

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

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

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


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

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