设计简易八字命理测试用例时,需结合传统命理学基本逻辑和现代测试设计的简洁性,以下为分步骤的参考方案:
1. 明确测试目标
核心要素:验证八字排盘、十神计算、五行强弱、大运/流年分析的准确性。
简化范围:优先测试出生时间转八字、五行统计、十神关系等基础功能。
2. 输入数据设计
基础信息输入
正常用例:
阳历生日:1990年5月1日12时(北京时间)
性别:男
预期八字:庚午 庚辰 丙寅 甲午
五行分布:金2、木2、水0、火3、土1(日主丙火偏强)
边界用例:
23:00出生(是否跨日柱)
2月29日(闰年验证)
特殊场景:
子时(23:001:00)划分早/晚子时
不同时区(UTC+8以外需时区转换)
3. 预期输出验证
八字排盘| 测试点 | 输入 | 预期输出(四柱) |
||||| 普通日期 | 08:00 | 乙亥 甲申 癸未 丙辰 |
| 节气交接日 | 18:00 | 庚子 戊子 戊戌 辛酉(冬至换月柱) |
五行统计输入: 05:00(戊辰 丙辰 庚寅 己卯)
预期:土3、木2、火1、金1、水0(日主庚金需土生)
十神关系日主为甲木:
年柱辛酉(正官)
月柱壬辰(偏印)
4. 逻辑规则验证
用神计算:日主弱则生扶为用(如甲木缺水需水木)。
合冲刑害:
地支六合:子丑→土(验证合化成功条件)
相冲:寅申冲(需判断是否破格)
5. 异常处理
无效输入:13月32日、25:00时间
预期:提示“日期/时间不合法”
缺失性别:仅输入生日
预期:提示“需选择性别以排大运”
6. 工具与简化技巧
快速生成工具:使用开源库如`lunarpython`自动排盘。
简化规则:
仅计算四柱和五行,暂不考虑神煞、纳音。
用神建议用简单规则(如缺某五行则补)。
示例测试用例表
| ID | 输入 | 性别 | 预期八字 | 五行短板 | 用神建议 |
|||||||
| TC1 | 03:00 | 女 | 庚辰 戊寅 癸巳 甲寅 | 金弱水微 | 金、水 |
| TC2 | 12:00 | 男 | 乙丑 丁亥 庚戌 壬午 | 木缺土旺 | 木、火 |
1. 命理规则可能存在流派差异,需明确采用哪套标准(如《渊海子平》或《三命通会》)。
2. 自动化测试时,建议对比多个权威工具的输出结果。
3. 用户体验测试:确保术语解释清晰(如“正官”“七杀”的含义)。
通过以上步骤,可系统性地验证八字命理工具的基础功能,适合快速迭代开发或教学演示。