当前位置:  开发笔记 > 编程语言 > 正文

test在devtools :: check中失败但是在devtools :: test中工作

如何解决《test在devtools::check中失败但是在devtools::test中工作》经验,为你挑选了0个好方法。

有没有办法重现使用的环境devtools::check

我有问题,我的测试工作devtools::test()但内部失败devtools::check().我的问题是现在,如何找到问题.报告check只是打印错误日志的最后几行,我找不到完整的测试报告.

checking tests ... ERROR
Running the tests in ‘tests/testthat.R’ failed.
Last 13 lines of output:
...

我知道check使用不同的环境相比,test但我不知道如何调试这些问题,因为它们根本不可重现.特别是这些测试在几个月前运行,所以不知道在哪里寻找问题.

编辑

实际上我试图找到我的问题,我找到了解决方案.但要发布我的解决方案,我必须添加更多细节.

所以我的测试总是失败,因为我测试了markdown脚本,如果它运行没有错误,之后我检查是否正确设置了一些环境变量.这些是我用脚本计算的结果以及我设置的标准设置.因此,如果我在开发后忘记更改某些设置,我想收到警告...

无论如何,既然是降价剧本,我不得不提取代码,我是用这个职位评论knitr:运行Rmarkdown文档中的所有数据块使用knitr::purl,以获取代码,并sys.source执行它.

runAllChunks <- function(rmd, envir=globalenv()){
  # as found here /sf/ask/17360801/
  tempR <- tempfile(tmpdir = '.', fileext = ".R")
  on.exit(unlink(tempR))
  knitr::purl(rmd, output=tempR, quiet=TRUE)
  sys.source(tempR, envir=envir)
}

出于某种原因,这会产生一个错误,因为可能会持续几周(不确定我最近安装了哪些新软件包......).但是由于有一个新的评论,我可以使用knitr::knit它也执行代码,这按预期工作,现在我的测试不再抱怨.

所以最后,我不知道问题究竟在哪里,但现在正在发挥作用.

推荐阅读
乐韵答题
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有