in reply to requiring perl modules

Just enter perl -V to examine your @INC list. It probably includes '.', i.e. the current directory, in which case, like the Anonymous Monk above, require modules::test will work.

Or you can use lib '.\modules' (equivalent to unshifting @INC, only in a BEGIN block) and then require test.

Or, unless there's some reason you need to defer loading the module, just:

use lib '.\modules'; use test;