added basic test frameworks
added more testing stuffs