Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.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 on rails 从根目录和测试目录运行rails测试之间的差异_Ruby On Rails - Fatal编程技术网

Ruby on rails 从根目录和测试目录运行rails测试之间的差异

Ruby on rails 从根目录和测试目录运行rails测试之间的差异,ruby-on-rails,Ruby On Rails,从根目录运行rails测试和从测试目录运行rails测试之间有什么区别?我见过这两种方法,但我想最好是一种 ruby test/unit/user_test.rb vs 唯一的区别在于相对路径——任何需求都是相对于运行ruby的目录的 例如,如果您的测试用例中有require'test\u helper.rb',那么这将只在测试目录中起作用(因为那里是test\u helper.rb所在的目录) 如果要从根目录运行测试,则必须将其更改为require File.join(File.dirnam

从根目录运行rails测试和从测试目录运行rails测试之间有什么区别?我见过这两种方法,但我想最好是一种

ruby test/unit/user_test.rb
vs


唯一的区别在于相对路径——任何需求都是相对于运行ruby的目录的

例如,如果您的测试用例中有
require'test\u helper.rb'
,那么这将只在测试目录中起作用(因为那里是test\u helper.rb所在的目录)


如果要从根目录运行测试,则必须将其更改为
require File.join(File.dirname(\uuuu File\uuu),“…”,“test\u helper.rb”
,其中File是包含此行的文件(测试用例)的路径,其余的是test_helper.rb相对于该文件的路径。这样,运行测试的位置就无关紧要了。

谢谢,这是我注意到的唯一区别。但我不确定是否还有进一步的影响。
cd test
ruby unit/user_test.rb