The Rust Programming Language - 第11章 测试 - 11.2 控制测试如何运行

11 测试

编写自动化测试

程序的正确性代码如我们期望的那样运行,Rust也在语言本身包含了编写软件测试的支持

本章我们会讲到编写测试时用到的注解和宏,运行测试的默认行为和选项,以及如何将测试组织成单元测试和集成测试

10.2 控制测试如何运行

cargo test在测试模式下编译代码并运行生成的测试二进制文件

并行或连续的运行测试

Rust默认使用线程来并行运行多个测试,因此测试之间不能相互依赖、或依赖任何共享的状态,包括依赖共享的环境,比如当前工作目录或者环境变量

但是如果你不希望测试并行运行,或者想要更加精确的控制线程的数量,可以传递-- test- thread参数和希望使用线程的数量给测试二进制文件

cargo test -- --test-threads=1

这里将测试线程设置为1,告诉程序不要使用任何并行机制

显示函数输出

默认情况下,当测试通过时,Rust的测试库会截获打印到标准输出的所有内容,比如在测试过程中调用了println!宏,并且测试通过了,我们不会看到prinln的输出,只会看到测试通过

,如果测试失败,则会看到所有标准输出和其他错误信息

我们来看个例子

fn prints_and_returns_10(a:i32)->i32{
    println!("I got the value {}",a);
    10
}

#[cfg(test)]
mod tests {
    use 

你可能感兴趣的:(#,Rust,开发语言,后端,Rust,ignore,测试)