使用 Bullet gem 与 rspec 进行测试
using Bullet gem for testing with rspec
我正在使用 rspec 或测试 API。
同时我正在使用 bullet gem 来识别 N+1 查询问题。
Bullet gem 在除 test(rspec)
之外的所有其他环境中工作正常
项目符号 gem 表示
Bullet::Notification::UnoptimizedQueryError: user: karthik
Unused Eager Loading detected
并将测试进程停止到 运行。
如果我删除相应的预加载它工作正常,但在开发的服务器日志中
user: karthik
/api/v1/grades
N+1 Query detected
Grade => [:grade_details]
Add to your finder: :includes => [:grade_details]
N+1 Query method call stack
我也提到了 https://github.com/flyerhzm/bullet/issues/115
但我也无法得到直接的答案
可以在测试环境中设置Bullet.raise = false
,这样测试就不会掉线了。或者禁用 N+1 查询以使用 Bullet.n_plus_one_query_enable = true
定义测试
我正在使用 rspec 或测试 API。 同时我正在使用 bullet gem 来识别 N+1 查询问题。
Bullet gem 在除 test(rspec)
之外的所有其他环境中工作正常项目符号 gem 表示
Bullet::Notification::UnoptimizedQueryError: user: karthik
Unused Eager Loading detected
并将测试进程停止到 运行。
如果我删除相应的预加载它工作正常,但在开发的服务器日志中
user: karthik
/api/v1/grades
N+1 Query detected
Grade => [:grade_details]
Add to your finder: :includes => [:grade_details]
N+1 Query method call stack
我也提到了 https://github.com/flyerhzm/bullet/issues/115 但我也无法得到直接的答案
可以在测试环境中设置Bullet.raise = false
,这样测试就不会掉线了。或者禁用 N+1 查询以使用 Bullet.n_plus_one_query_enable = true