标签或空格可以破坏测试或程序吗?

时间:2012-11-22 09:33:58

标签: ruby-on-rails-3 tdd rspec-rails

我读过“Ruby on Rails Tutorial 3”并尝试找出测试。我刚刚意识到我的(非常简单的)测试打破了,因为我在某种程度上混合了标签和空格来进行控制。

结果我收到了这样的错误:

[31mURI::InvalidURIError:←[0m
       ←[31mthe scheme http does not accept registry part: www.example.comstatic_pages (or bad hostname?)←[0m

在我复制/粘贴测试的第一部分(通过的那部分)并更改了所有测试通过的内容后。

我的问题:有没有“正确”的方法,或只是坚持一种方法(制表符或空格)?

2 个答案:

答案 0 :(得分:3)

我遇到了同样的问题,我认为我们的问题是忘记了访问声明中的第一个斜杠(/)。 以下代码使测试输出URI错误。

visit 'static_pages/about'
page.should have_content('About us')

记下第一个斜杠,代码将按预期工作。

visit '/static_pages/about'
page.should have_content('About us')

答案 1 :(得分:0)

标签/空格应该对您的测试产生效果。有些语言很重要,但红宝石不是其中之一。我猜测可能看起来像空格的东西实际上是一些看不见的utf8字符导致了这个问题。在我从其他来源复制和粘贴之前,我已经发生过这种情况。只需根据我看到的修复它重新编写它。

底线...使用你想要的任何东西......保持一致只是为了让你的生活更简单,但这并不重要。