Добавление строк в пример таблицы в схеме сценария из кода во время выполнения - PullRequest
0 голосов
/ 01 апреля 2020

У меня есть следующий файл функций. Я получаю набор значений во время выполнения для имени пакета, и я хотел бы добавить новые имена пакетов в пример строк таблицы. Число, если имена пакетов, найденные во время выполнения, варьируются.

Требование: повторите этот сценарий на основе имен пакетов, которые я получаю во время кода, выполняемого в BeforeTestRun.

Scenario Outline: Verify captured document values against CMS for 
Given user is in QueueHandling home page Dashboard
And user has batches assigned to himself/herself
When user selects "<batchName>" batch from batch list
Then selected batch is opened in a new window
And user views all identified documents
When user selects "Settlement Coversheet" document and compare data
When user selects "AssetLoanAgreement" document and compare data
Given user navigates back to QueueHandling home page Dashboard

Examples: 
| batchName |
| QGOL2B    |
| QGK3UB    |

1 Ответ

0 голосов
/ 04 апреля 2020

Самый простой способ сделать это - исключить имена пакетов из вашего сценария и прекратить использовать схему сценария.

Ваш текущий сценарий полностью посвящен тому, КАК пользователь что-то делает, сценарий ios должен быть о том, что делает пользователь. Если вы воспользуетесь этим подходом, вы получите более простой и ясный сценарий ios, и вы поймете, КАК sh КАК в ваших определениях шагов или, что еще лучше, в качестве вспомогательных методов, которые вызывают ваши определения шагов.

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

Scenario: User checks their batches
  Given the user has a new set of batches
  When the user checks their batches
  Then ...

# user_batch_checking_steps ---------------------

Given 'user has a new set of batches' do
  @batches = load_batches
end

When 'the user checks their batches' do
  @results = {}
  @batches.each do |batch|
    @results << check_batch(batch: batch)
  end
end


module BatchStepHelper
  def load_batches
    # here is where you make a call to retrieve you list of batches
  end

  def batch(batch: )
    # here is where you do all your interactions to check you batch


Что для этого нужно, чтобы все программирование (КАК) вылетело из огурца и толчков? это так, что это заканчивается на вашем языке программирования, где у вас есть инструменты для таких вещей, как получение списка пакетов.

...