【发布时间】:2018-02-09 08:43:34
【问题描述】:
我有以下代码:
def find_status(arg)
10.times do
table = table_element(:css => 'css.path')
break if table.visible?
end
table = table_element(:css => 'css.path')
if table.visible?
table.each do |row|
STDOUT.puts row[1].text
match = /^#{arg}\n(String \S+) at .+/.match(row[1].text)
return match[1] if match
end
end
return "status unknown"
end
现在的问题是我收到以下错误:
undefined method `text' for nil:NilClass (NoMethodError)
奇怪的是它打印的正是我想要它打印的内容,并指出错误出现在“STDOUT”行上。 所以总而言之,它正在执行命令,但说 row 是一个 nil 值。
我们将不胜感激。
【问题讨论】:
-
您希望它打印“nil”吗?
-
我不希望它打印 nil,但我希望它“打印” nil,因为它应该不保存任何内容,而是打印我希望它保存的实际信息。跨度>
-
如果您可以提供重现该问题的 HTML,将会有所帮助。特别是,您确定表格中的每一行都有 2 列吗?
-
嘿@JustinKo - 这正是我正在研究的......显然其中一行是只有一列的页脚。这个问题可能会得到解决,但仍然是松散的。谢谢
标签: ruby cucumber page-object-gem