This is actually because 'LD_LIBRARY_PATH' from loaded module does not prepend '/opt/moose/mpich-3.2/gcc-7.3.0/lib', but other libs (like gcc..) are added by the module load. Therefore, my built-in openmpi library is linked instead.
One can test it: $ echo $LD_LIBRARY_PATH
fix: export LD_LIBRARY_PATH=/opt/moose/mpich-3.2/gcc-7.3.0/lib:$LD_LIBRARY_PATH
suggestion: prepend this library in module file.
2) 'failed to import hit - try running "make hit" in the $MOOSE_DIR/test directory.'
I check the several module files in /opt/moose/Module and found $MOOSE_DIR, if it exists, can 'help' to find/add $MOOSE_DIR/python
So what I did is to
1) first add below lines in '~/.bashrc'
module unload moose-tools moose-dev-gcc
alias load_moose='module load moose-tools moose-dev-gcc'
alias unload_moose='module unload moose-tools moose-dev-gcc'
export LD_LIBRARY_PATH=/opt/moose/mpich-3.2/gcc-7.3.0/lib:$LD_LIBRARY_PATH
export MOOSE_DIR=~/projects/moose
## By default, moose module is unloaded, as I need to use native libs. to run other applications sometime to avoid conflict.
## one need to run 'load_moose' before using moose.
2) $ load_moose
# this will load moose with $MOOSE_DIR set and openmpi library path prepended
3) cd $MOOSE_DIR/test
make clean # remove old built in my case
make -j8
4) ./run_test -j8
# got error on 'failed to import hit'
5) make hit
6) ./run_test -j8
# Everything is OK
Thanks,
Walter