【问题标题】:Install R package with specific version AND tests安装具有特定版本和测试的 R 包
【发布时间】:2021-10-23 16:37:34
【问题描述】:

我想使用testthat::test_package('httr') 对特定版本的包运行包内部测试。 有没有办法安装具有特定版本的 R 包(例如来自 CRAN)和它的测试?

我知道有 install.packages("httr", INSTALL_opts = "--install-tests") 为给定的包安装测试(没有任何选项来指定特定的包版本)。

还有 devtools::install_version("httr", version = "1.4.1")renv::install("httr@1.4.1") 为软件包安装特定版本(不能指定例如 INSTALL_opts)。

我看不出有任何方法可以将包版本的规范和--install-tests 选项结合起来。 任何帮助将不胜感激!

注意:包“httr”在这里只是用作占位符。

【问题讨论】:

    标签: r installation devtools r-package testthat


    【解决方案1】:

    renv 提供了一个小扩展,可以通过INSTALL_opts R 选项设置这些选项。因此,例如,以下内容应该适用于renv 0.14.0

    # set options for renv
    options(INSTALL_opts.httr = "--install-tests")
    
    # use 'rebuild = true', in case an older version
    # of the package without tests is cached
    renv::install("httr@1.4.1", rebuild = TRUE)
    

    如果您希望这些选项适用于所有要安装的软件包,您可以改用:

    options(INSTALL_opts = "--install-tests")
    

    renv 主要支持通过选项设置这些选项,以便通过renv::restore() 安装的包可以根据每个包更符合人体工程学地进行配置。)

    【讨论】:

    • 非常感谢。我不知道可以将包名称添加到选项中,以便该选项仅适用于单个包!此外,我不知道rebuild=TRUE 选项。谢谢!
    猜你喜欢
    • 2017-06-07
    • 2018-11-30
    • 2016-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-21
    • 2020-03-21
    • 2013-06-09
    相关资源
    最近更新 更多