我正在使用ruby selenium webdriver绑定。
我有一个继承自基类的类并包含PageObject模块,我在子类中有一个覆盖基类的初始化方法。
然而,当我创建对象时,它没有给我页面对象属性,它的解决方案是什么?
这是我的代码:
require 'rubygems'
require 'selenium-webdriver'
require 'page-object'
require '../pages/BasePage.rb'
class AdminLoginPage < BasePage
include PageObject
text_field(:username, :xpath => "//input[@name='username']")
text_field(:password, :xpath => "//input[@name='password']")
button(:login, :css => 'div.form-actions button[type = "submit"]')
link(:url, :link => 'https://dev.herokuapp.com')
def initialize_page(driver)
super
end
def login_with(username,password)
self.username=username
self.password=password
login
end
obj = AdminLoginPage.new(Selenium::WebDriver.for(:firefox))
**obj.username= "test test"
puts obj.username**
end
这是o / p:
block in text_field': undefined method `text_field_value_set' for nil:NilClass (NoMethodError)
我该如何解决这个问题?