2015-09-14 4 views
1

Я читал документы JBehave, и я не нахожу ничего, что говорит об этом конкретном случае использования. Ближайший я нашел this по параметризованным сценариям, но это не совсем то, что я ищу. Мне не нужно много раз запускать одну и ту же логику с разными параметрами, мне нужно запустить шаговую логику один раз с набором параметров. В частности, мне нужно передать комбинации чисел 1-4. Есть ли способ сделать это?В JBehave, как передать массив в качестве параметра из файла истории в файл шага?

ответ

3

Вы имеете в виду что-то вроде Tabular Parameters?

Вы могли бы использовать его как это:

Given the numbers: 
|combinations| 
|1234| 
|4321| 
|1324| 
When ... 

, а затем:

@Given("the numbers: $numbersTable") 
public void theNumbers(ExamplesTable numbersTable) { 

    List numbers = new ArrayList(); 
    for (Map<String,String> row : numbersTable.getRows()) { 
     String combination = row.get("combinations"); 
     numbers.add(combination); 
    } 
} 

Я просто переписал пример JBehave поэтому он может соответствовать вашим потребностям. Вы можете передать любое количество комбинаций в таблицы внутри заданного, когда, затем шаги и преобразовать его в массив или в мой пример в список.

+1

это будет работать - т/у! –