Cucumber JS и Selenium Webdriver - запускать одинаковые шаги с разными входами - PullRequest
0 голосов
/ 29 апреля 2020

Я начинаю с Cucumber и Selenium.

Я создал тестовый пример, в котором селен запускает форму и вводит значения по умолчанию и нажимает кнопки по умолчанию, давайте назовем это test case 1, но теперь Мне нужно test case 2, где я должен выполнить те же шаги, но с разными входами, представьте себе:

У меня есть форма, где у меня есть выбор, если пользователь - Мужской или Женский , в зависимости от нажатой кнопки, моя форма меняется, поэтому, если я выберу Мужской , я получу, например, ввод, спрашивающий, "высокий ли я" (просто пример), но если я выберу Женский , я получу сообщение с вопросом, есть ли у меня "парень". В зависимости от моей поездки в форме, конечный результат может быть разным, принимая во внимание это:

Как я могу создать несколько тестовых случаев без повторения кода, которые бы тестировали каждый параметр?

Пример:

Test case A: Male Input

Test case B: Female Input

Мне нужен тестовый пример A, чтобы завершить sh форму и затем выполнить тестовый пример B, помните, что в моей форме есть входные данные, которые одинаковы в обоих сценариях ios, поэтому я буду иметь использовать несколько раз одно и то же:

Scenario A:
  Given I have to choose Male or Female
  When I click ('one of them')
  Then I will click other stuff

Возможно ли это вообще?

1 Ответ

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

Добро пожаловать в Stackoverflow!

Схема сценария - это то, что лучше всего соответствует вашему сценарию.

Scenario Outline: Validate Selection
  Given I am in the required page
  When I selection <choice> from the option
  Then I will click other stuff

Examples:
|choice|
|Male  |
|Female|

Лучший пример из документации здесь. Ссылка

Scenario Outline: eating
  Given there are <start> cucumbers
  When I eat <eat> cucumbers
  Then I should have <left> cucumbers

  Examples:
    | start | eat | left |
    |    12 |   5 |    7 |
    |    20 |   5 |   15 |
...