문제

나는 레일과 오이를 처음 접했고 다음 시나리오를 테스트하려고합니다.

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"

따라서 사용자 컨트롤러의 색인 작업에서 Group_ID의 모든 사용자를 나열하지만 오이를 사용하여 테스트하는 방법을 모르겠습니다. 그룹 1이라는 테스트를 실행할 때마다 그룹 1이라는 Group 1이 다른 ID가 있기 때문입니다.

누구든지 이것을 해결하는 방법을 아는 사람이 있습니까?

고맙습니다

도움이 되었습니까?

해결책 3

그래서 나는 협회를 테스트하는 쉬운 방법을 알았습니다.

내가 시나리오에 그룹이 하나만 있다고 말하면, 그 단계에있을 때 나는 이와 같은 특정 ID로 그룹을 만들 수 있습니다.

g = Group.create(:name => "Group 1", :id => 1)

그런 다음 내 페이지를 테스트하면 Group_id = 1이있는 사용자가 표시되고 Group_id <> 1이있는 사용자를 표시하지 않습니다.

쉽게 !!!

다른 팁

ID를 사용하지 말고 대신 변경되지 않을 그룹의 이름을 나열하십시오.

나는 교환 할 것이다 ID ~을 위한 그룹 이름

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"
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top