測試
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);
}
}
單元測試默認是并行執(zhí)行的(in parralel)
一些參數(shù)或者調(diào)用方式:
- 串行執(zhí)行測試
增加參數(shù) test-threads=1,指定只有一個線程授霸,所有測試必須一個接一個的執(zhí)行
$ cargo test -- --test-threads=1 - 指定執(zhí)行某些測試
- 忽略某些測試
-#[ignore]巡验,$cargo test -- --ignored
集成測試
tests/integration_test.rs
在src的同級目錄創(chuàng)建tests目錄