我有一个问题,我试图解决网页上的某个警报是否正确计算总和。我正在使用水豚和黄瓜。在Ruby中计算天数
我有一个计算在30天内到期的记录的警报。当选择此提醒时,记录被列在一张表格中,并且日期以以下格式显示:“1 feb 2016”
我想要做的是以某种方式取今天的日期,将它与在并确保它距离警报日期大于等于30天。
我能出今天的日期作为使用相同的格式Time.strftime等
当我尝试了诸如:
And(/^I can see record "([\d]*)" MOT is calculated due within 30 days$/) do |selection1|
today = Time.now.strftime('%l %b %Y')
thirty_days = (today + 30)
first_30day_mot = first('#clickable-rows > tbody > tr:nth-child(' + selection1 + ') > td:nth-child(3)')
if today + first_30day_mot <= thirty_days
puts 'alert correct'
else
(error handler here)
end
end
正如你可以看到,这是一个相当混乱。
我不断收到错误TypeError: no implicit conversion of Fixnum into String
如果任何人都可以想到的更合适的方法来做到这一点,请把我从我的痛苦。
感谢
'first_30day_mot'是最有可能的字符串。可能是'to_i'会帮助 –
我尝试过,但同样的错误出现了。 – Tom
每当您尝试将整数添加到字符串或任何类似的操作时,都会出现该错误。您可以通过检查报告错误的行号处的值来调试代码。 –