With testthat tests are running in a working directory corresponding to where the testtfiles are. i.e tests/testthat
If I try
lintr::expect_lint_free(exclusions = list("../../R/zzz.R"))
this works.
And with this too
lintr::expect_lint_free(
exclusions = list(
rprojroot::find_package_root_file("R/zzz.R")
))
I think there is a bug here or at least something to be improved because it does not seems right to take care of that. 
One thing that make me think of a bug is the fact defining exclusions in option file does not work either
# .lintr file
exclusions: "R/zzz.R"
see ?read_setting about this option
You need to exclude in absolute path, but lintr should handle relative path I guess