经常看到有网友接手PHP/Python等动态语言开发的项目后,不管是加功能还是调bug,都痛苦不不堪,直呼"动态一时爽,重构火葬场".测试用例不好写
那是被测试代码不容易测,需要重组代码结构,让测试用例好写
2. 要高覆盖率吗?
覆盖率只是一个指标/手段,不是目的.目的是建立对被测试代码的信心,写个`1+1=2` 根本不需要测试,因为我们有信心不会出错.
核心逻辑覆盖到,在担心出错的地方多覆盖,在有信心不出错的地方少覆盖.
3.升级后系统运行地也很平稳,利益于PHP近些年来的性能提升,每次升级都还能节省几台服务器.
在2023年初,我们使用PHP编译器BPC成功编译了云招OurATS.BPC完全脱离了PHP解释器,每一个PHP的语法、扩展函数都重新实现了一遍,这当中如果没有测试做保障,那根本就是不可能完成的任务.