The goal of gradeR
is to help grade bunches of
R
script assignment submissions. This package has two
primary functions called calcGrades()
and
calcGradesForGradescope
, and much of the testing
functionality is taken from the testthat
package.
You can install the released version of gradeR
from CRAN with:
install.packages("gradeR")
You can install the development version of gradeR
with:
# install.packages("devtools")
::install_github("tbrown122387/gradeR") devtools
This is a basic overview which shows you how to grade a bunch of assignment submissions. Make sure to change the paths to ones that actually exist on your machine. For more details on this example, see the vignette.
# load in the package
library(gradeR)
# this is the directory with all of the student submissions
<- "../submissions/"
submissionDir
# get the grades
<- calcGrades(submission_dir = submissionDir,
grades your_test_file = "~/your/path/assignment1_test_file.r")
The directory of the first argument will be walked recursively, and
any file ending in a .R
or .r
will be
source
d and tested using the tests in the
assignment1_grading_file.r
.
The file with the tests is specified in the second argument. This is
a file you must create on your own. For more information on how to write
testthat
tests, see this.
It might be beneficial to recommend that your students:
source
their
.R
submissions before submitting them. This makes sure
everything runs as expected (at least on their machine).setwd()
, and then read in files using only their name). If
they forget to do this, then you will need to change all of the global
paths to local paths on their machine.Please see CONTRIBUTING.md
for more information on how
you can contribute to this project!