用途:该技能面向 EasyPost 单体仓库的 Ruby / Rails 开发,重点规范 RSpec 测试写法,尤其是与 rUSERS、rUSPS 等微服务交互时的测试方式。
主要能力:推荐使用 mock adapter 模式而非 RSpec 消息打桩(allow(...).to receive(...))。核心组件包括:与线上服务接口一致的内存实现 Mock Adapter 类(如 SupportUsersMockAdapter);通过 :mock_users 或 :mock_usps 元数据让测试选择性启用;工厂自动填充 mock adapter 数据;用环境变量 MOCK_USERS=1(默认)跑快速测试,MOCK_USERS=0 跑集成测试。
使用方式:在 RSpec 描述块上添加 :mock_users、:mock_usps 元数据,通过工厂配置数据而非直接操作 adapter;确保 mock adapter 实现与线上服务相同的校验;关键路径可用 mock_users: false、vcr: :users 对真实服务测试。提交前可用 arc lint spec/lib/myfile_spec.rb 检查。测试文件按类型放置:单元测试在 spec/lib/、spec/models/,集成测试在 spec/requests/、spec/features/,工厂在 spec/factories/,辅助代码在 spec/support/。
适用场景:EasyPost 单体仓库内涉及微服务交互的 Ruby / Rails 测试编写与迁移。
限制:资料仅覆盖上述测试模式与规范,未提供安装命令、收费、平台支持等信息;具体实现细节需参考仓库内文档 docs/testing/rusers-test-migration.md 及 spec/support/users.rb、spec/support/usps.rb、spec/factories/carrier_accounts.rb。