px普贤教程PuXian
普贤教程 › 包参考

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_runcases
其余 4 个 def(内部与辅助,可直接调用但不属稳定接口)
函数参数
td_onec
td_skipname, reason
td_namename
td_countcases

包内说明(源码头注释)

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}