2010-10-28 6 views
1

Я изучаю огурец, но я не могу сделать шаг только для соответствия входных тегов.Соответствующий тег ввода с огурцом/Webrat

Что я имею в зрении

<input type="submit" value="Press!" /> 

И то, что я пытался в огурце

Then the "input" field should contain "Press!" 
Then the "type" field should contain "submit" 

Я просто хочу, чтобы подтвердить существование для входных тегов с определенными значениями. Никакого взаимодействия.

ответ

1

Они также явно поддерживаются в Webrat. Даже если вы не можете найти встроенную поддержку в огурце, вы всегда можете просто перейти к своим собственным определениям шага.

источник: http://cheat.errtheblog.com/s/webrat/

== Assertions 

    # check for text in the body of html tags 
    # can be a string or regexp 
    assert_contain("BURNINATOR") 
    assert_contain(/trogdor/i) 
    assert_not_contain("peasants") 

    # check for a css3 selector 
    assert_have_selector 'div.pagination' 
    assert_have_no_selector 'form input#name' 


== Matchers 

    # check for text in the body of html tags 
    # can be a string or regexp 
    # Matchers are verbs used with auxillary verbs should, should_not, etc. 
    response.should contain("BURNINATOR") 
    response.should contain(/trogdor/i) 
    response.should_not contain("peasants") 

    # check for a css3 selector 
    response.should have_selector('div.pagination') 
    response.should_not have_selector('form input#name') 
+0

Я нашел это, выполнив поиск 'trogdor'. Сильно плохо, чувак! –

2

Попробуйте это:

Then I should see "Press!" within "input[type=\"submit\"]"

+0

Спасибо. Мне очень странно, что ни одна из фреймворков не имеет простых способов проверить существование элементов формы. –

1

Вы можете использовать что-то вроде:

response.should have_xpath("//input[@value='Press!']") 

или

response.should have_selector("input", :type => "submit", :value => "Press!") 
Смежные вопросы