增加测试代码，调整整体框架的类结构。