基础情况有3个测试实例,代码如下:
#[cfg(test)]
mod tests {
#[test]
fn it_works() {
assert_eq!(2 + 2, 4);
}
#[test]
#[should_panic (expected = "should_panic test")]
fn foo() {
panic!("should_panic test");
}
#[test]
fn it_works1() -> Result<(), String> {
if 2 + 2 == 4 {
Ok(())
} else {
Err(String::from("two plus does not equal four"))
}
}
}
#[cfg(test)]
mod tests1 {
#[test]
fn it_woks() {
println!("it_works test");
assert_eq!(2 + 2, 4);
}
#[test]
#[ignore]
fn expensive_test() {
// code takes many times
}
}
之后执行cargo test
命令,会自动化执行测试用例,ignore
关键字标记的部分不会执行,其他部分可以参考文档:https://rustlang-cn.org/office/rust/book/testing/ch11-02-running-tests.html