#test-cases #case #catalog #proc #proc-macro #information #test-catalog

nightly macro proc-test-catalog

用于测试目录收集的进程宏,详细信息请参阅test-catalog

1 个不稳定版本

0.1.0 2021年12月20日

#32 in #catalog


用于 libtaos

MIT 许可证

8KB
182

测试目录

这是一个简单的工具,用于收集测试用例信息并导出为目录。

首先,使用test-catalog二进制文件安装cargo install test-catalog

要使用测试目录规范,请将依赖项添加到Cargo清单文件(Cargo.toml)中

[dev-dependecies]
proc-test-catalog = "0.1.0"
test-catalog = "0.1.0"

请注意,proc-test-catalog 包需要nightly通道才能编译。

之后,除了传统的测试用例外,您应在#[test]之后使用#[proc_test_catalog::test_catalogue]属性,然后在文档行中添加用例描述。

#[test]
#[proc_test_catalog::test_catalogue(since = "0.1.0")]
/// This is preferred case description.
fn it_works() {
    // some test codes.
    println!("ok");
}

以下是test_catalogue进程宏支持的完整属性列表

  • since: 自特定版本以来添加的测试用例。
  • compatible_version: 兼容TDengine版本的表达式,例如 ^2.3.0 && ~2.5.0 或 ">2.0"。
  • description: 使用此属性覆盖描述,否则将使用默认的文档描述。

然后,运行cargo test,并使用test-catalog工具导出测试目录。

关于一个测试用例的完整信息列表如下

  • version: 当前应用程序版本
  • file: 相对于主清单文件的测试用例所在文件的路径。
  • line_start: file中测试用例的起始行。
  • line_end: file中测试用例的结束行。
  • name: 测试用例函数名称。
  • 描述:使用区分信息描述当前测试用例。
  • :测试用例的第一个版本添加。
  • 兼容版本:仅适用于TDengine,兼容TDengine版本的表达式。
  • 作者:测试用例的作者
  • 创建时间:测试用例的创建时间(自纪元以来的秒数)。
  • 最后提交ID:测试用例的最后提交ID。
  • 最后提交者:测试用例的最后提交签名作者。
  • 最后修改时间:测试用例的最后修改时间。
  • 耗时:测试用例在纳秒级的时间成本。

test-catalog 工具可以将测试目录导出到多种文件格式,包括markdown、confluence wiki标记、制表符分隔的文本(tsv)、csv、或json,默认为markdown。

例如,将测试目录导出到CSV

test-catalog -f csv

依赖项

~35MB
~737K SLoC