自動化しているフォームのページ オブジェクトを作成しようとしていますが、「checkout_form」の未定義のローカル変数またはメソッドを取得していますが、変数は既に定義されていると思います。
これは私のページオブジェクトページです:
require "page-object"
class CheckoutForm
include PageObject
# Checkout page
# Billing info
text_field(:billingfirst, :id => 'CheckOut_BillingTag_FirstName')
text_field(:billingmiddle, :id => 'CheckOut_BillingTag_MiddleInitial')
text_field(:billinglast, :id => 'CheckOut_BillingTag_Lastname')
text_field(:billingaddress, :id => 'CheckOut_BillingTag_Address1')
text_field(:billingaddress2, :id => 'CheckOut_BillingTag_Address2')
text_field(:billingcity, :id => 'CheckOut_BillingTag_City')
text_field(:billingstate, :id => 'CheckOut_BillingTag_State')
text_field(:billingzip, :id => 'CheckOut_BillingTag_ZipCode')
text_field(:billingphone, :id => 'CheckOut_BillingTag_Phone')
text_field(:billingemail, :id => 'CheckOut_BillingTag_Email')
def billing_info( billingfirst, billingmiddle, billinglast, billingaddress, billingaddress2, billingcity, billingstate, billingzip, billingphone, billingemail )
self.billingfirst = billingfirst
self.billingmiddle = billingmiddle
self.billinglast = billinglast
self.billingaddress = billingaddress
self.billingaddress2 = billingaddress2
self.billingcity = billingcity
self.billingstate = billingstate
self.billingzip = billingzip
self.billingphone = billingphone
self.billingemail = billingemail
end
end
ページ オブジェクトを使用する別のページで、「require_relative "checkout-form.rb"」を追加しました。
そこで、ドライバーをセットアップしました。
@b = Watir::Browser.new :ff
checkout_form = CheckoutForm.new(@b)
ここで pageobject メソッドとやり取りします。
checkout_form.billing_info.set 'Mike', 'L', 'Jones', '13677 Ruette Le Parc', 'Unit G', 'Del Mar', 'CA', '92014', 'aaaaa', 'mike.jones@gmail.com'