相关疑难解决方法(0)

## test]暗含`#[cfg(test)]`吗?

按照惯例,Rust中的单元测试有一个单独的模块,该模块有条件地用#[cfg(test)]以下代码编译:

#[cfg(test)]
mod tests {
    #[test]
    fn test1() { ... }

    #[test]
    fn test2() { ... }
}
Run Code Online (Sandbox Code Playgroud)

但是,我一直在使用一种更内联测试的样式:

pub fn func1() {...}

#[cfg(test)]
#[test]
fn test_func1() {...}

pub fn func2() {...}

#[cfg(test)]
#[test]
fn test_func2() {...}
Run Code Online (Sandbox Code Playgroud)

我的问题是,#[test]暗示#[cfg(test)]吗?也就是说,如果我用#[test]而不是标记我的测试功能#[cfg(test)],那么在非测试版本中它们是否仍然正确存在?

testing attributes unit-testing visibility rust

4
推荐指数
1
解决办法
140
查看次数

有没有办法检测是否从Rust的测试中调用代码?

我希望能够在我的代码本身内检查它是否在测试中运行.这样做是理想的,例如,与测试数据库,Web服务等接口.简单bool就足够了.

Rust有一个现有的API吗?

testing rust

0
推荐指数
1
解决办法
177
查看次数

标签 统计

rust ×2

testing ×2

attributes ×1

unit-testing ×1

visibility ×1