首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails cancan(can)无法识别测试数据库中的数据

Rails cancan(can)无法识别测试数据库中的数据
EN

Stack Overflow用户
提问于 2016-02-16 06:58:31
回答 2查看 38关注 0票数 0

我有一个完整的ability.rb定义,它可以正常工作。但是,当我编写一个向端点发送请求的控制器规范时,cancan(can)反复返回403。

在处理我正在测试的端点的相应部分的ability.rb中,当输出{Model}.all.to_json时,它将输出一个空数组。

我如何解决这个问题,使其能够识别我的测试数据库中的数据,或者更改我的测试以绕过它?

EN

回答 2

Stack Overflow用户

发布于 2016-02-16 06:59:58

测试数据库中的数据在每次迭代时都会被重置。如果你想使用一些特定的状态(例如数据),你必须重新创建该状态作为测试的一部分。

根据测试框架的不同,在执行测试之前,使用beforesetup钩子创建测试套件中所需的数据。

票数 0
EN

Stack Overflow用户

发布于 2016-02-17 00:14:10

在深入查看我的代码之后,我意识到我没有通过fixture创建的一小部分数据没有通过验证,因此没有被创建。

我的测试环境设置正确,但我没有使用create!调用,而是使用了create,这导致它不能显式地显示验证错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35420674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档