Как получить сценарии specflow в объектах c #

Я хочу прочитать каждый файл функций и создать объекты для каждого сценария. После прочтения файла .feature. Я должен получить такие объекты, как показано ниже:

Ввод

@mytag  
Scenario: Add two numbers  
    Given I have entered 50 into the calculator  
    And I have entered 70 into the calculator  
    When I press add  
    Then the result should be 120 on the screen

Ожидаемый результат

Scenarios - Предоставляет все сценарии в файле функций.
Scenario.Steps - Предоставляет все данные, когда и то из этих сценариев.
Scenario.Examples - Предоставляет все примеры.
Scenarios.Tags - Все теги

Код

var lines = File.ReadAllText(@"P:\Test.feature");
var scenarios = lines.Split(new string[] { "Scenario: "}, StringSplitOptions.RemoveEmptyEntries);
var scenarioList = new List<Scenario>();
for (int i = 1; i < scenarios.Length; i++)
{
    var ind = scenarios[i].IndexOf("\n");

    var scenario = new Scenario();
    scenario.Name = scenarios[i].Substring(0, ind);
    var toInd=scenarios[i].IndexOf("@");
    if(toInd>1)
        scenario.Steps = scenarios[i].Substring(ind,toInd);
    else
        scenario.Steps = scenarios[i].Substring(ind);
    scenarioList.Add(scenario);
}

person Sandesh A D    schedule 29.01.2019    source источник
comment
Потребуется гораздо больше деталей   -  person Spinnaker    schedule 30.01.2019
comment
Нужно больше информации. Какой код вы уже пробовали?   -  person StevieBruce    schedule 30.01.2019
comment
Я обновил вопрос. Теперь я читаю файл функций с помощью File.Read (), но получить все атрибуты, проанализировав текст в сценарии, не так просто.   -  person Sandesh A D    schedule 30.01.2019


Ответы (1)


Gherkin Parser должен делать то, что вы ожидаете. Вы можете получить его в галерее Nuget

person dhilmathy    schedule 31.01.2019