【发布时间】:2012-10-23 21:23:27
【问题描述】:
我正在使用 watir-cucumber 进行自动化测试。我在单独的.rb 中编写了以下方法,此方法不在步骤定义中。
def has_logged_in?
$browser.text.should include("t788")
end
当我从步骤定义中调用此方法时,会出现此错误,
wrong argument type String (expected Module) (TypeError)
相同的代码在步骤定义中也能正常工作。我四处搜索,发现include方法用于包含模块,但这是ruby-include方法,should include在rspec\expectations下。那么如何在上面的步骤定义之外调用should include 方法。
我在 linux 上使用 watir-cucumber
【问题讨论】:
-
你在哪里以及为什么写这个方法?
-
text.should =~ /t788/也可以 -
@IsmaelAbreu 我想测试用户是否已登录,因此我不想为每个步骤都编写它,而是要调用此函数,然后它将决定步骤是通过还是失败。这是为了避免代码重复
标签: ruby rspec cucumber watir watir-webdriver