The test command
在写一本书时,你有时需要自动化一些测试。例如 Rust Programming Book有很多 可能会过时的代码示例。因此,自动测试这些代码示例也是非常重要的。
mdBook 支持test
命令,该命令将运行书籍中的所有可用测试。注意在
目前,仅支持 rustdoc 测试,但未来可能会支持的更多。
禁止对代码块进行测试
rustdoc 不会测试包含 ignore
属性的代码块:
```rust,ignore
fn main() {}
```
rustdoc 也不会测试指定 Rust 以外语言的代码块:
```markdown
**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
build cache deps
目录
包含项目的生成输出。例如,如果你的 Rust 项目的书在目录中 名为“my-book”,以下命令将在运行“test”时包含 crate的依赖项:
mdbook test my-book -L target/debug/deps/
获取更多信息,可以参考 rustdoc
命令行 documentation
--dest-dir
--dest-dir
(-d
) 选项,允许您改变您的图书输出路径。注意如果是相对路径,则相对的是图书的根目录。如果没有指定 --dest-dir
(-d
),则 --dest-dir
(-d
)的路径是在book.toml
指定的,一般是 ./book