26 个版本 (稳定版)
1.7.1 | 2024年4月16日 |
---|---|
1.6.0 | 2023年11月7日 |
1.5.2 | 2023年7月30日 |
1.4.5 | 2022年11月6日 |
0.5.0 | 2016年12月4日 |
#33 在 测试 类别中
42,515 每月下载量
在 34 个 Crates 中使用 (直接使用21个)
12KB
177 行代码
👑 Rust Goldenfile
Rust 中简单的 goldenfile 测试。
Goldenfile 测试在运行时生成一个或多个输出文件。如果任何文件与已提交的“黄金”版本不同,则测试失败。这确保了行为更改是有意为之、明确且版本控制的。
您可以使用 goldenfiles 来测试解析器的输出、图遍历的顺序、模拟的结果或其他任何仅应经过人工审查才应更改的内容。
用法
use goldenfile::Mint;
use std::io::Write;
let mut mint = Mint::new("tests/goldenfiles");
let mut file1 = mint.new_goldenfile("file1.txt").unwrap();
let mut file2 = mint.new_goldenfile("file2.txt").unwrap();
writeln!(file1, "Hello world!").unwrap();
writeln!(file2, "Foo bar!").unwrap();
当 Mint
超出作用域时,它将每个文件的 内容与已提交的黄金版本进行比较,如果它们不同则测试失败。要更新已提交的版本,请运行
UPDATE_GOLDENFILES=1 cargo test
贡献
欢迎提交拉取请求!本项目遵循 Rust 社区的 行为准则。
依赖项
~2–10MB
~122K SLoC