我已经定义了一个彻底的ability.rb
正常工作。但是,当我编写一个向端点发送请求的控制器规范时,cancan(可以)会重复返回403。
在相应部分的ability.rb
中处理我正在测试的端点,输出{Model}.all.to_json
时输出一个空数组。
如何解决这个问题,以便识别我的测试数据库中的数据,或更改我的测试以绕过它?
答案 0 :(得分:0)
每次迭代都会重置测试数据库中的数据。如果要使用某些特定状态(例如数据),则必须在测试过程中重新创建该状态。
根据测试框架,使用before
或setup
挂钩在测试本身执行之前在测试套件中创建所需的数据。
答案 1 :(得分:0)
在深入了解我的代码之后,我意识到我没有通过灯具创建的一些数据未通过验证,因此无法创建。
我的测试环境设置正确,但我没有create!
调用,而是create
调用,导致验证错误无法明确。