为Spree应用程序编写测试套件

时间:2016-06-08 19:44:59

标签: ruby-on-rails testing rspec spree

我想使用FactoryGirl和RSpec为我的Spree应用程序构建一个测试套件。我应该从头开始编写测试,还是可以以某种方式利用现有资源,这样我最终不会重复代码?

spree/core/spec/models/spree中有许多_spec.rb文件。如果可以运行rspec spec并运行核心狂欢测试套件以及我编写的任何测试,那就太棒了。

Spree documentation建议运行bundle exec rake test_app以在spec目录中构建相应的测试应用程序。“当我运行该命令时,收到此错误消息:

rake aborted! Don't know how to build task 'ecommerce' (see --tasks)

Spree使用以下行安装在config / routes.db中:mount Spree::Core::Engine, at: '/'

我希望拥有“适当的文件”,这样我就不必编写已经编写过的许多测试,但我很难过。感谢您的任何提示。

1 个答案:

答案 0 :(得分:1)

来自Spree文档:

  

Spree由几个不同的gem组成(有关更多详细信息,请参阅源代码指南。)这些gem中的每一个都有自己的测试套件,可以在spec目录中找到。由于这些gems也是Rails引擎,它们无法真正完全隔离测试 - 它们需要在Rails应用程序的上下文中进行测试。

     

您可以使用Rake任务轻松构建此类应用程序   为此目的而设计,在您想要的组件内运行它   测试:

     

$ bundle exec rake test_app

换句话说,如果您想测试Spree本身,请为此特定目的构建新的Rails应用程序。

我怀疑这是你想要做的。如果您为自己的应用程序编写测试,即使它使用Spree,您也不需要测试Spree本身,只需要编写您编写的代码。据推测,Spree的作者在将每个新版本发布到野外之前都会运行这些测试。