Rust编程语言-11-测试

测试

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

#[cfg(test)]
mod tests {
    use super::*;

    #[test]
    fn this_test_will_pass() {
        let value = prints_and_returns_10(4);
        assert_eq!(10, value);
    }

    #[test]
    fn this_test_will_fail() {
        let value = prints_and_returns_10(8);
        assert_eq!(5, value);
    }
}

单元测试默认是并行执行的(in parralel)

一些参数或者调用方式:

  • 串行执行测试
    增加参数 test-threads=1,指定只有一个线程,所有测试必须一个接一个的执行
    $ cargo test -- --test-threads=1
  • 指定执行某些测试
  • 忽略某些测试
    -#[ignore],$cargo test -- --ignored

集成测试

tests/integration_test.rs
在src的同级目录创建tests目录

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容