кипарис-огурец-препроцессор Datatables - PullRequest
0 голосов
/ 05 августа 2020

Я видел похожий на мой пост, но я не нашел его полезным, поскольку ни один из них не использует препроцессор Cypress.

У меня есть сценарий:

Scenario: Some scenario
   Given ...
   When ...
   Then I should see "<task_field>" field as "<field_value>"
   Examples:
      | task_field        | field_value |
      | some_field1       | some_value1 |
      | some_field2       | some_value2 |
      | some_field3       | some_value3 |

В файле. js есть:

Then('I should see {string} field as {string}',  (field, value ) => {
  switch (field) {
    case 'some_field1':
      cy.get('.someClass1').contains(value)
      break
    case 'some_field2':
      cy.get('.someClass2').contains(value)
      break
    case 'some_field3':
      cy.get('.someClass3').contains(value)
      break
    default:
      throw new Error(`Invalid field: ${field}`)
  }
})

Моя цель - проверить каждое some_field, если оно равно some_value, но в настоящее время cypress выдает мне ошибку и даже не дает мне возможности выполнить тест:

Любая помощь приветствуется Ура!

1 Ответ

0 голосов
/ 05 августа 2020

После 2 часов отладки я обнаружил, что забыл включить Outline world в определение сценария, чтобы тест мог проходить через таблицу данных. Так что для дальнейшего использования исправление от:

 Scenario: Some scenario
   Given ...
   When ...
   Then I should see "<task_field>" field as "<field_value>"
   Examples:
      | task_field        | field_value |
      | some_field1       | some_value1 |
      | some_field2       | some_value2 |
      | some_field3       | some_value3 | 

Должно быть включено в первую строку Outline:

Scenario Outline: Some scenario
   Given ...
   When ...
   Then I should see "<task_field>" field as "<field_value>"
   Examples:
      | task_field        | field_value |
      | some_field1       | some_value1 |
      | some_field2       | some_value2 |
      | some_field3       | some_value3 |

Думаю, это был долгий день для меня. Надеюсь, это поможет кому-то с похожей проблемой!

...