在 Rust 和 R 语言中进行单元测试的方法有所不同
Rust 使用 test
属性来定义一个测试函数。测试函数以 test_
开头,后面跟着要测试的函数名。测试函数内部使用 assert!
宏来进行断言。以下是一个简单的 Rust 单元测试示例:
// 引入要测试的模块
mod my_module {
pub fn add(a: i32, b: i32) -> i32 {
a + b
}
}
// 引入测试模块
#[cfg(test)]
mod tests {
// 引入要测试的模块
use super::my_module;
// 定义测试函数
#[test]
fn test_add() {
// 使用 assert! 宏进行断言
assert_eq!(my_module::add(1, 2), 3);
assert_eq!(my_module::add(-1, 1), 0);
assert_eq!(my_module::add(-1, -1), -2);
}
}
要运行测试,请在命令行中输入 cargo test
。
R 语言使用 testthat
包来进行单元测试。首先,需要安装 testthat
包。在 R 中运行以下命令来安装:
install.packages("testthat")
接下来,创建一个名为 test_my_module.R
的文件,并在其中编写测试代码。以下是一个简单的 R 单元测试示例:
# 加载 testthat 包
library(testthat)
# 定义要测试的函数
add <- function(a, b) {
a + b
}
# 编写测试函数
test_that("add 函数应该正确计算两个整数的和", {
expect_equal(add(1, 2), 3)
expect_equal(add(-1, 1), 0)
expect_equal(add(-1, -1), -2)
})
要运行测试,请在 R 中输入 test()
。