Тестирование ассоциаций с огурцом
-
05-07-2019 - |
Вопрос
Я новичок в рельсах и огурцах и пытаюсь протестировать следующий сценарий.
Background:
Given I have a Group named Group 1
And I go to the list of groups
And I have the following users records
| name | description | group_id |
| user 1 | | 1 |
| user 2 | | 1 |
When I follow Details for Group 1
Scenario: List users from group
Then I should see "user 1"
And I should see "user 2"
Итак, в действии index моего контроллера пользователей я перечисляю всех пользователей из group_id, но я не знаю, как проверить это с помощью огурца, потому что каждый раз, когда я запускаю тест, моя группа с именем Group 1 имеет другой идентификатор.
Кто-нибудь знает, как это решить?
Спасибо
Решение 3
Итак, я нашел простой способ проверить ассоциации.
Если я скажу, что у меня есть только одна группа в сценарии, на этом этапе я могу создать группу с определенным идентификатором, например:
g = Group.create(:name => "Group 1", :id => 1)
Тогда мне просто нужно проверить, что моя страница показывает пользователей с group_id = 1 и не показывает пользователей с group_id <> 1.
Легко же!!!
Другие советы
Избегайте использования идентификатора, вместо этого укажите имя группы, поскольку оно никогда не изменится.
я бы обменял ИДЕНТИФИКАТОР для Название группы
Background:
Given I have a group called "Ruby users"
And I go to the list of groups
And I have the following users records
| name | description | group_name |
| "user 1" | | "Ruby users" |
| "user 2" | | "Ruby users" |
When I follow Details for Group "Ruby users"
Scenario: List users from group "Ruby users"
Then I should see "user 1"
And I should see "user 2"