SuperAPI AI 工具集

rspec-rails

通用与其它

查看项目

更新于 10-16 05:01

技能介绍

用途:rspec-rails 把 RSpec 与 Rails 集成,按 Rails 组件提供专用 spec 类型,用于测试模型、HTTP 请求、浏览器端到端流程、邮件、后台任务、视图、辅助方法和路由。

主要能力与 spec 类型:模型 spec 放 spec/models/,测试 ActiveRecord 的校验、关联和作用域;请求 spec 放 spec/requests/,覆盖控制器与路由,官方推荐用它替代已弃用的控制器 spec(spec/controllers/);系统 spec 放 spec/system/,基于 Capybara 做浏览器端到端测试;邮件 spec 放 spec/mailers/,测试邮件内容与投递;任务 spec 放 spec/jobs/;另有视图 spec、辅助方法 spec 和路由 spec。

必要用法:在 spec/rails_helper.rb 中 require "spec_helper"、设置 ENV["RAILS_ENV"] ||= "test"、require_relative "../config/environment"、require "rspec/rails",并在 RSpec.configure 中配置 fixture_paths、use_transactional_fixtures、infer_spec_type_from_file_location! 与 filter_rails_from_backtrace!。系统测试用 driven_by(:rack_test) 或不启用 JS,用 driven_by(:selenium_chrome_headless) 测试 JS 交互。可用 Capybara 匹配器断言内容、元素、表单、链接和当前路径,用 sign_in 等 Devise 辅助方法测试认证。可配合 shoulda-matchers 写一行式校验断言。

适用场景:Rails 应用的单元、请求与端到端测试。

限制:资料未说明安装命令、版本要求、性能数据及收费信息。