MySQL Tester 项目教程
1. 项目的目录结构及介绍
MySQL Tester 项目的目录结构如下:
mysql-tester/
├── CONTRIBUTING.md
├── LICENSE
├── Makefile
├── README.md
├── go.mod
├── go.sum
├── src/
│ └── ...
└── t/
└── example.test
└── r/
└── example.result
目录介绍
CONTRIBUTING.md
: 贡献指南文件,包含如何为项目贡献代码和文档的说明。LICENSE
: 项目许可证文件,MySQL Tester 使用 Apache-2.0 许可证。Makefile
: 用于构建项目的 Makefile 文件。README.md
: 项目说明文件,包含项目的基本信息和使用说明。go.mod
和go.sum
: Go 模块文件,用于管理项目的依赖。src/
: 源代码目录,包含项目的核心实现。t/
: 测试文件目录,包含所有的测试用例。r/
: 结果文件目录,包含所有测试用例的预期结果。
2. 项目的启动文件介绍
MySQL Tester 的启动文件是 src/main.go
,这是项目的入口文件。它负责初始化配置、连接数据库并执行测试用例。
启动文件主要功能
- 解析命令行参数。
- 初始化数据库连接。
- 运行指定的测试用例或所有测试用例。
- 记录测试结果。
3. 项目的配置文件介绍
MySQL Tester 没有独立的配置文件,其配置主要通过命令行参数进行设置。以下是一些常用的命令行参数:
-all
: 运行所有测试。-host
: 指定 TiDB/MySQL 服务器的主机地址(默认 "127.0.0.1")。-log-level
: 设置日志级别(默认 "error")。-params
: 传递额外的参数作为 DSN。-passwd
: 指定用户密码。-port
: 指定 TiDB/MySQL 服务器的监听端口(默认 "4000")。-record
: 是否记录测试输出到结果文件。-reserve-schema
: 保留每个测试后的模式。-retry-connection-count
: 重试连接数据库的最大次数(默认 120)。-user
: 指定连接数据库的用户(默认 "root")。-xunitfile
: 记录测试结果的 XML 文件路径。
通过这些命令行参数,可以灵活地配置 MySQL Tester 的运行环境。