Как я могу вытащить данные из таблицы огурцов в js?

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

      Feature: Login

Login Test Suite

Background: 
  Given I'm on the login page

Scenario: 01. Should not be able to login with invalid cred
When I log in with "username" and "password"
    |  username   | password | ExpectedError                     |
    |    asdasd   | anything | Invalid credentials specified     |
    |             | anything | Please specify a username         |
    |    asdasd   |          | Please specify a password         |
    |             |          | No username or password specified |
Then An error msg should appear

здесь, где я хочу передать два аргумента имени пользователя и пароля

      When('I log in with (string) and (string)', (username,password) => {
    p.loginWith(username, password)
})

1 ответ

Решение

Похоже, вам нужен план сценария . Вам нужно будет перефразировать каждый шаг, и таблица данных будет перемещена в таблицу «Примеры»:

      Feature: Login
  Login Test Suite

Background: 
  Given I'm on the login page

Scenario Outline: 01. Should not be able to login with invalid cred
  When I log in with "<username>" and "<password>"
  Then the "<ExpectedError>" error msg should appear

Examples:
  | username | password | ExpectedError                     |
  | asdasd   | anything | Invalid credentials specified     |
  |          | anything | Please specify a username         |
  | asdasd   |          | Please specify a password         |
  |          |          | No username or password specified |

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

Ваш Thenшаг необходимо перефразировать, чтобы передать ожидаемую ошибку проверки. Это определение шага довольно простое, и я оставлю реализацию на ваше усмотрение. Вот заглушка:

      Then('the (string) error msg should appear', (expectedError) => {
  // TODO: Make assertion
});
Другие вопросы по тегам