【Rust自学】11.7. 按测试的名称运行测试

喜欢的话别忘了点赞、收藏加关注哦(加关注即可阅读全文),对接下来的教程有兴趣的可以关注专栏。谢谢喵!(=・ω・=)

11.7.1. 按名称运行测试的子集

如果想要选择运行的测试,就将测试的名称(一个或多个)作为cargo test的参数。

看个例子:

rust 复制代码
pub fn add_two(a: usize) -> usize {
    a + 2
}

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

    #[test]
    fn add_two_and_two() {
        let result = add_two(2);
        assert_eq!(result, 4);
    }

    #[test]
    fn add_three_and_two() {
        let result = add_two(3);
        assert_eq!(result, 5);
    }

    #[test]
    fn one_hundred() {
        let result = add_two(100);
        assert_eq!(result, 102);
    }
}

这里有三个测试,假如我们只想要测试one_hundred这个参数,就这么写:cargo test onne_hundred:

复制代码
$ cargo test one_hundred
   Compiling adder v0.1.0 (file:///projects/adder)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 0.69s
     Running unittests src/lib.rs (target/debug/deps/adder-92948b65e88960b4)

running 1 test
test tests::one_hundred ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 2 filtered out; finished in 0.00s

运行单个测试直接指定测试名就可以。运行多个测试指定测试名的一部分(模块名也可以)作为参数,这样任何匹配这一名称的测试都会被执行。

举个例子,假如我想要执行add_two_and_two()add_three_and_two,这两个测试的名称都含有add这个部分,就写:cargo test add:

复制代码
$ cargo test add
   Compiling adder v0.1.0 (file:///projects/adder)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 0.61s
     Running unittests src/lib.rs (target/debug/deps/adder-92948b65e88960b4)

running 2 tests
test tests::add_three_and_two ... ok
test tests::add_two_and_two ... ok

test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.00s
相关推荐
浪客川19 分钟前
Android的SystemUI的启动流程简析
android·开发语言
JavaGuide19 分钟前
Kimi K3 实战:全栈项目、Java 项目改造与 3A 游戏 Demo
后端·ai编程
wuqingshun31415920 分钟前
如何理解Spring Boot中的starter?
java·spring boot·后端
独孤留白22 分钟前
从C到Rust:Trait From Into 类型转换
rust
AskHarries27 分钟前
PayPal 接入避坑
后端
谭光志28 分钟前
深入浅出 RAG:用一个可运行的 Demo 讲透完整链路
前端·后端·ai编程
wuqingshun31415929 分钟前
SpringBoot是如何实现自动配置的
java·spring boot·后端
-银雾鸢尾-33 分钟前
C#中的抽象类与抽象方法
开发语言·c#
道友可好36 分钟前
前端工程师的 AI 时代生存指南
前端·人工智能·后端
doiito38 分钟前
【RUST AI】把 TTS 搬进浏览器:kokoroi-rs 的 WASM 实践
ai·rust·架构设计