Jbehave как среда тестирования на основе данных

У меня есть несколько сценариев, написанных на Jbehave, и я хотел бы запустить их для 1000+ данных. Проблема в том, что я не могу перечислить все элементы данных в «Примерах», потому что, во-первых, это невозможно поддерживать, а во-вторых, я каждый день получаю этот файл данных из внешней службы.

Есть ли способ написать сценарий, который может брать данные из файла?


person Pushkar Pahare    schedule 28.11.2014    source источник


Ответы (2)


Параметры можно загрузить из внешнего файла,
подробности с примером здесь: http://jbehave.org/reference/stable/parametrised-scenarios.html

Загрузка параметров из внешнего ресурса

Таблицу параметров также можно загрузить из внешнего ресурса, будь то ресурс пути к классам или URL-адрес.

  Given a stock of <symbol> and a <threshold> 
  When the stock is traded at <price> 
  Then the alert status should be <status>   
  Examples:
  org/jbehave/examples/trader/stories/trades.table  

Нам нужно разрешить синтаксическому анализатору найти ресурс с соответствующим загрузчиком ресурсов, настроенным через ExamplesTableFactory:

new MostUsefulConfiguration()
         .useStoryParser(new RegexStoryParser(
               new ExamplesTableFactory(new LoadFromClasspath(this.getClass())))
          )
person krokodilko    schedule 28.11.2014

У меня тоже есть такое же требование, и я думаю, что ниже будет возможное решение.

Реализуйте метод для чтения листа Excel и подготовьте testData.table до запуска сценария, используйте аннотацию @BeforeScenario jbehave в файле шагов java.

перейдите по этой ссылке, чтобы реализовать загрузку данных из внешнего ресурса http://jbehave.org/reference/stable/parametrised-scenarios.html

 @BeforeScenario
   public void prepareTestData(String excelSheetPath) {
      // java code to read given excelSheetPath and prepare a *.table

   }
person sudheer test    schedule 23.03.2015
comment
Не могли бы вы уточнить свой ответ? - person abarisone; 23.03.2015