В Cucumber 'Feature file' -> 'examples', как установить путь к CSV-файлу - PullRequest
0 голосов
/ 17 мая 2018

Мой пример файла функций, а не данные из примеров. Я хочу, чтобы он передал от CSV, как этого добиться, может кто-нибудь мне помочь.

Файл функции:

Feature: Rocky Search Status

      Scenario Outline: Rocky Search Status with Filters
        Given Open firefox and start application for Rocky Search Status
        When User enters "<price_right>" and "<Carat_left>" and "<Color_right_param>" and  "<Cut_right_param>" and "<Clarity_right_param>"
        Then Message displayed Rocky Search Status Successful
        Then Application should be closed after Rocky Search Status

        Examples: 
          | price_right | Carat_left | Color_right_param  | Cut_right_param |  Clarity_right_param |
          |       10000 |        1.5 |             80     |           180   |                84    |

Я хочу, чтобы значения данных были определены в CSV вне Проекта.

Ответы [ 2 ]

0 голосов
/ 17 мая 2018

Не напрямую.Однако вы можете иметь идентификатор записи (или номер тестового набора) в таблице Пример.Затем вы можете получить записи из CSV в коде шага на основе идентификатора.

Scenario Outline: Rocky Search Status with Filters
    Given Open firefox and start application for Rocky Search Status
    When User enters data specified in test case <tcn>
    Then Message displayed Rocky Search Status Successful
    Then Application should be closed after Rocky Search Status

    Examples: 
     |tcn|
     |1  |
     |2  |

Шаг «Когда» будет использовать tcn для извлечения соответствующей записи из CSV.

0 голосов
/ 17 мая 2018

Ты не можешь с огурцом.Что вы можете сделать, это дать вашему CSV-файлу подходящее имя, сослаться на имя внутри шага Gherkin, а затем загрузить и прочитать файл внутри определения шага.

abc.feature

Feature: A
  Scenario: 1
    Given data at abc.csv
    ...

step-definitions.js

Given(/^data at (.*)$/, function (fileName) {
  const data = jsonfile.readFileSync(`${__dirname}/${fileName}`);
  // iterate over data
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...