#cli #command #assert #cli-test #duct #test

bin+lib trycmd-indygreg-fork

CLI 测试群组的快照测试

1 个不稳定版本

0.14.20 2023年11月6日

测试 中排名 #389

Download history 75/week @ 2024-03-13 80/week @ 2024-03-20 78/week @ 2024-03-27 92/week @ 2024-04-03 113/week @ 2024-04-10 79/week @ 2024-04-17 77/week @ 2024-04-24 67/week @ 2024-05-01 67/week @ 2024-05-08 74/week @ 2024-05-15 72/week @ 2024-05-22 82/week @ 2024-05-29 76/week @ 2024-06-05 65/week @ 2024-06-12 66/week @ 2024-06-19 40/week @ 2024-06-26

每月下载量 256
用于 apple-codesign

MIT/Apache 协议

365KB
9K SLoC

trycmd-indygreg-fork

这是在主干维护者不接受某些 PR 后创建的 https://github.com/assert-rs/trycmd 的软分叉。

主要区别特性是能够创建替代的文件加载器。希望有一天能够创建一个类似 frontend/runner 的新 trycmd,这个分叉就可以废弃了。或者可以说服主干将动态文件加载补丁包含在 trycmd 中。

把你的测试当作牛群,而不是 宠物

Documentation License Crates Status

trycmd 是一个测试框架,它会枚举测试用例文件并运行它们以验证结果,受到 trybuildcram 的启发。

示例

要创建最小配置,创建一个 tests/cli_tests.rs 文件,

#[test]
fn cli_tests() {
    trycmd::TestCases::new()
        .case("tests/cmd/*.toml")
        .case("README.md");
}

并将你的测试用例写入 .toml 文件中,并在你的 README.md 文件中提供示例。

像通常一样使用 cargo test 运行它。 TestCases 会枚举所有测试用例文件并运行其中的命令,验证它们是否按预期运行。

更多内容请参阅 文档

用户

许可证

许可协议为以下之一

由您选择。

贡献

除非您明确说明,否则根据Apache-2.0许可证定义的,您有意提交以包含在该作品中的任何贡献,应如上所述双许可,不附加任何额外条款或条件。

依赖项

~4–14MB
~182K SLoC