重构第一步 - 建立可靠的单元测试