gpt4 book ai didi

testing - R:创建 lapply() 类型的测试用例

转载 作者:行者123 更新时间:2023-11-28 20:12:47 25 4
gpt4 key购买 nike

我一直在编写代码来创建一个并行 lapply() 类型函数,该函数使用 Amazon 的 Elastic Map Reduce 引擎作为处理“网格”(是的,它是一个没有缩减器的映射器)。在我获得稳定的代码后,我将把它抽象为一个 foreach 后端。但首先我需要构建测试来测试我的代码。

这个功能有哪些好的测试用例?

我现在的规范测试用例如下:

myList <- NULL
set.seed(1)
for (i in 1:10){
a <- c(rnorm(999), NA)
myList[[i]] <- a
}
outputLocal <- lapply(myList, mean, na.rm=T)
outputEmr <- emrlapply(myList, mean, myCluster, na.rm=T)
all.equal(outputEmr, outputLocal)

此测试用例确保可选参数 na.rm=T 正确传递到远程机器。我可以使用哪些其他测试用例?我目前不支持 simplifyUSE.NAMES 参数,尽管我将来会支持。

最佳答案

如果你通过 emrlapply 会发生什么?

  • 字符向量列表
  • 一个空列表
  • 一个仅在所有 NA 值都被删除后为空的列表
  • NULL
  • 向量(lapply 使用向量)
  • 矩阵
  • 一个数据框
  • 列表列表

您还需要进行测试,看看您的函数是否可以优雅地处理 EMR 不可用或缺少所需包的问题。

关于testing - R:创建 lapply() 类型的测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3301078/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com