我目前正在使用Rspec(3)成功地测试一个Rails(4.2) helper。但是,测试文件的设置有点麻烦。如何简化请求和/或包含行?
# spec/helpers/nav_helper_spec.rb
require 'spec_helper'
require_relative '../../app/helpers/nav_helper' # this seems bulky
describe NavHelper do
include NavHelper # this seems repetitive
...
end提前感谢!
发布于 2015-01-29 11:23:16
如果你有一个“默认”的设置,那么除了你的spec_helper之外,你可能还有一个rails_helper。如果你不介意加载这个规范中的所有Rails目录(对性能有一点影响),你可以要求它而不是spec_helper (清理需求)。但是只包含你需要的并没有错,它会运行得更快。
如果Rspec知道规范类型,它还会为您混合辅助对象。您可以在规范帮助器中包含config.infer_spec_type_from_file_location!,也可以在describe声明中包含类型:
describe NavHelper, type: :helper do无论哪种方式,您都可以使用expect(helper.method_name).to eq(result)之类的东西,而不需要显式地包含模块。
https://stackoverflow.com/questions/28203873
复制相似问题