用途:该技能面向数据持久化层的测试,核心目标是保证数据库模式正确、数据完整、事务安全以及查询性能可接受。原文强调数据库缺陷会造成不可恢复的数据丢失与静默扩散的损坏,迁移必须可回滚。
主要能力:一是模式测试,通过 information_schema.tables、information_schema.columns、information_schema.table_constraints 等查询验证表、列类型与约束是否存在且正确。二是数据完整性测试,验证唯一约束、外键约束(防止孤儿记录)与 check 约束是否按预期拒绝非法数据。三是迁移测试,验证迁移新增表、迁移可逆(migrate 后 rollback 表应消失)以及迁移保留既有数据。四是事务隔离测试,验证出错时事务回滚、并发事务按隔离级别正确串行化(示例中两笔并发扣款余额应为 0 而非 50)。五是查询性能测试,通过种子数据计时与 EXPLAIN 检查是否使用索引扫描而非顺序扫描。
使用方式:资料以 JavaScript 测试代码示例呈现,使用 migrate、rollback 等迁移函数、db.transaction 事务、db.raw 执行原始 SQL,并借助 expect 断言。命令与代码需按原文保留,本次未提供安装命令。
适用场景与限制:适用于有关系型数据库持久化层的项目,可结合测试数据管理、性能测试与测试自动化策略等关联技能,在 CI/CD 中自动执行迁移测试。资料未说明具体数据库版本、依赖安装方式、收费与平台,亦未提供官方链接以外的支持信息。