我試圖點擊一個複選框,使購買按鈕出現。當我嘗試使用它時,出現一個「NoMethodError:未定義的方法'eula'for 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:我被改變的對象類型周圍試圖得到它的工作。元素是我試過的最後一個類型。我將我的例子改回複選框(我的原始嘗試)。感謝您指出了這一點。
他們真的有相同的ID嗎?這是無效的HTML。 – 2012-03-07 01:53:37