Дубликат Флажок в Page-Object не определен? - PullRequest
1 голос
/ 07 марта 2012

Я пытаюсь установить флажок, позволяющий отобразить кнопку покупки. Когда я пытаюсь использовать его, я получаю сообщение об ошибке «NoMethodError: неопределенный метод« eula »для Cart: 0x101f54810». Я думаю, что это может быть потому, что есть два одинаковых флажка, но я просто не уверен.

HTML:

<p id="eula-box" class="annoy cc"><input type="checkbox" name="terms_of_service" value="terms_of_service" tabindex=20 />I have read & agree to the End-User License Agreement.</p>
<p id="eula-box" class="annoy pp"><input type="checkbox" name="terms_of_service" value="terms_of_service" tabindex=20 />I have read & agree to the End-User License Agreement.</p>

Мой класс:

require 'rubygems'
require 'page-object'
require 'page-object/page_factory'
require 'watir-webdriver'

CART_URL = 'http://www.anonymizer.com/cart/checkout.html?SKU=ANONUNV12'

class Cart
        include PageObject
        page_url CART_URL
        checkbox(:eula, :class=>"annoy_cc")
        button(:purchase, :value=>'purchase') 

        def complete_order(data = {})
            self.eula.click
        end
end

Udpated: я менял тип объекта, пытаясь заставить его работать. Элемент был последним типом, который я попробовал. Я изменил свой пример обратно на флажок (моя первоначальная попытка). Спасибо за указание на это.

Ответы [ 3 ]

3 голосов
/ 12 мая 2012

Когда вы вызываете метод уровня класса checkbox в page-object, он генерирует пять методов. Звонок:

checkbox(:summary, :id => 'valid_checkbox')

сгенерирует:

check_summary     # check the checkbox
uncheck_summary   # uncheck the checkbox
summary_checked?  # returns true if it is checked.  otherwise false
summary_element   # returns the Checkbox object
summary?          # returns true if the element exists.  otherwise false

Это метод, с которым нужно взаимодействовать при использовании флажка.

2 голосов
/ 07 марта 2012

PageObject's checkbox генерирует следующий метод, чтобы проверить (т.е. щелкнуть) его.

check_eula

См. http://rubydoc.info/gems/page-object/0.6.3/PageObject/Accessors:checkbox

1 голос
/ 07 марта 2012

Я не очень знаком с объектами страницы, но является ли element допустимым средством доступа?Я смотрю на документацию и не вижу ее.Возможно, было бы лучше использовать аксессор checkbox?

В качестве самого простого способа выяснить, вызвана ли ваша проблема наличием двух одинаковых флажков, - просто снять один и посмотреть, не возникла ли проблема.уходит!

...