nohup does not work properly
I think you might have already figured out the root cause and a working solution.
But I am writing this answer so that it will be helpful to someone else.
This might be the root cause.
Still there is no guarantee in consistency of nohup
(mentioned at the end of given answer).
Other commands to do the same thing.
spawning subshells with parenthesis.
(./test.sh > test.log &)
disown in conjunction with the backgrounding ampersand.
./test.sh > test.log & disown