separate debuging and testing header & source files.
add some feature to test