- 新增 backend/tests/mysql/ 目录,包含 Docker Compose 配置和测试文件 - 新增 Makefile 命令: test-mysql, test-mysql-up, test-mysql-down, test-mysql-quick - 使用 build tag 控制测试启用,默认不运行 - 测试覆盖: 迁移正确性、外键约束、UNIQUE 约束、并发写入 - 发现 statsRepo.Record 存在并发 bug(检查-然后-操作竞态条件)
22 lines
497 B
YAML
22 lines
497 B
YAML
version: '3.8'
|
|
|
|
services:
|
|
mysql:
|
|
image: mysql:8.0
|
|
container_name: nex-mysql-test
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: testpass
|
|
MYSQL_DATABASE: nex_test
|
|
MYSQL_USER: nex_test
|
|
MYSQL_PASSWORD: testpass
|
|
ports:
|
|
- "13306:3306"
|
|
tmpfs:
|
|
- /var/lib/mysql
|
|
healthcheck:
|
|
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p$$MYSQL_ROOT_PASSWORD"]
|
|
interval: 1s
|
|
timeout: 5s
|
|
retries: 10
|
|
start_period: 10s
|