#testing #group #compile #macro

过程宏 extest

为您的测试提供额外工具

1 个不稳定版本

0.1.0 2023年3月28日

过程宏 中排名第1890

自定义许可证

6KB
123

extest

编写/运行测试的额外工具。

用法

分组

use extest::group;

// Important to keep #[group(..)] macro above the test
// Otherwise it will fail to compile due to alone #[test] macro in the result.
//
// NOTE: Q: Can we replace test absence with empty test body?
#[group(one_eq_one, two_eq_two)]
#[test]
fn test_arithmetic() {
    assert_eq!(1 + 0, 1);
    assert_eq!(1 + 1, 2);
}

运行测试

$ # test with the `one_eq_one` group will not run
$ GROUP_DISABLE=one_eq_one cargo test
$ # Only enabled tests will be run
$ GROUP_RUN_STRATEGY=only_enabled cargo test # no tests will run
$ # Tests with all mentioned groups will be run
$ GROUP_RUN_STRATEGY=only_enabled GROUP_ENABLE="one_eq_one two_eq_two" cargo test # test_arithmetic... ok
$ GROUP_RUN_STRATEGY=only_enabled GROUP_ENABLE="one_eq_one" cargo test # no tests will run

有关此功能的官方支持(预RFC)的详细信息,请参阅: https://internals.rust-lang.org/t/pre-rfc-test-groups/18591。 注意事项。

无运行时依赖

功能