in reply to perl /cron /DBI

Given your crontab(1) entry i.e. stderr is not redirected, the crontabs' owner will receive an e-mail containing perl/OS errors - if any.

In order to set your run-time environment, try modifying the crontab(1) entry to...

59 10 * * * . $HOME/.profile ; perl /home/rabie/test.pl 1 2 3 > /home/ +rabie/test.out 2>&1
You can emulate the run-time environment using at(1) - something like ...
> at now $HOME/.profile ; perl /home/rabie/test.pl 1 2 3 > /home/rabie +/test.out 2>&1
or, if that doesn't work...
> at now <<! $HOME/.profile ; perl /home/rabie/test.pl 1 2 3 > /home/rabie/test.out + 2>&1 !
A user level that continues to overstate my experience :-))