Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ruby脚本时出现Rspec错误:";无法加载这样的文件--./components/tasks.rb";(ruby应用程序不是rails)_Ruby_Rspec - Fatal编程技术网

使用ruby脚本时出现Rspec错误:";无法加载这样的文件--./components/tasks.rb";(ruby应用程序不是rails)

使用ruby脚本时出现Rspec错误:";无法加载这样的文件--./components/tasks.rb";(ruby应用程序不是rails),ruby,rspec,Ruby,Rspec,我正在尝试构建我的Rspec测试,以测试我正在构建的ruby应用程序。我知道我应该先构建,然后再测试。代码100%有效,我只是在让Rspec查看我的代码时遇到了问题 github上的完整代码: 到目前为止,我使用rspec运行的唯一文件是ruby/spec/game_spec.rb game_spec.rb文件如下所示: require_relative.。/tictactoe Rspec.description任务是什么 在…之前做 @game=Tictactoe::game.new 终止

我正在尝试构建我的Rspec测试,以测试我正在构建的ruby应用程序。我知道我应该先构建,然后再测试。代码100%有效,我只是在让Rspec查看我的代码时遇到了问题

github上的完整代码:

到目前为止,我使用rspec运行的唯一文件是ruby/spec/game_spec.rb

game_spec.rb文件如下所示:

require_relative.。/tictactoe
Rspec.description任务是什么
在…之前做
@game=Tictactoe::game.new
终止
它“有一种称为play”的工作方法
期待{@game.play}.to输出(“欢迎!来到不可战胜的Tic tac toe”)。to_stdout
终止

end
执行代码时,根据您所在的目录解析
require
路径。它实际上比这要复杂一点,还有“加载路径”的整个概念,它是可配置的。看

从这行
加载/game_spec.rb时出错。
我想你已经运行了
cd spec
然后
rspec./game_spec.rb
或者类似的东西。我认为,如果您在项目目录的根目录中运行
rspec spec/game\u spec.rb
,那么您的代码就可以工作了


require\u relative
优于
require
的好处在于,无论从何处调用脚本,都可以解析路径。我想如果您在tictactoe.rb中使用
require\u relative
,它会起作用

谢谢大家!!这起作用了。我知道这更简单。