A side effect causes a change in an external variable outside of the scope
of a function, or test file. This includes environment variables, global
options, global R variables, creating files or directories, and so on.
If this function is called in a test file, side effects are monitored from
that point in the file and only for that file. The state of the environment
before and after running every expression in the file are compared.
There is some performance penalty in tracking external variables especially
those that require a system call.