【mdBook】4.5 test 命令
在编写书籍时,有时需要自动化运行一些测试。例如,《Rust 程序设计语言》一书中使用了大量的代码示例,这些示例可能会过时。因此,能够自动测试这些代码示例对他们来说非常重要。
mdBook 支持一个 test 命令,它将运行书籍中所有可用的测试。目前,仅支持 Rust 测试。
禁用代码块的测试
rustdoc 不会测试包含 ignore 属性的代码块:
fn main() {}
rustdoc 也不会测试指定了非 Rust 语言的代码块:
**Foo**: _bar_
rustdoc 会测试没有指定语言的代码块:
This is going to cause an error!
指定目录
test 命令可以接受一个目录作为参数,将其用作书籍的根目录,而不是当前工作目录。
mdbook test path/to/book
–library-path
--library-path (-L) 选项允许你向 rustdoc 在构建和测试示例时使用的库搜索路径中添加目录。可以通过多个选项(-L foo -L bar)或使用逗号分隔的列表(-L foo,bar)来指定多个目录。该路径应指向包含你项目构建输出的 Cargo 构建缓存 deps 目录。例如,如果你的 Rust 项目的书籍在一个名为 my-book 的目录中,以下命令将在运行测试时包含该 crate 的依赖项:
mdbook test my-book -L target/debug/deps/
更多信息请参阅 rustdoc 命令行文档。
–dest-dir
--dest-dir (-d) 选项允许你更改书籍的输出目录。相对路径会被解释为相对于书籍的根目录。如果未指定,它将默认为 book.toml 文件中 build.build-dir 键的值,或者默认为 ./book 目录。
–chapter
--chapter (-c) 选项允许你使用章节名称或章节的相对路径来测试书籍的特定章节。
