普贤教程 › 包参考
tdtest 包
表驱动测试增强
| 项 | 值 |
|---|---|
| 包名 | tdtest |
| 版本 | 0.2.0 |
| 可用版本 | 0.1.0 / 0.2.0 |
| 入口 | tdtest.px |
| 分类 | 可观测与测试 |
| 文件数 / 行数 | 1 / 75 |
安装与引入
bash
pxpkg init # 首次 pxpkg add tdtest@0.2.0 pxpkg install
px
import tdtest所属分类教程:可观测与测试
公开接口
| 函数 | 参数 |
|---|---|
td_run | cases |
其余 4 个 def(内部与辅助,可直接调用但不属稳定接口)
| 函数 | 参数 |
|---|---|
td_one | c |
td_skip | name, reason |
td_name | name |
td_count | cases |
包内说明(源码头注释)
text
============================================================ 普贤生态库:registry/tdtest —— 表驱动测试增强 ------------------------------------------------------------ 纯函数库(无 IO、无状态、无并发),编译(px build)与解释(px run)双模式一致。 var cases = [ {"name": "add1", "fn": f, "args": 1, "want": 2}, {"name": "wide", "fn": g, "args": "x", "check": fn(r): contains(r, "a")} ] var r = td_run(cases) # Ok({pass, fail, total, failures}) 约定: - fn 为单参函数 fn(arg) -> 实际值(动态多参非语言原生,单参覆盖常见场景) - 断言二选一:want(相等)或 check(谓词 fn(actual) -> bool) - 失败项收集 {name, got, want, err},不 print、不 exit(由调用方决定呈现) ============================================================ 单条案例执行 → "pass" | {fail: got/want/err}