了解如何在 Exercism 上测试你的 R 练习
本赛道的测试会用到testthat包。
安装这个包,只需打开 R 并运行:
install.packages("testthat")
你可以运行下面的命令来检查包是否安装成功:
library(testthat)
每道练习都会有一个名为test_<exercise-name>.R的脚本(例如test_hello-world.R)。
要运行某道练习的测试,只需执行这个 R 脚本。
在 RStudio 中,只需打开测试脚本,然后点击源代码窗格右上角的“Source”。这样会通过测试脚本第一行的source命令加载你提交的解答代码,然后运行其后的一整组testthat测试。
不过要注意,测试脚本第一行的source()命令只有在你的提交的解答脚本(<exercise-name>.R)位于当前工作目录中时才会生效。如果不是这样,你需要做下面两件事中的一件:
setwd('exercism/r/hello-world/'),或者source('exercism/r/hello-world/hello-world.R')
如果你更喜欢,也可以在命令行中用Rscript path_to_exercise_directory/test_<exercise-name>.R运行测试(例如Rscript hello-world/test_hello-world.R)。
另一种方便的测试运行方式是使用 testthat 的auto_test函数。由于 Exercism 的代码和测试位于同一个文件夹中,请为code_path和test_path参数使用同一个路径。运行auto_test()之后,每次你更新或保存练习的 R 代码,练习的测试都会自动运行。这有助于你在编写提交的解答时快速迭代。