在写第一个ruby unit test的时候遇到的一个奇怪的有关问题
在写第一个ruby unit test的时候遇到的一个奇怪的问题最近一直在看ruby。今天开始着手写一个ruby的单元测试
在写第一个ruby unit test的时候遇到的一个奇怪的问题
最近一直在看ruby。今天开始着手写一个ruby的单元测试。没想到第一行就遇到了一个问题。
require 'test/unit'
结果却报错: Test is not a module.我找到了报错assertionfailederror.rb的那行代码:
module Test module Unit # Thrown by Test::Unit::Assertions when an assertion fails. class AssertionFailedError < StandardError end endend
就是在第一行定义module的时候就报错了。这是怎么回事呢?
于是我开始google了,但是找了半天竟然没有结果。这个时候,我的目光忽然定格在了这个名字上:Test。我刚刚是定义了一个类Test。不会是冲突了吧。
我是在irb中玩的,所以忘记了刚才定义的东东了。于是重新打开了一个irb,输入require 'test/unit',这次正常了。
问题解决了,但是背后的秘密我还没搞清楚。继续学习中。