2014-09-15 2 views
0

Я пытаюсь создать тест функции, где нужно проверить флажок и по какой-либо причине Capybara не проверяет флажок.Capybara не проверяет флажок в тесте функции rspec

Я использую:

RSpec: 3.0.4 и водосвинки: 2.4.1

Когда я распечатать снимок зрения, флажок не установлен.

Когда я запускаю код ячейки в pry, он возвращает строку «checked», но когда я печатаю снимок, флажок все еще не проверяется, и мой тест не проходит. Мне любопытно, есть ли другой способ проверить этот флажок.

Вот мой текущий код до сих пор:

Feature Test:

background do 
    discussion_group 
    @user2 = FactoryGirl.create(:user) 
    add_user_to_user_role_for_group(group, @user2) 
    admin_login 
    add_user_to_admin_role_for_group(group, @user) 
    visit groups_path 
    click_on 'Email Group' 
end 

scenario 'sending a valid email' do 
    valid_form 
    expect(page).to have_content group_email_success_notification 
    expect_count_of_deliveries_to_be 1 
end 

Macro:

def valid_form 
    fill_in 'group_email_subject', with: new_text 
    fill_in 'group_email_body', with: Faker::Lorem.words(200).join("\s") 
    check "group_email_#{@user2.id}_" 
    click_on "Send Email" 
end 

Выход моего теста является то, что я должен иметь 1 пользователь выбрал значение, Я не проверяю пользователя. Когда я запускаю контрольную линию на консоли, вот что я получаю:

[10] check('group_email_10_') 
=> "checked" 

Любая помощь очень ценится.

ответ

0

Я хотел бы использовать:

page.check ('вставить #id, .class, или значение') \
, например:
тип ввода = "флажок" ID = "puppy_gooddog" имя = "щенок [gooddog]" значение = "да"
page.check ('puppy_gooddog') или page.check ('щенок [gooddog]')

+0

Я пытаюсь использовать page.check и получил такой же результат. Я считаю, что если я использую это имя, я получаю неоднозначную ошибку, так как все имена всех флажков одинаковы. Конечным результатом является все отмеченные поля - это массив, который будет использоваться в коде. Мне интересно, если это может быть проблемой с моей версией Firefox и веб-драйвером селена. Так как недавний веб-драйвер обновления саунд-браузера Firefox не кажется совместимым, и поэтому я понижен, и вещи не всегда были прав, что я могу сказать. – Vell