Używam webrat z ogórkiem i chciałbym sprawdzić, czy przycisk radiowy jest sprawdzany już na mojej stronie. Jak mogę to zrobić? Nie znalazłem w Webracie żadnego kroku, który mógłby to zrobić.Jak mogę sprawdzić, czy przycisk radiowy jest już zaznaczony?
Odpowiedz
input("#my_box").should be_checked
Istnieją przypadki, kiedy nie można polegać na checkboxes posiadające identyfikatory lub etykiet lub których zmiany napisu. W takim przypadku możesz użyć metody have_selector
z Webrat.
Z mojego działającego kodu (gdzie nie mam identyfikatorów na checkboxach).
response_body.should have_selector 'input[type=radio][checked=checked][value=information]'
Objaśnienie: test zwróci true, jeśli ciało dokumentu zawiera przełącznik (input[type=radio]
), który jest sprawdzony i że ma wartość „informacja”
Można użyć wbudowanego w matcher wyboru w web_steps .rb:
And the "Bacon" checkbox should be checked
Musisz jednak mieć etykietę w polu wyboru odpowiadającym identyfikatorowi odpowiedniego pola wejściowego pola wyboru. Pomocnik f.label w Railsach używa łańcucha jako identyfikatora w pierwszym argumencie. Być może trzeba będzie zbudować ciąg, który zawiera nazwę pola i nazwę pola wyboru:
f.label "lunch_#{food_name}, food_name
f.radio_button :lunch, food_name
W każdym przypadku korzystać z tej dyrektywy, aby zobaczyć, że masz HTML poprawne:
Then show me the page
And the "Obvious choice" checkbox should be checked
Chociaż może to być przycisk opcji, ale kod będzie działał. Po prostu sprawdza pola oznaczone tym tekstem.
Właśnie zmienił wyboru web_step przycisku radiowego
Dodaj następujący krok do web_steps.rb
Then /^the "([^"]*)" radio_button(?: within "([^"]*)")? should be checked$/ do |label, selector|
with_scope(selector) do
field_checked = find_field(label)['checked']
if field_checked.respond_to? :should
field_checked.should be_true
else
assert field_checked
end
end
end
I można napisać następujące czynności, aby sprawdzić, czy dany przycisk Raido jest sprawdzane, czy nie
And the "Bacon" radio_button within "div.radio_container" should be checked
Owinięty Jesper Rønn-Jensen jego funkcja + dodana nazwa, która jest używana przez szyn:
Then /^I should see that "([^"]*)" is checked from "([^"]*)"$/ do |value, name|
page.should have_selector "input[type='radio'][checked='checked'][value='#{value}'][name='#{name}']"
end
find_field("radio_button_name").should be_checked
lub w nowej składni:
expect(find_field("radio_button_name")).to be_checked
- 1. Jak sprawdzić, który przycisk radiowy jest zaznaczony w jquery?
- 2. Jak mogę sprawdzić, który przycisk radiowy jest zaznaczony z pola grupowego?
- 3. Jak sprawdzić przycisk radiowy jest sprawdzany za pomocą JQuery?
- 4. Jak sprawdzić, czy przycisk wyboru jest zaznaczony w Selenium WebDriver?
- 5. przycisk radiowy nie jest zaznaczony podczas odświeżania strony w firefox
- 6. Angularjs: przycisk radiowy sprawdzony
- 7. Przycisk radiowy domyślnie zaznaczony przy korzystaniu z powtarzania ng
- 8. Jak wybrać przycisk radiowy?
- 9. Jak wykryć kliknięcie na już zaznaczony przycisk karty
- 10. Codeigniter: jak mogę sprawdzić, czy model jest już załadowany?
- 11. Jak mogę sprawdzić, czy dany pakiet jest już zainstalowany?
- 12. Detect czy przycisk radiowy jest wyłączony lub włączony
- 13. Dzwonek do kompletacji - Przycisk radiowy ustawiony
- 14. Django: Jak sprawdzić, czy widget pola jest zaznaczony w szablonie?
- 15. Przycisk radiowy CakePHP 3.0
- 16. Przycisk radiowy "sprawdzono" przycisk Bootstrap
- 17. Przycisk radiowy Bootstrap Unselect
- 18. centrum przycisk radiowy poniżej etykiety
- 19. Korzystając z jquery, jak mogę sprawdzić przycisk radiowy na podstawie wartości zmiennej?
- 20. angularjs Bootstrap radiowy przycisk grupa
- 21. Ustawiony przycisk domyślny php zaznaczony domyślnie
- 22. Jak mogę sprawdzić, czy dane już istnieją na liście combobox?
- 23. Jak mogę sprawdzić, czy wyjątek został już zgłoszony?
- 24. Czy mogę uzyskać zaznaczony tekst w JQuery?
- 25. Jak mogę sprawdzić, czy synonim już istnieje, nie twórz synonimu
- 26. Mootools ustawić przycisk radiowy sprawdzone
- 27. JQuery: uzyskać wartość przycisk radiowy
- 28. jak ustawić przycisk radiowy za pomocą knockout.js?
- 29. Jak sprawdzić, czy port TCP jest już odsłuchiwany?
- 30. Jak sprawdzić, czy fragment już jest wywoływany naCreateView()
Wydaje ta metoda nie działa. Używam Capybara 2.4.1. Metoda "find_field" zasugerowana przez @evedovelli poradziła sobie z tym. –
Proponuję nie używać "powinien be_checked", ale zamiast: oczekiwać (find_field ("my_boxt")). Be_checked – Tommyixi